codice:$polizza= move_uploaded_file($_FILES['file']['tmp_name'], "/polizza/" . $nome);
codice:$polizza= move_uploaded_file($_FILES['file']['tmp_name'], "/polizza/" . $nome);
dirk con questo codice:
(con la tua modifica)
mi da questi errori:Codice PHP:<?php
//Connessione al Database
$conn= mysql_connect("localhost", "root", "") or die ("impossibile connettersi");
//selezione del DB
mysql_select_db("archiviottico", $conn) or die ("impossibile selezionare il db");
if (!is_uploaded_file($_FILES['file']['tmp_name'])) die ("Errore di caricamento: ".$_FILES["file"]["error"]);
$nome= $_FILES["file"]["name"];
$dimensione= $_FILES["file"]["size"];
if($dimensione<10240000){
if($dimensione<0){
echo "Codice Errore: " . $_FILES["file"]["error"]."";
}else{
$idpolizza= $_POST['idpolizza'];
$polizza= move_uploaded_file($_FILES['file']['tmp_name'], "/polizza/ . $nome" );
$numeropolizza= $_POST['numeropolizza'];
$compagnia= $_POST['compagnia'];
$note= $_POST['note'];
$idcliente= $_POST['idcliente'];
$query = "INSERT INTO polizza (idpolizza, nomepolizza, polizza, dimensione, numeropolizza, compagnia, note, idcliente) VALUES ('$idpolizza', '$nome', '$polizza', '$dimensione', '$numeropolizza', '$compagnia', '$note', '$idcliente')";
mysql_query($query) or die ("Query non valida: " . mysql_error());
echo $polizza;
}
}else{
echo "File troppo grande!!!";
}
?>
codice:Warning: move_uploaded_file(/polizza/ . Designer.pdf) [function.move-uploaded-file]: failed to open stream: No such file or directory in C:\xampp\htdocs\polizzaupload.php on line 21 Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move 'C:\xampp\tmp\php8E2B.tmp' to '/polizza/ . Designer.pdf' in C:\xampp\htdocs\polizzaupload.php on line 21
codice:$polizza= move_uploaded_file($_FILES['file']['tmp_name'], "/polizza/" . $nome);
scusa ma mi da sempre questi errori:
codice:Warning: move_uploaded_file(/polizza/Designer.pdf) [function.move-uploaded-file]: failed to open stream: No such file or directory in C:\xampp\htdocs\polizzaupload.php on line 22 Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move 'C:\xampp\tmp\phpF3F1.tmp' to '/polizza/Designer.pdf' in C:\xampp\htdocs\polizzaupload.php on line 22![]()
Sì, hai sbagliato, al posto del percorso del file hai messo un link. Leggiti bene cos'è il percorso relativo qui: http://xhtml.html.it/guide/lezione/1...ti-e-relativi/Originariamente inviato da spawn88
questo è il codice modificato ma mi sa che sbaglio ancora qualcosa:
siccome mi da errore(di sintassi):Codice PHP:<?php
//Connessione al Database
$conn= mysql_connect("localhost", "root", "") or die ("impossibile connettersi");
//selezione del DB
mysql_select_db("archiviottico", $conn) or die ("impossibile selezionare il db");
if (!is_uploaded_file($_FILES['file']['tmp_name'])) die ("Errore di caricamento: ".$_FILES["file"]["error"]);
$nome= $_FILES["file"]["name"];
$dimensione= $_FILES["file"]["size"];
if($dimensione<10240000){
if($dimensione<0){
echo "Codice Errore: " . $_FILES["file"]["error"]."";
}else{
$idpolizza= $_POST['idpolizza'];
$polizza= move_uploaded_file($nome, <a href="http://localhost/polizza/ . $nome">);
$numeropolizza= $_POST['numeropolizza'];
$compagnia= $_POST['compagnia'];
$note= $_POST['note'];
$idcliente= $_POST['idcliente'];
$query = "INSERT INTO polizza (idpolizza, nomepolizza, polizza, dimensione, numeropolizza, compagnia, note, idcliente) VALUES ('$idpolizza', '$nome', '$polizza', '$dimensione', '$numeropolizza', '$compagnia', '$note', '$idcliente')";
mysql_query($query) or die ("Query non valida: " . mysql_error());
echo $polizza;
}
}else{
echo "File troppo grande!!!";
}
?>
Parse error: syntax error, unexpected '<' in C:\xampp\htdocs\polizzaupload.php on line 21
Comunque in pratica, se la pagina che hai ad esempio si trova in "http://www.tuosito.it/polizzaupload.php" e la polizza la vuoi salvare in "http://www.tuosito.it/polizze/", il percorso relativo da inserire sarà "polizze/" con dopo il nome della polizza.
Ti scrivo tutto il codice completo un po' modificato da me:
Io ho fatto in modo che le polizze vengono salvate nella cartella "polizze", se ti va bene, allora crea una cartella con quel nome, oppure modifica nel codice il valore della variabile $cartella e metti il nome della cartella che vuoi tu.Codice PHP:<?php
//Connessione al Database
$conn= mysql_connect("localhost", "root", "") or die ("impossibile connettersi");
//selezione del DB
mysql_select_db("archiviottico", $conn) or die ("impossibile selezionare il db");
// controllo che non ci siano stati errori durante l'upload
if (!is_uploaded_file($_FILES['file']['tmp_name']))
die ("Errore di caricamento: ".$_FILES["file"]["error"]);
$nome = $_FILES["file"]["name"];
$dimensione = $_FILES["file"]["size"];
$cartella = "polizze/" // cartella in cui vengono salvati file pdf delle polizze
if($dimensione < 10240000) {
if(is_file($cartella.$nome)){
echo "Esiste già una polizza con questo nome";
}
else {
$idpolizza= $_POST['idpolizza'];
$numeropolizza= $_POST['numeropolizza'];
$compagnia= $_POST['compagnia'];
$note= $_POST['note'];
$idcliente= $_POST['idcliente'];
// sposto il file caricato nella cartella di destinazione
move_uploaded_file($_FILES['file']['tmp_name'], $cartella.$nome ) or die("Errore di upload del file.");
// eseguo la query per inserire nel database i dati riguardanti la nuova polizza caricata
$query = "INSERT INTO polizza (idpolizza, nomepolizza, numeropolizza, compagnia, note, idcliente) VALUES ('$idpolizza', '$nome', '$numeropolizza', '$compagnia', '$note', '$idcliente')";
mysql_query($query) or die ("Query non valida: " . mysql_error());
echo '
Polizza caricata con successo!
<a href="'.$cartella.$nome..'>Clicca qui per visualizzarla</a>
';
}
}
else{
echo "File troppo grande!!!";
}
mysql_close();
?>
grazie costi, ho guardato il tuo codice e ho notato che il move_upload_file non l'hai posto uguale a $polizza, come mai?
testandolo continua a darmi errore
però da "Errore di upload file"codice:Warning: move_uploaded_file(polizze/Designer.pdf) [function.move-uploaded-file]: failed to open stream: No such file or directory in C:\xampp\htdocs\polizzaupload.php on line 33 Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move 'C:\xampp\tmp\php37DB.tmp' to 'polizze/Designer.pdf' in C:\xampp\htdocs\polizzaupload.php on line 33 Errore di upload del file.già è qualcosa
Scusa le mie domande che possono sembrarti stupide ma non essendo molto ferrato in php cerco di chiarirmi le idee e le lacune che ho.
grazie ancora
move_uploaded_file è una funzione che sposta il file appena caricato in una cartella a tua scelta e restituisce come risultato un valore boolean, true o false, a seconda se lo spostamento del file è avvenuto con successo o no. Trovi la funzione sul manuale ufficiale di php, qui: http://php.net/manual/en/function.mo...oaded-file.php
Se fai $polizza=move_uploaded_file il risultato che ottieni è che $polizza è una variabile con valore true o false. Non ti serve perchè io ho fatto:
move_uploaded_file($_FILES['file']['tmp_name'], $cartella.$nome ) or die("Errore di upload del file.");
Ho aggiunto dopo "or die", che in pratica controlla che se la funzione ha restituito come valore false (cioè upload errato) si blocca lo script e mostra un messaggio di errore.
L'upload comunque non è avvenuto perchè nel codice che ti ho scritto il file viene copiato nella cartella "polizze", ma non esiste quindi devi crearla.
Se non hai capito qualcosa chiedi pure, non c'è problema.![]()
grazie molto gentile,
allora.. tutto chiaro, ma io la cartella polizze in C:\xampp\htdocs l'ho creata manualmente senza codice php... è sbagliato?
Prego, non c'è di che.Originariamente inviato da spawn88
grazie molto gentile,
allora.. tutto chiaro, ma io la cartella polizze in C:\xampp\htdocs l'ho creata manualmente senza codice php... è sbagliato?
E' giusto, la dovevi creare manualmente. Strano allora che non vada l'upload, prova a controllare che la cartella non abbia impostata la proprietà "Sola lettura".
si.. ha impostato sola lettura ma anche se lo defleggo appena clicco applica o ok e la riapro in proprietà "sola lettura" è ancora fleggata... molto strano non trovi?