如何避免表单的重复提交
重复|重复提交
你是否遇到过“重复提交”的问题?要解决这个问题其实并不难。这里有一个简单的方法避免同一表单的重复提交。
首先,我们可以定义一个session变量用来保存一个表单的提交序列号。这里我定义为“$userLastAction”。然后在表单里加入一个hidden变量,把值设为$userLastAction+1:
>
最后,在处理提交之前判断表单是否已被提交过:
if($lastAction>$userLastAction and inputIsValid(...)){
$userLastAction++; // 序列号加1
// 处理表单数据
}
原文:
Avoid multiple form submissions
Submitted By: Douglas E. Cook
Date: 07/26/00 19:46
Does your database suffer from "duplicate post" syndrome? The cure isn't too difficult. Here is a simple way to prevent users from submitting the same form multiple times.
First, declare a session variable to store a serial number for each form. I call mine "$userLastAction." Then, in every form where duplicate submission is a problem, include a hidden field, and set the value to $userLastAction+1:
>
Finally, verify that the form has not been previously submitted before acting on the submission:
if($lastAction>$userLastAction and inputIsValid(...)){
$userLastAction++; // Increment serial number
// Act on form here
}
译自:phpbuilder
这只是一个小技巧,用来避免一个表单的重复提交。这样多少可以防止一些灌水的现象,另外有时候由于网络状况等原因用户不知道提交是否成功,也会再次提交同一份表单。
这个技巧的主要原理是不允许用户回退后再次提交,也就是说回退后修改再提交也是不允许的,而且也不能避免Ctrl-C/Ctrl-V的灌水办法。究竟有没有用,还是看各位站长的喜好了。

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen











php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

Binaryx 'Token -Name Änderung: Von BNX auf vier und dann zu Form hat die tiefe Bedeutung hinter strategischen Anpassungen Binaryx kürzlich das Token -Symbol von vier bis $ $ Form geändert, das die Branche weit verbreitet hat. Dies ist nicht das erste Mal, dass Binaryx seinen Namen geändert hat, und sein Token -Symbol hat einen Übergang von BNX auf vier erlebt. In diesem Artikel werden die strategischen Absichten dieser Reihe von Namensänderungen eingehend untersucht. 1. Token Name Change-Prozess und strategische Überlegungen Binaryx starteten zunächst das $ BNX-Token auf der Basis der BNB-Kette im Jahr 2021, um das Gaming-Ökosystem von Play-to-Earn (P2E) zu unterstützen. Anfang 2024, um das Wirtschaftsmodell zu optimieren

In HTML5 kann es mehrere Formulare geben. Die Regeln erlauben die Verwendung mehrerer Formular-Tags auf derselben HTML-Seite. Um jedoch zu verhindern, dass das Backend sie beim Senden nicht erkennt, müssen Sie dem Formular unterschiedliche IDs oder Klassen hinzufügen. Die Syntax lautet „<from action= "url" id=" id value 1">Formularelement</from><from action="url" id="id value 2">Formularelement</from>.....".

Der Tag, der ein Formular in HTML5 definiert, ist „<form>“. Mit dem Formular-Tag wird ein HTML-Formular (Formularfeld) für Benutzereingaben erstellt, um Benutzerinformationen zu sammeln und zu übertragen. Der gesamte Inhalt des Formulars wird mit der Syntax „<form action="Submit Address" method=" übermittelt. Submit-Methode „name="form name">form control</form>". Ein Formular kann ein oder mehrere Formularelemente enthalten, z. B. „input“, „select“ und „textarea“.

Dieser Artikel gibt Ihnen eine detaillierte Zusammenfassung der Wissenspunkte zu Formularelementen in HTML. Ich hoffe, er wird Ihnen hilfreich sein!

php记录搜索引擎蜘蛛爬行记录代码。php教程记录搜索引擎蜘蛛爬行记录代码 center form action=setup.php method=post table align=center tr td服务器:/tdtdinput value=localhost name=server //td /tr tr td用

图片消失如何解决先是图片文件上传$file=$_FILES['userfile']; if(is_uploaded_file($file['tmp_name'])){$query=mysql_query("INSERT INTO gdb_banner(image_src ) VALUES ('images/{$file['name'

不用数据库来实现用户的简单的下载,代码如下,但是却不能下载,请高手找下原因,文件路劲什么的没问题。
