Upload fichier

Upload fichier - PHP - Programmation

Marsh Posté le 05-09-2006 à 15:35:22    

Bonjour,
voila j'ai une page en php qui permet en autre d'uploader des fichiers sur mon compte free, tout fonctionne quand j'utilise cette page directement sur le ftp free.
Le soucis c'est que je voudrais utiliser cette page sur un autre ftp autre que free pour pouvoir uploader des fichiers sur mon compte free, mais apparament ce n'est pas si simple que je pensais, en effet pour le chemin d'upload je met : "http://***.free.fr/photo" par exemple et voici le message d'erreur :

Code :
  1. Warning: move_uploaded_file(http://****.free.Fr/Photos/9.jpg): failed to open stream: HTTP wrapper does not support writeable connections.


 
Donc ya t'il un moyen d'effectuer cela ?

Reply

Marsh Posté le 05-09-2006 à 15:35:22   

Reply

Marsh Posté le 05-09-2006 à 16:05:15    

les fonctions que tu utilise doivent etre bloquees par free sur l'exterieur.
 
Par contre  les fonctions FTP de PHP doivent passer.
 
voila

Reply

Marsh Posté le 05-09-2006 à 16:06:38    

les fonctions ftp de php, tu peux m'en dire plus stp ?

Reply

Marsh Posté le 05-09-2006 à 17:05:55    

hacksi a écrit :

les fonctions ftp de php, tu peux m'en dire plus stp ?


 
http://php.net/ftp


---------------
Loose Change Lies | Bars | Last.fm
Reply

Marsh Posté le 05-09-2006 à 17:29:56    

vu que le ftp de free merdouille souvent, ça serait plus simple de mettre à dispo le fichier sur le premier serveur puis faire un file_get_contents (ça marche chez free)

Reply

Marsh Posté le 05-09-2006 à 19:16:06    

en fait si je fais ça c'est que je ne peux pas uploader de fichier sur l'autre ftp car je dispose que de 15mo, c'est pour cela que je veux mettre les fichiers sur free.

Reply

Marsh Posté le 05-09-2006 à 23:33:51    

je viens de regarder la doc sur les commandes ftp et ça a l'air pas trop mal mais j'ai chercher pour trouver des exemples d'utilisation mais je n'en trouve pas hormis simplement des exemples de connexion et de déconnexion au ftp.  
Vous connaissez pas un exemple qui upload un fichier depuis un formulaire HTML avec les commandes FTP par hasard ?

Reply

Marsh Posté le 10-09-2006 à 02:06:33    

personne pour m'aider svp ?

Reply

Marsh Posté le 13-09-2006 à 16:11:37    

Bon je fais quelques test pour comprendre le système, voici le code que j'utilise :

Code :
  1. <?php
  2. $ftp_server="ftpperso.free.fr";
  3. $ftp_user_name="*****";
  4. $ftp_user_pass="****";
  5. $source_file="C:\Telechargement\Leucate_plage.pdf";
  6. $destination_file="\www\repertoire\Photos\Leucate_plage.pdf";
  7. // Création de la connexion
  8. $conn_id = ftp_connect("$ftp_server" );
  9. // Authentification avec nom de compte et mot de passe
  10. $login_result = ftp_login($conn_id, "$ftp_user_name", "$ftp_user_pass" );
  11. // Vérification de la connexion
  12. if ((!$conn_id) || (!$login_result)) {
  13.         echo "La connexion FTP a échoué!";
  14.         echo "Tentative de connexion à $ftp_server avec $ftp_user_name";
  15.         die;
  16.     } else {
  17.         echo "Connecté à $ftp_server, avec $ftp_user_name<br>";
  18.     }
  19. // Téléchargement d'un fichier.
  20. $upload = ftp_put($conn_id, "$destination_file", "$source_file", FTP_BINARY);
  21. // Vérification de téléchargement
  22. if (!$upload) {
  23.         echo "Le téléchargement Ftp a échoué!";
  24.     } else {
  25.         echo "Téléchargement de $source_file sur $ftp_server en $destination_file";
  26.     }
  27. // Fermeture de la connexion FTP.
  28. ftp_quit($conn_id);
  29. ?>


 
Voici ce que la page me renvoie :

Code :
  1. Connecté à ftpperso.free.fr, avec ******
  2. Le téléchargement Ftp a échoué!


 
Donc je pense que c'est un problème dans la définition de la destination du fichier. Donc en fait je veux placer le fichier dans le dossier "Photos" qui se trouve à la racine du FTP (je précise que j'ai bien mis les droits d'écriture).
Mais en fait je ne sais pas trop comment définir le chemin car je pense que c'est une histoire d'adresse relative ou un truc dans ce style.
Donc ya-t-il une ame charitable pour m'éclairer sur le sujet :) ?

Reply

Marsh Posté le 13-09-2006 à 16:14:11    

\www\repertoire\Photos\Leucate_plage.pdf n'existe pas
 
--> /www/repertoire/Photos/Leucate_plage.pdf
 
de plus, il faut doubler les \ -> $s = "c:\\file" ;


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
Reply

Marsh Posté le 13-09-2006 à 16:14:11   

Reply

Marsh Posté le 13-09-2006 à 16:23:53    

Voici les modifications effectuées :

Code :
  1. $ftp_server="ftpperso.free.fr";
  2. $ftp_user_name="****";
  3. $ftp_user_pass="****";
  4. $source_file="C:\\Telechargement\Leucate_plage.pdf";
  5. $destination_file="/www/repertoire/Photos/Leucate_plage.pdf";


et j'ai toujours le même problème...

Reply

Marsh Posté le 13-09-2006 à 16:49:58    

ça doit être un pb de chemin absolu/relatif
essaye sans le / avant www
 
et pour simplifier tu peux mettre des / partout :

$source_file="C:/Telechargement/Leucate_plage.pdf";
$destination_file="www/repertoire/Photos/Leucate_plage.pdf";

Reply

Marsh Posté le 13-09-2006 à 17:01:29    

non ça ne change rien au problème :(

Reply

Marsh Posté le 13-09-2006 à 17:04:50    

- le dossier www/repertoire/Photos existe bien sur ton ftp ?
- le fichier C:/Telechargement/Leucate_plage.pdf aussi ?


Message édité par soju le 13-09-2006 à 17:05:09
Reply

Marsh Posté le 13-09-2006 à 17:08:17    

le fichier sur mon disque dur existe bien.  
En revanche pour le dossier sur le FTP j'en sais rien lol.
J'ai bien le dossier Photos qui existe sur le FTP à la racine avec les droits d'écritures. Mais le "www/repertoire" c'est moi qui l'ai rajouté pour essaye de faire une adresse "absolu/relatif" donc proprement dit je n'ai pas un dossier "repertoire" lol j'espere que vous me suivez, enfin pour ma part j'y comprend pas grand chose à ces histoire d'adresse...

Reply

Marsh Posté le 13-09-2006 à 17:12:21    

hacksi a écrit :

En revanche pour le dossier sur le FTP j'en sais rien lol.

tu attendais un miracle alors ?  :heink:  
 
essaye :

$source_file="C:/Telechargement/Leucate_plage.pdf";
$destination_file="Photos/Leucate_plage.pdf";

Reply

Marsh Posté le 13-09-2006 à 17:31:13    

non je viens de réessayer bien que je l'avais déjà fait mais ça ne fonctionne toujours pas.

Reply

Marsh Posté le 13-09-2006 à 17:33:37    

et avec

$destination_file="./Photos/Leucate_plage.pdf";


?
 
sinon il va te falloir le chemin absolu de ton compte, tu pourras le recupérer avec ftp_pwd ou un phpinfo

Reply

Marsh Posté le 13-09-2006 à 18:21:37    

non ça ne marche toujours pas, j'ai donc fait un phpinfo et jai bien toutes les infos.... d'ailleurs un peu trop lol.
Comment je localise le chemin absolu ? ça ressemble à quoi ?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed