Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2082 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [wip-php] FTP, probleme de ftp_cdup et ftp_pwd

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[wip-php] FTP, probleme de ftp_cdup et ftp_pwd

n°564988
Profil sup​primé
Posté le 12-11-2003 à 15:41:53  answer
 

resolu : voir plus bas :)


Message édité par Profil supprimé le 14-11-2003 à 11:43:59
mood
Publicité
Posté le 12-11-2003 à 15:41:53  profilanswer
 

n°565007
impulse
Posté le 12-11-2003 à 15:56:33  profilanswer
 

Il existe au moins ce repertoire?

n°565008
Profil sup​primé
Posté le 12-11-2003 à 15:59:18  answer
 

ben vi vu qu'il vient d'un listing :)
m'enfin de toute maniere j'ai l'acces direct au ftp et il existe bien :)
 
ca me fait ca sur n'importe quel rep :(

n°565014
impulse
Posté le 12-11-2003 à 16:02:28  profilanswer
 

Tu devrais faire un file_exists($rep) deja pour voir si le rep existe et si il est accessible.
 
EDIT : c'est peut etre un pb de droits.


Message édité par impulse le 12-11-2003 à 16:03:58
n°565016
Profil sup​primé
Posté le 12-11-2003 à 16:03:56  answer
 

Code :
  1. //si un repertoire est specifié
  2. if (file_exists($rep))
  3.  {
  4.   ftp_chdir($ConnectFtp, $rep);
  5.   $fichier=ftp_nlist($ConnectFtp, $rep);
  6.   foreach($fichier as $files)
  7.    {
  8.     echo $files;
  9.    }
  10.  }
  11. else echo "existe pas";


 
retour : "existe pas"
 
:/
pourtant il existe c'est sur

n°565019
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 12-11-2003 à 16:08:52  profilanswer
 

chacal_one333 a écrit :


retour : "existe pas"
 
:/
pourtant il existe c'est sur


Passe un répertoire avec un path complet, genre C:\repertoire\ftp\plouf


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°565021
impulse
Posté le 12-11-2003 à 16:10:54  profilanswer
 

Tu pourrais donner un exemple de la valeur que peut prendre $rep dans ton script?

n°565022
Profil sup​primé
Posté le 12-11-2003 à 16:11:36  answer
 

impulse a écrit :

Tu pourrais donner un exemple de la valeur que peut prendre $rep dans ton script?

template, pics_up entre autre

n°565027
Profil sup​primé
Posté le 12-11-2003 à 16:12:39  answer
 

Taiche a écrit :


Passe un répertoire avec un path complet, genre C:\repertoire\ftp\plouf

ben c'est pas en local, mais j'ai testé (ovh) "www/".$rep;
 
rien a faire non plus :/ et "www/".$rep."/"; itou

n°565028
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 12-11-2003 à 16:13:33  profilanswer
 

Fais un ftp_pwd pour la forme :o


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
mood
Publicité
Posté le 12-11-2003 à 16:13:33  profilanswer
 

n°565029
impulse
Posté le 12-11-2003 à 16:13:59  profilanswer
 

chacal_one333 a écrit :

template, pics_up entre autre


 
Ben comme dit Taiche, faudrait peut etre donner le nom complet du rep. Normal que ça ne fonctionne pas sinon...

n°565031
Profil sup​primé
Posté le 12-11-2003 à 16:16:06  answer
 

genre comment??
 
pas sur de comprendre ce que tu veut dire par nom complet

n°565032
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 12-11-2003 à 16:19:05  profilanswer
 

chacal_one333 a écrit :

genre comment??
 
pas sur de comprendre ce que tu veut dire par nom complet


Fais un ftp_pwd. Ca te dira où tu te situes exactement sur le serveur. A partir de là, tu sauras ce qu'il faudra faire comme chdir [:spamafote]


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°565035
impulse
Posté le 12-11-2003 à 16:21:41  profilanswer
 

chacal_one333 a écrit :

ben c'est pas en local, mais j'ai testé (ovh) "www/".$rep;
 
rien a faire non plus :/ et "www/".$rep."/"; itou


 
http://fr.php.net/manual/en/function.file-exists.php
 

Citation :


Note: This function will not work on remote files as the file to be examined must be accessible via the servers filesystem.


n°565039
Profil sup​primé
Posté le 12-11-2003 à 16:24:38  answer
 

désolé de pas comprendre mais j'ai fait un ftp_pwd qui me retourne "/" donc root.
 
Donc logiquement si je fait
$ou=ftp_pwd($ConnectFtp);
ftp_chdir($ConnectFtp, $ou.$rep);
 
ca devrait bien marché :??:
mais ca marche pas, ya un truc que j'ai du mal a saisir


Message édité par Profil supprimé le 12-11-2003 à 16:25:27
n°565050
impulse
Posté le 12-11-2003 à 16:37:15  profilanswer
 

Hum, je crois que j'ai pas tout suivi. Si j'ai bien compris en relisant les posts, tu as un serveur FTP sur une machine et sur une autre tu as un serveur web sur lequel ton script est executé, c'est ça?
 
Si c'est le ce cas oublie deja le file_exists(), ça ne fonctionne qu'en local.
 
Ensuite, est ce que tu es certain que la connexion au serveur et le listing fonctionnent bien? => EDIT : boo, j'ai du mal aujourdh'ui... :o


Message édité par impulse le 12-11-2003 à 16:40:23
n°565053
Profil sup​primé
Posté le 12-11-2003 à 16:39:03  answer
 

j'ai un server FTP chez ovh (donc distant) et mon scipt que je fait tourner @home sous apache.
 
Pour la connection c'est certain que ca marche et pareil pour le listing il me sort tout ce qu'il y a dans le root :)

n°565072
impulse
Posté le 12-11-2003 à 16:45:38  profilanswer
 

On va y arriver.
 
T'as essayé un truc du genre :
 

Code :
  1. $dir = ftp_pwd($ConnectFtp);
  2. ftp_cdup($ConnectFtp);
  3. ftp_chdir($ConnectFtp, $dir);


n°565105
Profil sup​primé
Posté le 12-11-2003 à 16:59:54  answer
 

impulse a écrit :

On va y arriver.
 
T'as essayé un truc du genre :
 

Code :
  1. $dir = ftp_pwd($ConnectFtp);
  2. ftp_cdup($ConnectFtp);
  3. ftp_chdir($ConnectFtp, $dir);


 

Citation :

Warning: ftp_cdup(): Permission denied. in e:\coding\ftp.php on line 35


 
la ligne 35 est le cdup
 :??:
 
M'enfin perso je comprend pas ton code
 
$dir me donnerai le repertoire ou je suis actuallement et ensuite avec chdir tu irai sur ce repertoire donc je resterai sur place nan?


Message édité par Profil supprimé le 12-11-2003 à 17:00:58
n°565158
Profil sup​primé
Posté le 12-11-2003 à 18:29:48  answer
 

bon ya du progres mais pas bcp :D
 
Maintenant j'arrive a aller dans un autre repertoire cependant il m'affiche le contenu en boucle

Code :
  1. //la fonction qui explore le repertoire
  2. function explorer ($rep)
  3. {
  4. //connection au ftp
  5. $ConnectFtp=ftp_connect("60gp.ovh.net", "21" );
  6. //login au ftp connecté
  7. ftp_login($ConnectFtp, "xxxx", "xxxx" );
  8. //la racine
  9. $DefRep="/www";
  10. $ou=ftp_pwd($ConnectFtp);
  11. ftp_chdir($ConnectFtp, $DefRep.$ou.$rep);
  12. $fichier=ftp_nlist($ConnectFtp, $DefRep.$ou.$rep);
  13.   foreach($fichier as $files)
  14.    {
  15.       $extension=explode(".", $files);
  16.       switch ($extension[1])
  17.        {
  18.         case "gif";
  19.         $AssImg="img";
  20.         $link=$files;
  21.         break;
  22.         case "";
  23.         $AssImg="rep";
  24.         $link="<a href=\"ftp.php?rep=".$files."\">".$files."</a>";
  25.         break;
  26.         case "php";
  27.         $AssImg="file";
  28.         $link=$files;
  29.         break;
  30.        }
  31.    echo "<img src=\"/pics/".$AssImg.".gif\"> ".$link."</a><br/>";
  32.   }
  33. }
  34. explorer ($rep);


 
Donc par exemple par default il va m'affiché un dossier appelé "test"
 
je clique sur test et la il doit me sortir test.php, test2.php ...
 
Mais au contraire il va m'affiché
 
test.php
test.php
test.php
test.php
test.php
test.php
test2.php
test2.php
test2.php
test2.php
test2.php
:(
 
quelqu'un comprendrai pourquoi?

n°565162
Profil sup​primé
Posté le 12-11-2003 à 18:42:35  answer
 

tient un truc "marrant".
 
Ou que je soit le ftp_pwd m'indiquera TOUJOURS "/"
pas normal ca :heink:

n°565189
Profil sup​primé
Posté le 12-11-2003 à 19:26:33  answer
 

resolu :)
 
par contre le ftp_pwd bug toujour
 
vous avez deja experiencé ce genre de pbm :??:

n°565561
impulse
Posté le 13-11-2003 à 08:21:57  profilanswer
 

chacal_one333 a écrit :


...
M'enfin perso je comprend pas ton code
...


 
Faut pas faire attention, j'étais très fatigué hier. :o
 
Bon alors, tu as trouvé d'ou venait le probleme pour ftp_chdir?

n°565576
Profil sup​primé
Posté le 13-11-2003 à 09:10:15  answer
 

:lol:
 
waip j'ai trouvé.
En fait il fallait que je definisse la racine et que je le rajoute au path a chaque fois, comme taiche a dit en fait :/
 

Code :
  1. $DefRep="/www";
  2. ftp_chdir($ConnectFtp, $DefRep.$rep);

n°565599
Profil sup​primé
Posté le 13-11-2003 à 09:57:52  answer
 

Bon 3 petits problemes de rien du tout, mais j'avoue avoir du mal a cerné ce qui va pas.
 
Primo pour remonté d'un dossier il y a la fonction ftp_cdup.
Donc j'ai fait une icone qui lorsque l'on clique fait passer une variable parent=1 dans l'url, que je verifie ensuite sur la page.

Code :
  1. if ($parent=="1" )
  2. {
  3.  ftp_cdup($ConnectFtp);
  4. }


Si elle est a 1 alors je fait un ftp_cdup, mais il refuse :

Code :
  1. Warning: ftp_cdup(): Permission denied


 
2eme petit truc.
Je voudrait ordonné les dossiers et fichiers comme sur un vrai client ftp, a savoir les dossiers en premier et ensuite les fichier (pour le moment tout est melangé, mais par ordre alfa).
 
et le dernier probleme vient lors du telechargement que je veut faire avec ftp_fget

Code :
  1. $total_path="ftp://".USER.":".PASS."@".SERVER.$file;
  2.   $open=fopen($total_path, "r" );
  3.   ftp_fget($ConnectFtp, $open, $file, "FTP_BINARY" );


 
Le chemin jusqu'au fichier est bon (j'ai verifié), la connect est etablie, et le fopen ne retourne aucune erreur.
mais j'ai une page blanche :(
Je voudrait qu'il m'ouvre une fenetre classique avec "ou voulez vous sauvez ce fichier" quoi
 
help? :cry:


Message édité par Profil supprimé le 13-11-2003 à 17:28:39
n°565683
Profil sup​primé
Posté le 13-11-2003 à 11:33:00  answer
 

:bounce:


Message édité par Profil supprimé le 13-11-2003 à 11:33:11
n°565920
Profil sup​primé
Posté le 13-11-2003 à 15:45:20  answer
 

allez quoi [:ddr555]

n°566146
Profil sup​primé
Posté le 13-11-2003 à 22:20:43  answer
 

allez up

n°566420
impulse
Posté le 14-11-2003 à 08:18:00  profilanswer
 

chacal_one333 a écrit :

Bon 3 petits problemes de rien du tout, mais j'avoue avoir du mal a cerné ce qui va pas.
 
Primo pour remonté d'un dossier il y a la fonction ftp_cdup.
Donc j'ai fait une icone qui lorsque l'on clique fait passer une variable parent=1 dans l'url, que je verifie ensuite sur la page.

Code :
  1. if ($parent=="1" )
  2. {
  3.  ftp_cdup($ConnectFtp);
  4. }


Si elle est a 1 alors je fait un ftp_cdup, mais il refuse :

Code :
  1. Warning: ftp_cdup(): Permission denied


 
2eme petit truc.
Je voudrait ordonné les dossiers et fichiers comme sur un vrai client ftp, a savoir les dossiers en premier et ensuite les fichier (pour le moment tout est melangé, mais par ordre alfa).
 
et le dernier probleme vient lors du telechargement que je veut faire avec ftp_fget

Code :
  1. $total_path="ftp://".USER.":".PASS."@".SERVER.$file;
  2.   $open=fopen($total_path, "r" );
  3.   ftp_fget($ConnectFtp, $open, $file, "FTP_BINARY" );


 
Le chemin jusqu'au fichier est bon (j'ai verifié), la connect est etablie, et le fopen ne retourne aucune erreur.
mais j'ai une page blanche :(
Je voudrait qu'il m'ouvre une fenetre classique avec "ou voulez vous sauvez ce fichier" quoi
 
help? :cry:


 
1. Si ftp_pwd te donne tjs "/" c'est normal que ftp_cdup foire : tu ne dois pas avoir les droits pour remonter à la racine. Il faudrait d'abord que ftp_pwd fonctionne pour utiliser ftp_cdup je pense...
 
2. J'ai pas la tete a ça de si bon matin. :/
 
3. Il doit y avoir une erreur dans la doc, le mode est defini par un int =>

Code :
  1. bool ftp_fget ( resource ftp_stream, resource handle, string remote_file, int mode [, int resumepos])


Message édité par impulse le 14-11-2003 à 08:18:48
n°566423
impulse
Posté le 14-11-2003 à 08:22:51  profilanswer
 

3. T'as essaye avec FTP_BINARY sans les quotes?

n°566511
Profil sup​primé
Posté le 14-11-2003 à 10:28:14  answer
 

ca me dit : Warning: ftp_fget(): supplied resource is not a valid File-Handle resource in e:\coding\fonction.php on line 18
 
sans les quotes


Message édité par Profil supprimé le 14-11-2003 à 11:04:14
n°566581
Profil sup​primé
Posté le 14-11-2003 à 11:38:37  answer
 

bon j'ai reussi a fixé le dl :)
 

Code :
  1. ftp_get($ConnectFtp, $_POST["path"].$_POST["file"], $total_path, FTP_BINARY)


 
et en effet il ne faut pas de guillemet.
En fait je specifiait mal le chemin [:mlc]

n°566583
Profil sup​primé
Posté le 14-11-2003 à 11:43:19  answer
 

me reste plus que le ftp_cdup/pwd a faire marché :) mais j'ai toujour un denied.
 
qqun a deja experiencé ca?

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [wip-php] FTP, probleme de ftp_cdup et ftp_pwd

 

Sujets relatifs
[C++ Builder] Problème étrange entre OpenDialog & écriture de fichier[PHP] petit problème (validation de textarea)
Probleme avec Excel et les bibliothequesProblème (surrement très con) pour passer une chaine en paramètre.
Problème de liens entre diverses versions de gccPetit probleme; pas de php => pas d'include. Que choisir ?Framset ?
[Java] Problème avec JPopupMenu [résolu]Problème de conversion avec les fonctions pack & unpack
[PHP] Probleme sur la fonction header()Problème de <TABLE>
Plus de sujets relatifs à : [wip-php] FTP, probleme de ftp_cdup et ftp_pwd


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR