Empêchement De la Soumission De Forme De Répétition En
utilisant Des Sessions de PHP
Nous avons le tout vu ces messages sur quelques
sites Web avertissant de ne pas cliquer un bouton davantage
d'une fois ou les conséquences négatives, comme payer une facture
deux fois, peuvent résulter. Parfois nous pouvons poser ces
problèmes en frappant le dos ou régénérer des boutons. En
cet article j'expliquerai une méthodologie par lequel un emplacement
puisse assurer chaque forme soit soumis seulement une fois,
démontrant de ce fait que de tels avertissements sont inutiles et,
selon la nature des problèmes posés, intéressant réparer
immédiatement. Commençons en jetant un coup d'oeil au
processus que nous étudions : Formez La
Soumission. Aussi pédant qu'il peut sembler,
il sera intéressant de détailler chacune des étapes dans ce
processus : Le visiteur demande une page du serveur qui a une forme
là-dessus.Le serveur recherche la forme et l'envoie à
l'utilisateur.L'utilisateur saisit des données sur la forme et soumet
au serveur.Le serveur traite des données de forme et renvoie la page
résultante. Le scénario que nous devons maintenant analyser est quand
les re-déclenchements d'utilisateur un processus précédent de
soumission de forme. Ce que nous devons trouver ou créer est
quelque chose qui change pendant le processus de soumission de forme
qui ne dépend pas de la forme spécifique étant soumise et qui nous
pouvons dire changé. C'était une phrase chargée qui détaille
entièrement notre solution, ainsi nous a laissés la décomposer.
Trouvez ou créez quelque chose qui changements pendant le processus de soumission de
forme,ne dépend pas de la forme spécifique étant
soumise, etnous pouvons dire changé.
Puisque l'article qui change ne dépend pas de la forme
étant soumise (par exemple il n'importe pas si c'est une fiche de
bulletin, forme de signup de client, forme de paiement, etc.),
l'article n'est pas quelque chose qui déjà existe et doit donc être
créé, ainsi laissez-nous créent un submissionId appelé variable de
forme et le supposent qu'il fait mentionner les 3 propriétés
ci-dessus. Jusqu'ici, si bon -- ou ainsi il apparaît ! La
troisième "propriété" est que "nous pouvons dire [ It ] changé",
mais "changée" n'est pas une propriété d'une variable, ainsi nous
devons regarder ces plus étroitement. Afin d'indiquer quelque
chose changée, nous devons avoir un point de référence, une
réponse à la question "changée de ce qui?" C'est où une
variable de session héritera le jeu. Si nous définissons une
variable de session, disons $_session['nextvalidsubmission '] et le
traitons comme point de référence, nous aurons tous les outils
nécessaires pour protéger nos visiteurs. L'idée sera garder
le mis à jour variable de session avec le dernier submissionId
envoyé et de changer le submissionId chaque fois que elle est
envoyée à l'utilisateur. Puis, s'ils essayent de resoumettre
les données, ils soumettront un vieux submissionId qui n'assortit pas
le nextValidSubmission et nous saurons pour ne pas retraiter ces
données. Regardons ceci en termes de processus : Le visiteur demande une page du serveur qui a une forme
là-dessus.Le serveur recherche la forme, produit
d'un nouveau submissionId qui est inclus dans la forme, nextValidSubmission de mises à
jour, et envoie à l'utilisateur.L'utilisateur saisit des données sur la forme et soumet
au serveur.Le serveur traite des données de forme, change le nextValidSubmission, et renvoie
la page résultante. Maintenant, si le visiteur renvoie de façon ou d'autre
les données, elles enverront le vieux submissionId qui n'assortira
pas le nouveau nextValidSubmission. Ainsi, vous pouvez
maintenant dire au revoir à compter sur le Javascript aux boutons de
remove/disable, aux messages d'avertissement idiots, et aux clients de
renversement en empêchant la resoumission de forme.
Webmaster
de la référence de manuscrit - * NOUVEAU * référence de PHP et emplacement
d'instruction pour des Non-Programmeurs
Voyez ici pour l'information plus détaillée, un
exemple en utilisant PHP, et une autre méthode qui n'exige pas des
sessions.
Source D'Article: Messaggiamo.Com
Related:
» Seo Elite: New Seo Software!
» AntiSpywareBOT
» Reverse Mobile
» Error Nuker
Webmaster obtenir le code html
Ajouter cet article sur votre site Web dès maintenant!
Webmaster envoyer vos articles
Aucune inscription requise! Remplissez le formulaire et votre article est dans le Messaggiamo.Com répertoire!