PHP防止刷屏
时间:2021-07-01 10:21:17
帮助过:20人阅读
在进行数据处理和保存前,首先判断浏览器的获得页面方式。使用$_SERVER["REQUEST_METHOD"]变量来获得浏览器的获得页面方式。检查其是否为”POST”。在脚本中使用session来记录用户是否通过正常途径(即填写提交内容的页面)来提交数据。或使用$_SERVER["HTTP_REFERER"]来检测,但不推荐这样做。因为部分浏览器没有设置REFERER,有部分防火墙也会屏蔽REFERER。另外,我们也要对提交内容检查,看数据库中是否有重复内容。以留言本为例,使用Session进行判定:填写浏览内容的页面中,我们在最前端加上:$_SESSION["allowgbookpost"]=time(); //登记填写时的时间 在接受留言数据并保存的页面中我们在进行数据处理前我们也用Session进行以下处理:if(strtoupper($_SERVER["REQUEST_METHOD"])!=”POST”){ die("错误:请勿在外部提交。"); } //检查页面获得方法是否为POSTif(!isset($_SESSION["allowgbookpost"]) or(time()-$_SESSION["allowgbookpost"] < 10)){ die("错误:请勿在外部提交。"); } //检查留言填写时的时间if(isset($_SESSION["gbookposttime"]) and(time()-$_SESSION["gbookposttime"] < 120)){ die("错误:两次提交留言的间隔不得少于 2 分钟。"); } //检查留言间隔unset($_SESSION["allowgbookpost"]); //注销allowgbookpost变量以防止一次进入填写页面多次进行提交$_SESSION["gbookposttime"]=time(); //登记发送留言的时间,防止灌水或恶意攻击...数据处理及保存...
以上就介绍了PHP防止刷屏,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。