double post sur un refresh.

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : double post sur un refresh.

par amnysia » 10 nov. 2007, 14:07

Un grand merci pour vos reponse, je pense que avec la doc plus le tuto je devrais m'en sortir

par Truc » 10 nov. 2007, 11:50

Dans ce cas je déplace dans le Forum Débuter en PHP (les réponses sont par défaut plus adaptées aux débutants :wink: )

moileraz montre un bonne utilisation que tu dois ajouter juste après le traitement de l'insertion en base. Il y a des exemples dans la doc ou ici

par moileraz » 10 nov. 2007, 11:39

header('Location: tapage.php');

exit(); aussi si possible

par amnysia » 10 nov. 2007, 01:35

J'ai un peu de mal a saisir comment marche la fonction header(). Serait tu m'eclairer sur la maniere de creer une redirection vers ma page? parce que c'est vraiment nouveau pour moi , je n'en ai jamais entendu parler ;) effectivement je debute un peu ^^
meric ;)

par Truc » 10 nov. 2007, 01:26

Inutile d'aller vérifier si le commentaire à déjà été posté... si on ajoute ne serait-ce qu'une lettre ou espace c'est mort.
Effectue une redirection (header() )vers ta page après l'enregistrement.

N'hésite pas à compléter le titre du sujet "Double post quoi ? comment ? à quel moment ?" :wink:

double post sur un refresh.

par amnysia » 10 nov. 2007, 00:48

bonsoir a tous,
Je suis en train de creer un systeme de commentaire sur mon site, j'ai cependant un petit probleme concernant le double post. Cet a dire que la personne peut poster plusieur fois le meme commentaire... et si par megarde elle refresh la page, elle repost malgres elle une fois de plus le commentaire...
je m'y prends comme ceci

Code : Tout sélectionner

//on verifie que un commentaire a ete poste, si oui on l'insere if(isset($_POST['commentaire']) && (!empty($_POST['commentaire']))) { $client = $_POST['client']; $article = $_POST['article']; $commentaire = nl2br($_POST['commentaire']); $note = $_POST['note_client']; mysql_query ("INSERT INTO shop_commentaire VALUES ('','$article', '$client', now(), '$note', '$commentaire')"); }
j'ai essaye en faisant une autre requete qui scan toute la table contenant les commentaires et dans le premier if de mettre un

Code : Tout sélectionner

&& ($_POST['commentaire'] != $resultat_premiere_requete['commentaire'])
mais sans succes, si quelqun pourrait me mettre sur le voie.
meci d'avance pour votre aide