[réglé]Le multiclic - Version imprimable +- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org) +-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38) +--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51) +--- Sujet : [réglé]Le multiclic (/showthread.php?tid=1222) |
RE: Le multiclic - Sephi-Chan - 29-05-2007 C'est un système complexe à mettre en oeuvre les transactions ? Je viens de tester, en cas de multi-clic sur ce forum : "Vous avez déjà posté cette réponse dans la discussion sélectionnée. Veuillez visiter la discussion pour voir votre réponse." Sephi-Chan, 'foiré d'forum ! RE: Le multiclic - Dradge - 29-05-2007 J'ai une solution béton à proposer. Par contre faut que je prenne le temps de rédiger un truc clair, car pas mal de personnes ne comprennent pas du premier coup (me souviens de la première fois ou on me l'a expliqué ) RE: Le multiclic - Sephi-Chan - 29-05-2007 Tu nous file une petite piste ? :p RE: Le multiclic - Nessper - 29-05-2007 vas-y envoie sephi-chan : 'foiré d'forum ^^ RE: Le multiclic - Mysterarts - 29-05-2007 Ahhhh... il nous laisse dans le suspens ! j'en tremble d'émotion ! Que va-t-il nous proposé ? Mysterarts, tendu... RE: Le multiclic - Dradge - 29-05-2007 Donc voici le principe : Une variable dite de "controle" est utilisée, elle est gardée en base de données ou en session. Cette variable n'a pas deux fois la même valeur (enfin on suppose). On a donc le shéma suivant ultra simplifié suivant :
On génère une valeur aléatoire, un rand(1000000, 9999999) suffit . On stock cette valeur dans notre variable de controle pour pouvoir s'en servir à la page suivante. Ensuite il faut passer cette valeur de page en page pour pouvoir effectuer les controles. On utilise donc la méthode POST (préférable) ou la méthode GET (moins joli pour les url). Maintenant, je vais vous détailler le controle car c'est là que réside l'astuce Donc il suffit simplement de comparer la variable stockée (en session ou en bdd) avec celle reçue soit par la méthode GET soir par la méthode POST. Si l'égalitée est vraie alors il n'y a pas eut de double clic, on génère une valeur pour la variable de controle. Si l'égalité est fausse alors il suffit soir de complètement vider $_POST et $_GET ou alors de seulement supprimer de ces deux tableaux les variables qui "posent problème". Donc si on zoom arrière et que l'on ne se place plus au niveau de deux pages mais de toute une session (session de visite et non php ; même si les deux se recouvrent) on a une chose du genre : ------Page1--------------Page2---------------Page3 code 1 ---> code1 - code2 ---> code2 - code3 ---> code2 --------Ok-----------------Ok-----------------Ko! Voilà j'espère avoir été clair (pour une fois ) RE: Le multiclic - Nessper - 29-05-2007 Je trouves que ça ressemble à la technique du timestamp en plus compliqué, non ? (ou alors j'ai pas bien saisi le truc) RE: Le multiclic - Dradge - 29-05-2007 La le mec peux faire précédente, actualiser ou multi cliquer, seul le premier clic sera validé. RE: Le multiclic - Nessper - 29-05-2007 Je comprend pas bien.... Tu stockes une variable en session et tu la passes en POST sur toutes pages. Et quand le gars clique là où on veut contrôler on vérifie si les 2 valeurs sont égales et on régénère la variable que l'on remet en session, c'est ça ? RE: Le multiclic - Dradge - 29-05-2007 Bout de code pour l'exemple Code PHP :
|