gto55 Posté 18 Août 2006 Posté 18 Août 2006 (modifié) Bonjour, Je teste un upload par ftp d'une image depuis un formulaire mais il ne marche pas. Est-ce que qqn saurait pourquoi ? Le server est un server dédié ovh. Merci <form name="form" action="test.php" method="post" enctype="multipart/form-data"> <table> <tr> <td width="200" valign="top">Image du médias</td> <td><input name="image" type="file" class="champ" id="image" /></td> </tr></form> $imagePreviewClean = addslashes($_FILES['image']["name"]);$file = $imagePreviewClean;$remote_file = 'www/ledossier/images/medias/'.$date.'/images/'.$imagePreviewClean;// Mise en place d'une connexion basique$conn_id = ftp_connect("adresse ftp du server ");// authentification avec nom de compte et mot de passe$login ='le login';$mdp = 'le mot de passe ';// Identification avec un nom d'utilisateur et un mot de passe$login_result = ftp_login($conn_id, $login, $mdp);// Charge un fichierif (ftp_put($conn_id, $remote_file, $file, FTP_ASCII)) { echo "Le fichier $file a té chargé avec succès\n";} else { echo "Il y a eu un problème lors du chargement du fichier $file\n";}// Fermeture de la connexionftp_close($conn_id); Modifié 18 Août 2006 par gto55
gto55 Posté 20 Août 2006 Auteur Posté 20 Août 2006 j'ai ce message: "Il y a eu un problème lors du chargement du fichier 'nom du fichier que je veux uploader par ftp'"; Je n'ai pas d'autres indications
Dan Posté 20 Août 2006 Posté 20 Août 2006 As-tu essayé en changeant le mode (actif/passif) ? Si tu es derrière un firewall, ça peut être la raison Regarde la fonction : bool ftp_pasv ( resource ftp_stream, bool pasv ) Dan
gto55 Posté 20 Août 2006 Auteur Posté 20 Août 2006 (modifié) ça ne marche pas non plus, est-ce qu'il faut envoyer en mode binary ou ascii ? Ce serait pour une seule image. Est-ce que qqn aurait une autre exemple de transfert par ftp ? Merci Modifié 20 Août 2006 par gto55
NorSeb Posté 21 Août 2006 Posté 21 Août 2006 Bonjour, Dans ton code tu ne teste pas si tu es connecté. A mon humble avis, il faudrait commencer par ca Teste le retour des fontions ftp_connect() et ftp_login() http://fr.php.net/manual/fr/function.ftp-connect.php http://fr.php.net/manual/fr/function.ftp-login.php
gto55 Posté 21 Août 2006 Auteur Posté 21 Août 2006 (modifié) je n'ai pas mis tout le code, je teste bien si la connextion s'est effectué. Voilà le code en entier: Je crée au préalable un dossier par ftp où l'image sera uploadée avec cette fonction: $date = $_POST["date"];$pathImages = 'www/lesite/images/medias/'.$date.'/images/';ftp_mkdir($conn_id,$pathImages);$chmod_cmd3='CHMOD 0777 '.$pathImages;$chmod3=ftp_site($conn_id, $chmod_cmd3); <form name="form" action="test.php" method="post" enctype="multipart/form-data"> <table> <tr> <td width="200" valign="top">Image du médias</td> <td><input name="image" type="file" class="champ" id="image" /></td> </tr></form> // création de la connexion$conn_id = ftp_connect("l'adresse du server ovh");// authentification avec nom de compte et mot de passe$login = 'le login ';$mdp = 'le mot de passe;$login_result = ftp_login($conn_id, $login, $mdp);ftp_pasv($conn_id, TRUE);// vérification de la connexionif ((!$conn_id) || (!$login_result)) { echo "La connexion FTP a échoué!";// echo "Tentative de connexion à $ftp_server avec $ftp_user_name"; die; } else { echo "Connecté sur serveur distant<br>"; }$imagePreviewClean = addslashes($_FILES['image']["name"]);$file = $imagePreviewClean;$remote_file = 'www/ledossier/images/medias/'.$date.'/images/'.$imagePreviewClean;// Mise en place d'une connexion basique$conn_id = ftp_connect("adresse ftp du server ");// authentification avec nom de compte et mot de passe$login ='le login';$mdp = 'le mot de passe ';// Identification avec un nom d'utilisateur et un mot de passe$login_result = ftp_login($conn_id, $login, $mdp);// Charge un fichierif (ftp_put($conn_id, $remote_file, $file, FTP_ASCII)) {echo "Le fichier $file a té chargé avec succès\n";} else {echo "Il y a eu un problème lors du chargement du fichier $file\n";}// Fermeture de la connexionftp_close($conn_id); Il me dit que la connection s'est bien éffectuée mais que l'upload non Modifié 21 Août 2006 par gto55
NorSeb Posté 21 Août 2006 Posté 21 Août 2006 Il y a un point que je voudrais eclaircir Quel est ton objectif exactement ? Envoyer ton fichier sur ton serveur ? Si c'est le cas, le formulaire le fait déja... inutile d'utiliser du ftp.
gto55 Posté 21 Août 2006 Auteur Posté 21 Août 2006 En fait je dois envoyer une image dans un dossier image et un flv dans un dossier flv, comme les flv font plus de 2mo je ne peux ls envoyer pr http et je dois donc les envoyer par ftp. Sauf que je ne sais pas pourquoi, lorsque je cree un dossier avec la fonction mkdir il m'est impossible d'uploader quoi que ce soit dans le dossier flv; Il faut donc que je crée le dossier par ftp avec un chmod 777. Mais si je fais ça, il m'est impossible d'envoyer l'image par formulaire http. Voilà en gros le problême.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant