Ciao a tutti, sono alle prese con un problema in trasmissione via Ftp su un server con indirizzo statico, premetto che questa funzione funziona in un'altro script ma inviando
due file definiti con nome tra virgolette "nomefile.txt" , se devo inviare il file tramite variabile invece mi segnala un errore inspiegabile (per me) è il seguente :
Si è verificato un errore durante il caricamento!
Trasmissione di pagina.png copia su server, ord.pagina.png
Warning: ftp_put(pagina.png) [function.ftp-put]: failed to open stream: No such file or directory in I:\EasyPHP-5.3.3.1\www\Sito\inviafile.php on line 328
Posto la parte di codice interessata
Codice PHP:
function inviallegato($uploadfile) {
// $uploadfile riceve $_FILES['uploadfile']['name']
$ftp_server="XXX.XXX.XXX.XXX"; //indirizzo statico del server.
$ftp_username="user";
$ftp_password="password";
$ftp_connessione = ftp_connect($ftp_server);
// effetto login sul server
$login = ftp_login($ftp_connessione, $ftp_username, $ftp_password);
// controllo se la connessione ha avuto buon fine
if(!$ftp_connessione || !$login){
echo "<div id='Erroriftp'>";
echo "<center>";
echo "<td>Connessione fallita! Accesso negato ! </td>";
echo "<tr></tr>";
echo "<td>Nome utente o password, errati! </td>";
echo "<tr></tr>";
} else {
// se connessione ha avuto buon fine faccio UPLOAD del file
$file_da_caricare =$uploadfile;
$dove_caricare = $uploadfile;
echo "<td>Trasmissione di $file_da_caricare </td>";
echo "<tr></tr>";
echo "<td>copia su server, $dove_caricare </td>";
echo "<tr></tr>";
$upload = ftp_put($ftp_connessione, $dove_caricare, $file_da_caricare, FTP_ASCII);
// controllo se upload andato a buon fine
if (!$upload) {
echo "<td colspan='2'> Si è verificato un errore durante il caricamento!</td>";
echo "<tr></tr>";
}else{
echo "<td colspan='2'>Upload avvenuto con successo</td>";
echo "<tr></tr>";
}
ftp_quit($ftp_connessione);
return;
}