Newsgroup: it.comp.www.php
Titolo: problema ftp_get

Ciao a tutti,
sto cercando di far funzionare uno script con istruzioni ftp di php, va
tutto bene tranne le operazioni di get e di put... ma non riesco a capire
perchč! Qualcuno mi sa aiutare? Grazie anticipate!
Ecco il codice (con ftp_get):
 $ftp_server="xxxxxxxx";
 $ftp_user_name="xxxxxxxx";
 $ftp_user_pass="xxxxxxxx";
 // set up basic connection
 $conn_id = ftp_connect($ftp_server);
 // login with username and password
 $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
 // check connection
 if ((!$conn_id) || (!$login_result)) {
     echo "FTP connection has failed!";
     echo "Attempted to connect to $ftp_server for user $ftp_user_name";
     exit;
    } else {
     echo "Connected to $ftp_server, for user $ftp_user_name<br>";
    }
 ftp_chdir($conn_id, "
lapecorasclera.it
");  //WORKS!
 echo "Size of test.php: " . ftp_size($conn_id, "test.php") . "<br>";
//WORKS!
 //ftp_mkdir($conn_id, "testx"); //WORKS!
 echo "Timeout: " . ftp_get_option($conn_id, FTP_TIMEOUT_SEC) . "<br>";
//WORKS!
 //ftp_pasv($conn_id, true); //WORKS!
 $local_file = "c:/test.php";
 $server_file = "test.php";
 // try to download $server_file and save to $local_file
 if (ftp_get($conn_id, $local_file, $server_file, FTP_BINARY)) {
     echo "Successfully written to $local_file<br>";
  } else {
     echo "GET: There was a problem<br>";
  }
 // close the FTP stream
 ftp_close($conn_id);
--------------------------------------------------
Emanuele

 capire perchh! 
Sei un newbie? Leggi questo 
http://url.repository.biz/go/3C
[quoto]
- Copiate il testo di eventuali errori: nulla e' irritante (e inutile)
quanto un laconico "Non funziona!", o peggio ancora "nn fa...".
[/quoto]
-- 
I am what I am, I do what I can
Vuoi supportarmi? 
http://url.repository.biz/go/3E
Cerchi un programmatore PHP/MySQL? 
http://url.repository.biz/go/1Y
L'uomo, conscio di sbagliare, persevera.

 Sei un newbie? Leggi questo 
http://url.repository.biz/go/3C
Sorry, m'è scappata una parte alla fine...:
L'errore sta nel fatto che il ftp_get nell'IF qui sotto dà false e il
messaggio che irrimediabilmente restituisce l'echo è "There was a problem".
Nessun altro messaggio d'errore:
if (ftp_get($conn_id, $local_file, $server_file, FTP_BINARY)) {
     echo "Successfully written to $local_file<br>";
  } else {
     echo "GET: There was a problem<br>";
  }
PS: la connessione viene effettuata senza problemi, operazioni come la
creazione di directory sul server, la determinazione delle dimensioni di un
file sul server ecc... tramite istruzioni php non danno problemi.

 
Fai questa prova:
usa lo stesso nome per il file remoto e il file locale, poi sappimi dire
Ciao
-- 
Spoken: How much is that gorilla in the window?
Take our advice, At any price, A gorilla like Magilla is mighty nice.
Gorilla, Magilla Gorilla for sale

 Ciao
Ciao, ho provato, ma il risultato purtroppo č il medesimo.

 
Hai fatto così?
$local_file = "test.php";
$server_file = "test.php";
?


 ?
Sě, esattamente. Nessun cambiamento.


Questo a me funziona. Provalo
$ftp_server="xxxxxxxx";
$ftp_user_name="xxxxxxxx";
$ftp_user_pass="xxxxxxxx";
$ftp_file_name = "test.php";
$temp = tmpfile();
// set up basic connection
$conn_id = ftp_connect($ftp_server);
// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass)
// check connection
if ((!$conn_id) || (!$login_result)) {
        echo "FTP connection has failed!";
        echo "Attempted to connect to for user ";
        exit;
    } else {
        echo "Connected to $ftp_server , for user $ftp_user_name";
    }
$fget_result=ftp_fget($conn_id, $temp, $ftp_file_name, FTP_ASCII);
ftp_quit($conn_id);




manca un pezzo, sorry:
rewind ($temp);
$FILE_DATA=fread($temp,6000000);
fclose($temp);


 > Questo a me funziona. Provalo
Ah! funziona! grazie, mi hai aiutato molto!