php 防止页面刷新重复提交
来源:互联网 发布:取名字的软件 编辑:程序博客网 时间:2024/05/13 12:45
一.使用session防止重复提交
其实跟验证码一样的原理,主要是生成session和input隐藏域,
这边我的代码是在一个页面中处理。
<?phpheader('Content-type:text/html; charset=utf-8'); //页面编码session_start(); //开启sessionif(isset($_POST['submit'])){ //判断是否是表单提交if($_SESSION['code'] != $_POST['code']){ //令牌判断die('重复提交');}$_SESSION['code'] = '';//-------------这边用于处理代码-die('跳转');}else{ //不是表单提交就生成code代码$res = md5(uniqid( rand(),false));$_SESSION['code'] = $res;}?><!DOCTYPE html><html><head><meta charset="utf-8" /><title>重复提交</title></head><body><form method="post" action="submit.php"><input type="text" name="user" /><input type="hidden" name="code" value="<?php echo $_SESSION['code']; ?>" /><input type="submit" name="submit" /></form></body></html>
2.下面代码是网上的
<?php /* * PHP简单利用token防止表单重复提交 * 此处理方法纯粹是为了给初学者参考 */ header('Content-type:text/html; charset=utf-8');session_start(); function set_token() { $_SESSION['token'] = md5(microtime(true)); } function valid_token() { $return = $_REQUEST['token'] === $_SESSION['token'] ? true : false; set_token(); return $return; } //如果token为空则生成一个token if(!isset($_SESSION['token']) || $_SESSION['token']=='') { set_token(); } if(isset($_POST['test'])){ if(!valid_token()){ echo "token error"; }else{ echo '成功提交,Value:'.$_POST['test']; } } ?> <form method="post" action=""> <input type="hidden" name="token" value="<?php echo $_SESSION['token']?>"> <input type="text" name="test" value="Default"> <input type="submit" value="提交" /> </form>
0 0
- php 防止页面刷新重复提交
- PHP防止页面刷新重复提交数据
- php防止刷新页面重复提交
- 防止页面刷新重复提交几招
- 防止页面刷新重复提交的方法
- 防止页面刷新重复提交的方法
- 防止页面的重复提交,刷新
- .net 防止页面刷新重复提交
- 防止刷新页面造成表单重复提交
- jsp页面防止刷新重复提交解决方案
- java防止页面刷新重复提交
- jsp页面防止刷新重复提交解决方案 .
- jsp页面防止刷新重复提交解决方案
- 防止页面的重复提交,刷新
- 防止页面的重复提交,刷新
- .net 防止页面刷新重复提交
- jsp页面防止刷新重复提交解决方案
- 防止刷新重复提交
- Oracle操作系统身份验证
- android showDividers属性和showAsAction属性
- 有3个数a,b,c,要求按大小顺序将它们输出
- java预编译SQL和参数替换 更新····PSF
- 远程服务器断开连接,为什么总自动关闭打开的程序(程序自动关闭)
- php 防止页面刷新重复提交
- transform的使用(动画)
- linux下使用jfreechart
- 2003与2007excel数据导入小(5M)中(10M)大(80M以上)
- 转载一篇开源http服务器(C语言)
- ShopNum1为独立网店解决分销的后顾之忧
- UVa #714 Copying Books (例题8-10)
- derby数据库基础
- 32位和64位系统区别及int字节数