Sì in pratica devi avere
codice:<form name="nome_form" method="post" action="..." enctype="multipart/form-data"> ... eventuali altri campi ... <input name="pdf" type="file" id="pdf" size="40" /> <input type="submit" name="submit" value"Invia" /> </form>
Si confermo ho questo:
<form enctype="multipart/form-data" method="post" action="inserimento_fornitore.php">
poi ovviamente il resto che hai indicato.
Stasera ravano per bene quel codice e vediamo chi la vince.
Io vorrei salvare il percorso con il nome del file, come lo posso rendere scaricabile nella maschera di visualizzazione?
Allora, con questo script mi scrive nel campo pdf il percorso $urlpdf quando seleziono iìun PDF da caricare ma non mi carica effettivamente il file nella cartella dati/ sul server.Codice PHP:[code]
$cartella = 'dati/';
$temp = $_FILES['urlpdf']['tmp_name'];
$nome = $_FILES['urlpdf']['name'];
if ( ! move_uploaded_file($tmp_name, "$cartella/$nome") )
{
$urlpdf = "http://www.miosito/fornitori/dati/$nome" ;
}
else
{
$urlpdf = "http://www.miosito/images/nopdfd.jpg";
}
[/code]
Se non seleziono nessun PDF mi scrive solo il percorso http://www.miosito/fornitori/dati/
La cartella è dati contenuta nella cartella fornitori, come controllo se è aperta in scrittura?
Secondo, perchè se non carico un file non esegue il secondo else?
Dimenticanza, per questo sito non avevo ancora fatto esperimenti, ho chiesto ora che controllino ed eventualmente che mi venga aperta in scrittura la cartella http://www.miosito/fornitori/dati/![]()
Ultima modifica di Max Della Pena; 24-01-2014 a 00:11
Non va bene così, hai frainteso il significato dell'if, fa così, dovrebbe essere più chiaro e dirti cosa effettivamente non va.
Il problema, potrebbero essere i permessi specificati sulla cartella, assicurati che sia scrivibileCodice PHP:$cartella = 'dati/';
$temp = $_FILES['urlpdf']['tmp_name'];
$nome = $_FILES['urlpdf']['name'];
if ( $temp == '' ) //questo vuol dire che non è stato caricato alcun file
{
$urlpdf = "http://www.miosito/images/nopdfd.jpg";
}
else if ( ! move_uploaded_file($temp, "$cartella/$nome") ) //è stato caricato un file, ma non è possibile metterlo nella cartella dati
{
echo "Impossibile copiare il file nella cartella specificata!";
exit; //che poi potrai togliere o sostituire col codice che vuoi per gestire il problema
}
else //tutto ok
{
$urlpdf = "http://www.miosito/fornitori/dati/$nome" ;
}
edit: ah, nel move_uploaded_file avevo scritto $tmp_name invece che $temp, modificalo anche tu, mettici $temp
comunque come struttura del codice è meglio questa
Ultima modifica di Alhazred; 24-01-2014 a 11:33
Eccomi di nuovo.... non ne esco con la sintassi di:
Codice PHP:<? if ($dati!="x") echo "<a href="<? echo "$row[dati]";?>" target="_blank"><img src="../images/pdfdownload.jpg" width="60" height="60" border="0"></a>"; ?>
Un piccolo passetto ma niente da fare.Codice PHP:<? if ($dati != "x") echo '<a href="<? echo "$row[dati]";?>" target="_blank"><img src="../images/pdfdownload.jpg" width="60" height="60" border="0"></a>'; ?>
Praticamente a me serve che stampi due cose:
Se $dati è diverso da X allora stampa tutto quel che segue che è un link con immagine per aprire una pagina nuova e visualizzare il PDF, altrimenti non stampa nulla.
Usa sempre <?phpCodice PHP:<?php
if ($dati != "x")
echo '<a href="'.$row['dati'].'" target="_blank"><img src="../images/pdfdownload.jpg" width="60" height="60" border="0"></a>';
?>
Ultima modifica di Alhazred; 25-01-2014 a 00:57