warzi Posté(e) le 11 janvier 2004 Partager Posté(e) le 11 janvier 2004 Bonjour, j'ai un problème avec le code PHP suivant if (isset($_GET["muscom"])) $muscom = $_GET["muscom"]; else $muscom = 0; $d = "/muscom"; if(($muscom <= $musmax) and ($muscom > 0)) { include("$d/$muscom.php"); } elseif($muscom != 0) { include("$d\inexis.php"); } switch ($muscom) { case 0 : break; default : include("cadrem.php"); break; } Warning: main(/muscom/6.php): failed to open stream: No such file or directory in f:\developpement\site sympho\muscom.php on line 21 Warning: main(): Failed opening '/muscom/6.php' for inclusion (include_path='.;d:\EasyPHP\php\pear\') in f:\developpement\site sympho\muscom.php on line 21 qqun pourrais me dire pourquoi il refuse obstinement d'ouvrir ces fichiers ? Es ce simplement parce que les fichiers à inclures sont pas dans le même dossier ? Comment faire?? ... <? // afficher formulaire ?> <form action="index.php?page=7&messag=1" method="post" > <p align="center">Nom <input name="nom" type="text" ><br><br> Message <br> <textarea name="message" cols="50" rows="5"></textarea> <br><br> <input name="envoyer" type="submit" value="envoyer"> <input name="effacer" type="reset" value="effacer"> </p> </form> <? break; case 1 : // // ouverture fichier enregistrement // $heur = date("j/m/Y H:i"); $livre = "livre.dor"; $ldor=fopen("$livre","r+"); while(!feof($ldor)){$lol = fgets($ldor, 255);} $lol = ""; fputs($ldor, "<table width=\"100%\" border=\"0\"><tr><td width=\"20%\">$nom</td> <td width=\"20%\">$heur</td></tr><tr><td colspan=\"2\"><br>$message</td></tr></table><br> \n"); fclose($ldor); // envoyer vers messag == 2 ?> <a href=?page=7&messag=0>Merci a toi <? $nom ?> d'avoir ecrit un message</a> <? break; } ?> Dans cette partie de code, j'envoie les données d'un formulaire, mais je n'arrive pas à les recuperer dans le case 1 ... Pourquoi help!! L'ecriture dans le fichier est faire sans le contenu des champs!! Lien vers le commentaire Partager sur d’autres sites More sharing options...
ran-tan-plan Posté(e) le 12 janvier 2004 Partager Posté(e) le 12 janvier 2004 case 1 : // // ouverture fichier enregistrement // $heur = date("j/m/Y H:i"); $livre = "livre.dor"; $ldor=fopen("$livre","r+"); while(!feof($ldor)){$lol = fgets($ldor, 255);} $lol = ""; fputs($ldor, "<table width=\"100%\" border=\"0\"><tr><td width=\"20%\">$_POST['nom']</td> <td width=\"20%\">$heur</td></tr><tr><td colspan=\"2\"><br>$_POST['message']</td></tr></table><br> \n"); fclose($ldor); // envoyer vers messag == 2 ?> <a href=?page=7&messag=0>Merci a toi <? echo $_POST['nom']; ?> d'avoir ecrit un message</a> <? break; Voila, j'ai repris ton case 1 et j'y ai apporté 3 modifications. Le truc c'est que quand tu envoies des données en POST via formulaire, tu dois les récupérer avec la variable $_POST['nom_de_variable']. donc lorsque tu veux récupérer tes variables $nom et $message, tu dois écrire $_POST['nom'] et $_POST['message'] sinon il les trouve pas Dans la phrase de remerciement, tu as oublié de mettre la variable dans un echo, donc c'est de toute façon normal qu'il affiche pas le nom. sinon, pour le premier probleme, je ne sais pas vraiment. Mais essaie de mettre une url relative ou absolue dans tes includes (juste pour tester) au lieu d'utiliser les variables. voila j'espere avoir été utile Lien vers le commentaire Partager sur d’autres sites More sharing options...
warzi Posté(e) le 12 janvier 2004 Auteur Partager Posté(e) le 12 janvier 2004 Je viens de faire les modifications que tu as apportés. Mais j'ai du passer par un $name = $_POST['nom']; $poss = $_POST['message']; pour pouvoir utiliser ses variables dans les fputs... je vais de suite regarder pour l'autre problème. Merci pour ton aide Lien vers le commentaire Partager sur d’autres sites More sharing options...
warzi Posté(e) le 12 janvier 2004 Auteur Partager Posté(e) le 12 janvier 2004 je viens de trouver la solution au premier problèmes ... if (isset($_GET["muscom"])) $muscom = $_GET["muscom"]; else $muscom = 0; $d = "/muscom"; devient if (isset($_GET["muscom"])) $muscom = $_GET["muscom"]; else $muscom = 0; $d = "./muscom"; c'estait un simple . qui faisait tout foiré Merci encore pour ton aide. Lien vers le commentaire Partager sur d’autres sites More sharing options...
ran-tan-plan Posté(e) le 13 janvier 2004 Partager Posté(e) le 13 janvier 2004 ce fut un plaisir Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.