[PHP] Problème de transfert FTP

Bonjour à tous les codeurs fous!!

Bon j’essaie de faire un truc simple…
du transfert ftp pour “uploader” sur un site web…
En gros mon besoin est d’uploader par lots toutes les images d’un répertoire et hormis le fait de faire n <input type=file…> et de browser les n images (solution pas super automatisé) je pensais plutôt faire du ftp…
Mais je me retrouve comme un c… car j’arrive pas à faire marcher les functions ftp… en tout cas le put apparemment…
En gros voici le dernier message d’erreur : “Le téléchargement Ftp a échoué!”
En local avec mon propre ftp et site web, c’est évidemment ok…
Donc là à distance je comprends pas…
Firewall? je l’ai désactivé et c’est tout pareil…
Droits sur les répertoires du serveur? j’ai déjà vérifié et j’ai les droits en écriture…

Est ce qu’une âme généreuse pourrait m’aider…??
A l’aideeeeeeeeeeeeee
Je vous mets à disposition le code ci dessous.

Merci pour votre aide!!


<?php 
 
$ftp_server="**"; 
$ftp_user_name="******"; 
$ftp_user_pass="**********"; 
$source_file=("C:\\test\\images\\042090.jpg"); 
$destination_file="042090.jpg"; 
 
// Création de la connexion 
$conn_id = ftp_connect("$ftp_server"); 
 
// Authentification avec nom de compte et mot de passe 
$login_result = ftp_login($conn_id, "$ftp_user_name", "$ftp_user_pass"); 
 
// Vérification de la connexion 
if ((!$conn_id) || (!$login_result)) { 
        echo "La connexion FTP a échoué!"; 
        echo "Tentative de connexion à $ftp_server avec $ftp_user_name"; 
        die; 
    } else { 
        echo "Connecté à $ftp_server, avec $ftp_user_name"; 
    } 
 
// Téléchargement d'un fichier. 
$upload = ftp_put($conn_id, "$destination_file", "$source_file", FTP_BINARY); 
 
// Vérification de téléchargement 
if (!$upload) { 
        echo "Le téléchargement Ftp a échoué!"; 
    } else { 
        echo "Téléchargement de $source_file sur $ftp_server en $destination_file"; 
    } 
 
// Fermeture de la connexion FTP. 
ftp_quit($conn_id); 
 
?> 
 

Puisque les images sont sur ton serveur, pourquoi n’utiliserais tu pas un vrai client FTP?

au passage :

  1. “$ftp_server” : c’est débile. $ftp_server directement, mais pas entre double quote. merci.

  2. pareil pour le login, le password

  3. if ( (!$conn_id) && … ) : pas besoin de surparenthéser, ici tu n’utilise pas de mix && et ||

Sinon ton problème doit être tout bête :

$destination_file="042090.jpg";

Avec une destination pareil, tu vas pas ajouter grand chose sur le serveur. Là grosso modo il va tenter de l’ajouter dans le répertoire par défaut. Et avec un peu de bol, c’est /, et dans ce cas : c’est niet, tu crée pas à la racine.

Faut voir à mettre le bon path.

Les images sont sur mon poste en local.

Non mais tu vas les mettre sur un serveur FTP et tu ne te poses pas la question de savoir où?

Non je ne veux pas utiliser le client ftp, je veux que ça passe par une interface d’admin pour simuler un upload et créer autant de produits que je viens de rajouter d’images…
J’ai avancé…
Un truc très bizarre qui demande une très grande expertise car là je sèche…

Finalement je viens d’identifier le pourquoi du comment…

ftp_put($conn_id, "/www/catalog/images/tuyau37.jpg", "C:\90.jpg", FTP_BINARY);
ftp_put($conn_id, "/www/catalog/images/tuyau38.jpg", "C:\090.jpg", FTP_BINARY);

La première ligne marche (image bien copiée sur le serveur), la deuxième non…
Pourtant les deux images sont bien sur le C:…
Je comprends riennnnnnnnnnnnnnnnnnnnnnnn

A l’aideeeeeeeeeeee