php隐藏index.php,PHP如何避免表单的重复提交?

用户投稿 81 0

关于“php隐藏表单”的问题,小编就整理了【5】个相关介绍“php隐藏表单”的解答:

PHP如何避免表单的重复提交?

1. 使用JS让按钮在点击一次后禁用(disable)。采用这种方法可以防止多次点击的发生,实现方式较简单。缺点是若客户端禁止JavaScript脚本,则失效。

2. 在提交成功后执行页面重定向(redirect)。转到提交成功信息页面。特点:避免F5重复提交,消除浏览器前进和后退按钮可导致的同样问题。

3. 表单隐藏域中存放session(表单被请求时生成的标记)。采用此方法在接收表单数据后,检查此标志值是否存在,先进行删除,然后处理数据; 若不存在,说明已提交过,忽略本次提交。

4. 数据库唯一索引约束(最有效的防止重复数据的方法)。

5. 使用验证码

PHP+JS怎么抓取别人页面的js数据?

可以应用AJAX或者就一般的跳转到另外一个页面的方法,把这个变量当作一个参数传输出去,如localtion:"xxx.php?num="+_num或构造一个表单,用表单隐藏项传递,再在另外一个页面的PHP程序中接收后处理,GET或者POST方法都行,需要注意的时在PHP里面要多传递来的参数进行验证,因为JS是客户端程序,传递的参数很容易伪造,一般都要进行范围限定,还可以判断数据来源等方法验证。

如何用命令隐藏已显示的表单对象?

首先运行表单时要给表单分配一个引用变量, 方便以后调用 public gfrm1 do form c:/abc.scx name gfrm1 隐藏表单: gfrm.hide 显示表单: gfrm1.show

php如何定义一个接收表单的数据?

 PHP中,用于接收表单数据的函数有三种:_GET['表单元素名']、_POST['表单元素名']和_REQUEST['表单元素名'],其中_GET只接收提交方式为get的表单数据,_POST只接收提交方式为post的表单数据,而_REQUEST可以同时接收两种提交方式的表单数据。

  接收时,_POST['表单元素名']必须与前面HTML页面中的表单元素名一致方能顺利接收。

PHP如何解决刷新页面表单重复提交?

最常用的方法就是利用token。即:

1、在生成页面的时候生成一个token(随机字符串),并把它同时写入表单的某个hidden中,和服务端的session中。

2、客户端提交表单到服务器时,比对表单中的token与session中的token是否一致。若不一致则认为是无效的请求。

3、不管第2步的校验是否通过,token只要使用一次后就立即作废(即:从session中销毁)。同时token也可以关联时间信息,超时后也自动作废。这样,即便客户端重复提交,也只有第一次的请求能够成功。

到此,以上就是小编对于“php隐藏表单”的问题就介绍到这了,希望介绍关于“php隐藏表单”的【5】点解答对大家有用。

抱歉,评论功能暂时关闭!