[]
Ciao a tutti (esperti e meno esperti),

la questione � la seguente: su un ftp (accessibile con secure ftp) vengono depositati dei file ogni giorno verso le 17.00. Visto che son dei semplici xml/pdf mi piacerebbbe creare una funzione che, invocata da una CRONJOB, li "scarichi" automaticamente sul server dove eseguo php.

ho usato questo codice, ma non funziona in quanto non sembra trovare il file sull' ftp.
Eppure accedo e leggo la lista tranquillamente.
perch� poi non li trova ?

[/ ]

Codice PHP:
$destinazione $_SERVER['DOCUMENT_ROOT'].'/from_ftp_sorgente/';
$ftp_user_name     'user';
$ftp_user_pass     'password';
$host =  'host';
$port 'numero porta'
$timeout'395'//valore messo abbastanza a caso...

$root_ftp 'ftp://'.$ftp_user_name.'@'.$host.':'.$port;

$conn_id ftp_ssl_connect($host,$port,$timeout);

// login with username and password
$login_result = @ftp_login($conn_id$ftp_user_name$ftp_user_pass);
if(!
$login_result) echo 'Server non disponibile per la connessione.';

elseif(isset(
$login_result)){
    
$contents ftp_nlist($conn_id".");
   
    function 
ftp_is_dir($dir) {
      global 
$ftp_connect;
      if (@
ftp_chdir($ftp_connect$dir)) {
           
ftp_chdir($ftp_connect'..');
           return 
true;
      } else {
           return 
false;
      }
    }
    
    
    
    
$ftp_nlist ftp_nlist($conn_id"/");
    echo 
'<br/><br/>';
    
    
//alphabetical sorting
    
    
sort($ftp_nlist);
    foreach (
$ftp_nlist as $v) {
    
    
//1. ftp_is_dir() is true => directory
      
if (ftp_is_dir($v)) {
    
    
//output as [ directory ]
          
echo "[ " $v " ]<br />\n";
      }
    }
    foreach (
$ftp_nlist as $v) {
    
        
$quanti++;
    
//2. ftp_is_dir() is false => file
      
if (!ftp_is_dir($v)) {
    
    
//output as file
              
echo "<hr/><br /><br /><br /><strong>" $v "</strong><br />\n";
              
              
$v_2 substr($v,1,100);
              
              
              
// definisce alcune variabili
            
$local_file $destinazione.$v_2;
            
$server_file $root_ftp.$v;
            
            echo 
'Cerco File: '.$server_file.' sull FTP <br/>Copio in:'.$local_file.' (su server)<br/>';
              
              if(
file_exists($server_file)){
              
// prova a scaricare $server_file e a salvarlo su $local_file
                
if (ftp_get($conn_id$local_file$server_fileFTP_BINARY)) {
                    echo 
"Scrittura su $local_file terminata con successo<br/><br/>";
                } else {
                    echo 
"Problemi nello scaricamento di ".$v_2.'<br/>';
                }
              }else echo 
'<br><span style="color:red;">ERRORE: il file '.$server_file.' non esiste sull FTP !!<br/></span>';
           
          
      }
      if(
$quanti 5) break;
    }
    
    
// close the ssl connection
    
ftp_close($conn_id);