您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

php防止刷新与重复提交实例代码

2024/2/28 1:22:26发布18次查看
防止直接访问php页面,只能引用!这样就不能直接访问b页面了。也可以在a加cookie,b判断cookie后用完删掉cookie防止刷新模块 所以就考虑增加一个参数来防止这类情况的发生,cookie和session可供选择,不过 cookie是客户端的,如果人家禁用cookie的话,照样可以恶意刷新点击数。还是用session的好,ip+url参数的md5值做 session名,我想大家也不好伪造了吧. 实现原理 设置 max_reloadtime =100; //设置页面刷新最长间隔时间用户第一次打开页面 记录当前的时间保存在 session_start用户第二次打开页面(判断 session_start是否存在) 用当前时间和 session_start 相减 得到差值 time_passed当 time_passed
例子:
$allowtime) { $refresh = true; $_session[$allowt] = time(); } else { $refresh = false; } ?>
复制代码
例2,php防重复提交。首先,可以定义一个session变量用来保存一个表单的提交序列号。这里定义为“$userlastaction”。
然后,在表单里加入一个 hidden变量,把值设为$userlastaction+1: 最后,在处理提交之前判断表单是否已被提交过:
if($lastaction>$userlastaction and inputisvalid(…)){ $userlastaction++; // 序列号加1 // 处理表单数据 }
复制代码
提交页面:
$_session['code']=mt_rand(1,1000);//生成1到1000之间的随机器数 ?>
复制代码
被提交页面:
if($_session['code']!=$_request['scode']){
echo 请不要重复提交; exit; } $_session['code']=0 name:
email:
beer:
warthog guinness stuttgarter schwabenbr
复制代码
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product