PHP: problème du refresh avec un formulaire

Résolu
oxygenix Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -  
oxygenix Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour, j'ai un code (en simplifié qui donne a peu près ceci) :

if ($_POST['valid']) {
$result = mysql_query("insert into table (nom) values ($_POST['nom'])");
}
else
echo "<form ACTION=\"".$_SERVER['PHP_SELF']."\" ENCTYPE=\"x-www-form-encoded\" METHOD=POST>";
echo "<input type=text name=\"nom\">;
echo "<input type=\"submit\" name=\"valid\">";
echo "</FORM>";

Problème, lorsque je presse sur clic sur refresh, j'ai à nouveau un insert dans ma base.

Auriez-vous une solution élégante pour éviter ceci ?

Je sais qu'on peux utiliser les sessions mais je n'aimerais pas trop les utiliser.

Merci

Phil
A voir également:

4 réponses

atomy Messages postés 442 Date d'inscription   Statut Membre Dernière intervention   92
 
Salut,

Avant d'insérer... regarde si elle est déjà là!!
1
oxygenix Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
oui, mais je voudrais éviter une requête supplémentaire :)
0
atomy Messages postés 442 Date d'inscription   Statut Membre Dernière intervention   92
 
Salut,

Il y a peut-être un autre moyen... celui d'effacer les traces de tes données, en rechargeant la page....

Je ne me souviens plus bien... mais fais une recherche sur les headers... Location:
0
oxygenix Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
merci. je fais effectivement un header ("location:fin.php?valid=ok") et ça marche :)
0