2011-03-24 5 views
11

Le fichier ne télécharge pas vers FTP et les erreurs: Attention: ftp_put() [function.ftp-put]: Impossible d'ouvrir ce fichier: Aucun fichier ou répertoire venant. Nous utilisons le code suivant:Le téléchargement ftp ne fonctionne pas

$server = 'ftp.domain.com'; 
$ftp_user_name = '[email protected]'; 
$ftp_user_pass = 'password'; 
$dest = 'files/test.txt'; 
$source = 'test.txt'; 
$src = ini_get("upload_tmp_dir"); 

$connection = ftp_connect($server); 
$login = ftp_login($connection, $ftp_user_name, $ftp_user_pass); 
if (!$connection || !$login) { die('Connection attempt failed!'); } 
$upload = ftp_put($connection, $dest, $source, FTP_BINARY); 
if (!$upload) { echo 'FTP upload failed!'; } 
ftp_close($connection); 
+0

Avez-vous vérifié les permissions sur le serveur? (Il aurait dû vous dire que c'est un problème de permission une fois que j'ai eu un problème similaire et que je l'ai résolu avec un simple chmod) –

+0

Le répertoire 'files' existe-t-il sur la télécommande? –

+0

Est-ce que test.txt existe dans le répertoire de travail du script? On dirait qu'il ne peut pas trouver le fichier sur votre serveur qu'il devrait télécharger. –

Répondre

25

est ici une réponse aux commentaires de php.net sur ftp_put:


Trouvé le prob, vous ne pouvez pas mettre un chemin vers le fichier de destination (même si je peux le faire dans le client DOS ftp ...?)

- cela ne fonctionne pas

ftp_put($conn, '/www/site/file.html','c:/wamp/www/site/file.html',FTP_BINARY); 

vous devez mettre

ftp_chdir($conn, '/www/site/'); 
ftp_put($conn,'file.html', 'c:/wamp/www/site/file.html', FTP_BINARY); 

http://php.net/manual/en/function.ftp-put.php

+0

Un grand merci pour cette réponse. Résolu ce problème pour moi. Tahnks! :) – helpse

+0

FTP_BINARY l'a fait pour moi! J'avais FTP_ASCII dedans qui n'a pas uploadé des images correctement. Je vous remercie. –

1

j'avais même problème et je l'ai résolu en utilisant ftp_nb_put(). Même fonction mais cela permet à votre programme d'exécuter plus de connexions ou quelque chose :-)

Questions connexes