FORMULAIRE
bobcarter
Messages postés
20
Statut
Membre
-
bobcarter Messages postés 20 Statut Membre -
bobcarter Messages postés 20 Statut Membre -
Bonjour !!
je fais une pti test en creant un forum en php et je me sers d'un fichier texte pr stocker tous les messges( je sais que c'est pas pratique , c juste un teste).
Alors qd kelkun ecrit un forum les valeurs des champs recuperées par les variables s'affichent normalement dans la page de forum mais j'ai remarqué que lorsqu'on actualise le site sans le fermer , l'affichage des valeurs des champs saisies en derniere position se repete au fur et à mesure qu'on clique sur actrualiser.je vous laisse mon scripts.merci d avance pour voitre aide.
<html>
<body>
<form action=forum.php method=post>
nom<input type=text name=nom value=""> <br>
message<textarea name="mes" value=""></textarea> <br>
<input type=submit value=valider name=val>
</form>
<?
$fichier="forumfiche.txt";
if(isset($mes) && isset($nom) && $nom!="" && $mes!="")
{
$pointeur=fopen($fichier,"r+");
$ancien=fread($pointeur,filesize($fichier));
$mes=htmlspecialchars($mes);
$mes=stripslashes(nl2br($mes));
$avis="$nom<br>$mes<br>";
rewind($pointeur);
fputs($pointeur,"$avis \n $ancien") ;
fclose($pointeur);
}
readfile($fichier);
?>
</body>
</html>
je fais une pti test en creant un forum en php et je me sers d'un fichier texte pr stocker tous les messges( je sais que c'est pas pratique , c juste un teste).
Alors qd kelkun ecrit un forum les valeurs des champs recuperées par les variables s'affichent normalement dans la page de forum mais j'ai remarqué que lorsqu'on actualise le site sans le fermer , l'affichage des valeurs des champs saisies en derniere position se repete au fur et à mesure qu'on clique sur actrualiser.je vous laisse mon scripts.merci d avance pour voitre aide.
<html>
<body>
<form action=forum.php method=post>
nom<input type=text name=nom value=""> <br>
message<textarea name="mes" value=""></textarea> <br>
<input type=submit value=valider name=val>
</form>
<?
$fichier="forumfiche.txt";
if(isset($mes) && isset($nom) && $nom!="" && $mes!="")
{
$pointeur=fopen($fichier,"r+");
$ancien=fread($pointeur,filesize($fichier));
$mes=htmlspecialchars($mes);
$mes=stripslashes(nl2br($mes));
$avis="$nom<br>$mes<br>";
rewind($pointeur);
fputs($pointeur,"$avis \n $ancien") ;
fclose($pointeur);
}
readfile($fichier);
?>
</body>
</html>
2 réponses
C'est normal, à chaque fois que tu actualise ta page, tu reéxécute le code et tu réinsères les données récupérées par la méthode post.
1) Met des doubles quotes dans tes balises html, comme ceci:
<form action="forum.php" method="post">
nom<input type="text" name="nom"> <br/>
message<textarea name="mes"></textarea> <br/>
<input type="submit" value="valider" name="val">
</form>
2) Récupère tes variables post avec $_POST['variable']
3) Aère un peu ton code, ça ne te coute rien ;-)
1) Met des doubles quotes dans tes balises html, comme ceci:
<form action="forum.php" method="post">
nom<input type="text" name="nom"> <br/>
message<textarea name="mes"></textarea> <br/>
<input type="submit" value="valider" name="val">
</form>
2) Récupère tes variables post avec $_POST['variable']
3) Aère un peu ton code, ça ne te coute rien ;-)
Tu utilises les sessions:
Tu vérifie que la variable $_SESSION['verif'] est définie, si elle ne l'est pas, tu éxécute le code, et à la fin du code tu définie cette variable: $_SESSION['verif'] = 'ok';
Donc si le gars fait un reload, la variable sera définie et le code ne seras pas reéxécuté.
Tu peux aussi faire un header en fin de page qui le redirigeras vers une autre page, sans qu'il ne s'en rende compte.
Tu vérifie que la variable $_SESSION['verif'] est définie, si elle ne l'est pas, tu éxécute le code, et à la fin du code tu définie cette variable: $_SESSION['verif'] = 'ok';
Donc si le gars fait un reload, la variable sera définie et le code ne seras pas reéxécuté.
Tu peux aussi faire un header en fin de page qui le redirigeras vers une autre page, sans qu'il ne s'en rende compte.
Salut! youpiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii!
je t'ecris juste pr te remercier pour ton aide.franchement tu m 'as bcp aidé, ça fesé un mois que je galerai pers en pouvait m'aider.mon forum marche super super bien sans probleme.J'ai essayé avec le header, c tres simple et super efficace.j'ai trop le moral ,j peux evolué à present avec mon php.
Merci merci
A bientot!
je t'ecris juste pr te remercier pour ton aide.franchement tu m 'as bcp aidé, ça fesé un mois que je galerai pers en pouvait m'aider.mon forum marche super super bien sans probleme.J'ai essayé avec le header, c tres simple et super efficace.j'ai trop le moral ,j peux evolué à present avec mon php.
Merci merci
A bientot!
comment faire pour eviter que le code se reexécute afin d'empecher la reinsertion des données récupérées par la méthode post à chaque fois que j'actualise ma page?