[RESOLU] Problème récupération fichier avec ftp_get

Petit nouveau ! | 3 Messages

06 mai 2019, 10:49

Bonjour tout le monde,

Je suis en train d'écrire une fonction me permettant de récupérer un fichier depuis un serveur ftp. Pour cela, j'utilise la fonction ftp_get. La partie de connexion au serveur et de login fonctionne et j'arrive même à lister les fichiers présents sur le serveur ftp. Cependant dès lors que j'utilise ftp_get, il ne fonctionne pas et me retourne l'erreur de la boucle else.

Ci-joint le code, si vous avez une idée, merci beaucoup ! :)

// Connexion au server FTP
$conn_id = ftp_ssl_connect($ftp_server) or die("Connexion impossible au serveur $ftp_server");

// Identification avec un nom d'utilisateur et un mot de passe
ftp_login($conn_id, $ftp_username, $ftp_password) or die("Mauvais identifiants pour $ftp_server");

// Passage en mode passif (en mode passif => connexion initiée par le client => nécessaire car pare-feu)
ftp_pasv($conn_id, true) or die("Impossible d'activer le mode passif pour $ftp_server");

//Définition du fichier à récupérer
$file = 'test.txt';

//Récupération du fichier
ftp_get($conn_id, $file, $file, FTP_ASCII) or die("Problème lors de la récupération du fichier $file<br>");

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

06 mai 2019, 11:26

Fais un echo de error_get_last(), plutôt qu'un simple die(), peut être auras-tu un message d'erreur plus explicite.
Quand tout le reste a échoué, lisez le mode d'emploi...

Petit nouveau ! | 3 Messages

06 mai 2019, 11:34

J'ai ajouté ceci au début de mon code :
error_reporting(E_ALL);
ini_set("display_errors", 1);

J'ai maintenant cette erreur : ftp_get(test.txt): failed to open stream: Permission denied

Cela viendrait donc d'un problème de droits ? Comment puis-je debugger ça ? (car je suis en 777 des 2 cotés, juste pour le moment pour debug)

Merci.

Petit nouveau ! | 3 Messages

06 mai 2019, 11:43

Finalement c'est bon, j'ai revu mes droits, apparemment un des dossiers n'avais pas les bons droits, merci pour l'aide :)