2009-08-28 7 views
3

Comment est-il supposé gérer les fichiers qui ne sont pas dans le répertoire courant lors de l'utilisation de ftp_put? Ce morceau de code essaie de télécharger un fichier que je connais existe, mais il donne toujours l'erreur suivante:PHP ftp_put - fichier non trouvé ou pas d'accès

"Attention: ftp_put() [function.ftp-put]: action demandée non prise, fichier introuvable ou . pas d'accès à /path/to/files/domains/mydomain.com/html/scriptfile.php en ligne 1337"

Voici le snip:

$file_name = $this->GetFileName(); 

    if ($file_name) 
    { 
    $resource = ftp_connect('ftp.remoteftpserver.com');  

    if ($resource && ftp_login($resource, $username, $pass)) 
    { 
     ftp_pasv($resource, true); 
     //UPLOAD_DIRECTORY == '/IN' (it really exists, I'm sure) 
     //ORDER_DIRECTORY == /home/domains/mydomain.com/orders (came from $_SERVER['DOCUMENT_ROOT'] 
     ftp_put($resource, UPLOAD_DIRECTORY . '/' . $file_name, ORDER_DIRECTORY . '/' . $file_name, FTP_ASCII); 

     ftp_close($resource); 
    } 
    else 
    { 
     echo "FTP Connection Failed!"; 
    } 

    } 

Répondre

1

Vérifiez les autorisations du fichier distant. Assurez-vous que $ username a un accès en écriture au fichier. Assurez-vous que vous avez un accès d'exécution sur le répertoire parent.