furious Gontran Posté 2 Novembre 2004 Posté 2 Novembre 2004 (modifié) je penseque cela viens d'un probleme de chemin mais mes tests ne me le confirment pas... Voila, lorsque je teste mon code sur dreamweaver, tout marche bien et sans probleme. mais si je lance la page directement de son emplacement dans www, ca ne marche plus... Voici le code: <?php $fichier = "system\Dates.txt"; $fp = fopen($fichier,"r"); while (!feof($fp)) { $ligne = fgets($fp); $pieces = explode("|", $ligne); $Nom=$pieces[1]; $Nom2= explode (">", $Nom); if ($Nom2[1]=="") { $Nom3=$Nom2[0]; }else if ($Nom2[2]=="") { $Nom3=$Nom2[0]."<br>".$Nom2[1]; }else if ($Nom2[3]=="") { $Nom3=$Nom2[0]."<br>".$Nom2[1]."<br>".$Nom2[2]; }else { $Nom3=$Nom2[0]."<br>".$Nom2[1]."<br>".$Nom[2]."<br>".$Nom2[3]; } $Adresse = $pieces[2]; $Adresse2 = explode (">", $Adresse); if ($Adresse2[1]=="") { $Adresse3=$Adresse2[0]; }else if ($Adresse2[2]=="") { $Adresse3=$Adresse2[0]."<br>".$Adresse2[1]; }else if ($Adresse2[3]=="") { $Adresse3=$Adresse2[0]."<br>".$Adresse2[1]."<br>".$Adresse2[2]; }else { $Adresse3=$Adresse2[0]."<br>".$Adresse2[1]."<br>".$Adresse2[2]."<br>".$Adresse2[3]; } echo pieces[0]; echo $Adresse3; echo $Nom3; Wamp est bien lancé. Les fichiers respectifs sont bien a leur place. Dates.txt se trouve dans www/system/ Le code ci dessus se trouve dans www/ Lorsque je change Dates.txt de place pour le mettre dans www/ et en changeant le code pour : $fichier = "Dates.txt"; Ca marche encore sous dream et pas lancé directement. Idem si je met: $fichier = "http://localhost/system/Dates.txt"; avec dates.txt dans system Idem si je met $fichier = "system/Dates.txt"; ou $fichier = "system\Dates.txt"; Idem si je met $fichier = "E:\wamp\www\system\Dates.txt"; Et la vraiment, ca me prend le choux ce "detail". Modifié 2 Novembre 2004 par furious Gontran
Dan Posté 2 Novembre 2004 Posté 2 Novembre 2004 Salut Furious Gontran, Et en mettant "rb" au lieu de "r" dans ton fopen() ? Windows a la particularité de nécessiter ce flag "b" je ne sais plus pour quelle raison. J'ai pris l'habitude de le mettre sans me poser la question Dan
Anonymus Posté 2 Novembre 2004 Posté 2 Novembre 2004 resource fopen ( string filename, string mode [, int use_include_path [, resource zcontext]]) De plus, mode peut contenir la lettre 'b'. Cette option n'est utile que sur les systèmes qui font la différence entre les fichiers binaires et les fichiers textes (en bref, c'est une fonctionnalité Windows, totalement inutile sous Unix). S'il n'est pas nécessaire, il sera ignoré. Conclusion, le 'b' est pour le mode 'binaire' de windows Pour tester, ce que tu peux faire, c'est utiliser le flag 'w', pour écrire dans un fichier quelconque. Ce fichier n'existant pas, il le créera, et ainsi, tu verras où il le créera. Sinon : Ton fichier ne serait il pas appelé par un "include" ? Anonymus.
furious Gontran Posté 3 Novembre 2004 Auteur Posté 3 Novembre 2004 Dan avais raison, ca marche avec le b... Non, il n'y avait pas d'include... mais merci pour la bidouille de test elle me serviras surement car il m'arrive souvent de me perdre dans mon disque dur
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant