PHP : Method POST

nounours21_6 Messages postés 255 Date d'inscription   Statut Membre Dernière intervention   -  
crabs Messages postés 908 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

je développe une gestion de forum en php,
et après un envoi de message, si je fais actualiser
le message est insérer une deuxième fois!
Car je transmets mon message par la méthode POST!
Ma question est si on peut mettre 'null' ou 'false' a post pour qu'il n'insére pas une deuxième fois le message??

merci d'avance
@+ enjoy
A voir également:

3 réponses

Zep3k!GnO Messages postés 2025 Date d'inscription   Statut Membre Dernière intervention   200
 
En fait tu ne peux pas faire ca car ce qui se passe, c'est simple .
Tu remplis un formulaire, le valide et arrive sur ta page PhP.
Et la tu fais ton refresh,la.
Donc le soucis c'est que tu réenvoi les mêmes données à ta page et donc ca ré éxécute le script et réinserre...

Au pire si c'est un truc automatique que tu ne peux pas changer car c'est la mort qui tue de le faire, bien tu peux toujours au préalable sélectionner le dernier enregistrement inséré dans la table afin de comparer avec les valeurs que tu vas inserer TOI.


Voilà :D

Bon Courage
0
nounours21_6 Messages postés 255 Date d'inscription   Statut Membre Dernière intervention   2
 
oki, merci,

c'était justement la solution que je voulais évité car je ne la trouvée pas trés prope...
mais bon, je vais m'y collé...

enjoy @+
0
crabs Messages postés 908 Date d'inscription   Statut Membre Dernière intervention   507
 
Salut,
Tu peux aussi utiliser une redirection, principe :
page 1 : contient le formulaire -> post vers page 2
page 2 : traite le post (sans affichage) et redirige vers page 3
page 3 : affiche le résultat

Dans le principe tu découpes les traitements de la page traitant le POST en 2
étapes : page 2 et 3
La page 2 fait les insert dans la bd
La page 3 fait les affichages.
Pour faire la redirection, en PHP, il faut faire aucun affichage dans la page et
avant la fin d'exécution appeler :
header( "Location: url_de_la_page_3") ;

Normalement plus de problème de 'actualiser'.
A+, crabs
0