php防止网站被刷新的方法汇总


Posted in PHP onDecember 01, 2014

本文实例讲述了php防止网站被刷新的方法。分享给大家供大家参考。具体方法如下:

对于像采用WP建设的站来说,频繁的刷新会导致数据库吃紧。下面附上一段代码,防止频繁的刷新造成的死机情况。

方法一,代码如下:

<?php       

session_start();       

$k=$_GET['k'];       

$t=$_GET['t'];       

$allowTime = 1800;//防刷新时间       

$ip = get_client_ip();       

$allowT = md5($ip.$k.$t);       

if(!isset($_SESSION[$allowT]))       

{       

    $refresh = true;       

    $_SESSION[$allowT] = time();       

}elseif(time() - $_SESSION[$allowT]>$allowTime){       

    $refresh = true;       

    $_SESSION[$allowT] = time();       

}else{       

    $refresh = false;       

}       

?>

方法二,代码如下:
<?php 

session_start(); 

$allow_sep = "2"; 

if (isset($_SESSION["post_sep"])) 

{ 

if (time() - $_SESSION["post_sep"] < $allow_sep) 

{ 

exit("请不要频繁刷新,休息2秒再刷新吧"); 

} 

else 

{ 

$_SESSION["post_sep"] = time(); 

} 

} 

else 

{ 

$_SESSION["post_sep"] = time(); 

} 

?>

方法三,代码如下:
<?php 

session_start(); 

if(!emptyempty($_POST[name])){ 

   $data = $_POST[name]; 

   $tag = $_POST[tag]; 

   if($_SESSION[status]==$tag){ 

     echo $data; 

   }else{ 

     echo "不允许刷新!"; 

   } 

} 

$v = mt_rand(1,10000); 

?> 

<form method="post" name="magic" action="f5.php"><input type="hidden" 

name="tag" value="<?=$v?>"><input type=text name="name"><input type="submit" value="submit"> 

</form>

<?php 

echo $v; 

$_SESSION[status] = $v; 

?>

注意:代码有了,不过要应用到WordPress还要一些其他操作.

因为上面的代码是基于 session的验证,假设你在2秒内刷新了页面,那么他会执行exit() 函数输出一条消息,并退出当前脚本,于是就不会加载下面的内容,所以这段代码最好放在header中,先让代码执行,再加载其他的东西.

如果把代码放在了footer里,结果整个页面都加载了只在最后一行输出了"请不要频繁刷新",放在header中,效果比较好,想看效果的话按两下F5 吧.

当然最好的是采用的是新建一个php文件,然后在header调用.

这样做的好处有两个:

一个是修改功能代码方便,不用每次都打开header文件,也不怕误改了其他地方的代码,二是一旦出错,可以快速修改并检查,甚至可以直接删除文件,代码如下:

<?php  

include('includes/forbiddenCC.php');  

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

这里要注意下,必须调用在所有页面的最前面.

希望本文所述对大家的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP新手上路(九)
Oct 09 PHP
过滤掉PHP数组中的重复值的实现代码
Jul 17 PHP
PHP函数spl_autoload_register()用法和__autoload()介绍
Feb 04 PHP
浅谈web上存漏洞及原理分析、防范方法(文件名检测漏洞)
Jun 29 PHP
Yii操作数据库的3种方法
Mar 11 PHP
php检测文件编码的方法示例
Apr 25 PHP
mac下Apache + MySql + PHP搭建网站开发环境
Jun 02 PHP
简单说说PHP优化那些事(经验分享)
Nov 27 PHP
WordPress中&quot;无法将上传的文件移动至&quot;错误的解决方法
Jul 01 PHP
Laravel中Trait的用法实例详解
Mar 16 PHP
SAE实时日志接口SDK用法示例
Oct 09 PHP
PHP实现的折半查找算法示例
Dec 19 PHP
phpstorm编辑器乱码问题解决
Dec 01 #PHP
php获取文章上一页与下一页的方法
Dec 01 #PHP
CI框架给视图添加动态数据
Dec 01 #PHP
php强制运行广告的方法
Dec 01 #PHP
PHP过滤黑名单关键字的方法
Dec 01 #PHP
php中print(),print_r(),echo()的区别详解
Dec 01 #PHP
PHP中__FILE__、dirname与basename用法实例分析
Dec 01 #PHP
You might like
浅析echo(),print(),print_r(),return之间的区别
2013/11/27 PHP
Laravel 实现密码重置功能
2018/02/23 PHP
PHP convert_cyr_string()函数讲解
2019/02/13 PHP
javascript 一个自定义长度的文本自动换行的函数
2007/08/19 Javascript
仿校内登陆框,精美,给那些很厉害但是没有设计天才的程序员
2008/11/24 Javascript
div层的移动及性能优化
2010/11/16 Javascript
最佳6款用于移动网站开发的jQuery 图片滑块插件小结
2012/07/20 Javascript
解决IE6的PNG透明JS插件使用介绍
2013/04/17 Javascript
JavaScript用JQuery呼叫Server端方法示例代码
2014/09/03 Javascript
javascript性能优化之事件委托实例详解
2015/12/12 Javascript
confirm确认对话框的实现方法总结
2016/06/17 Javascript
JavaScript中Promise的使用详解
2017/02/26 Javascript
jQuery插件zTree实现清空选中第一个节点所有子节点的方法
2017/03/08 Javascript
JQuery EasyUI的一些常用组件
2017/07/12 jQuery
基于复选框demo(分享)
2017/09/27 Javascript
vue+webpack 打包文件 404 页面空白的解决方法
2018/02/28 Javascript
Nuxt配合Node在实际生产中的应用详解
2018/08/07 Javascript
jquery获取img的src值实例介绍
2019/01/16 jQuery
swiper4实现移动端导航切换
2020/10/16 Javascript
详解 javascript对象创建模式
2020/10/30 Javascript
原生JS实现京东查看商品点击放大
2020/12/21 Javascript
[04:03]2014DOTA2西雅图国际邀请赛 LGD战队巡礼
2014/07/07 DOTA
[01:42]辉夜杯战队访谈宣传片—FANTUAN
2015/12/25 DOTA
python实现的简单窗口倒计时界面实例
2015/05/05 Python
Python实现删除文件中含“指定内容”的行示例
2017/06/09 Python
python中单例常用的几种实现方法总结
2018/10/13 Python
Python3 实现串口两进程同时读写
2019/06/12 Python
Python OrderedDict的使用案例解析
2019/10/25 Python
python爬虫模块URL管理器模块用法解析
2020/02/03 Python
Python如何实现爬取B站视频
2020/05/20 Python
详解如何在登录过期后跳出Ifram框架
2020/09/10 HTML / CSS
HQhair美国/加拿大:英国化妆品、美容及美发产品商城
2019/04/15 全球购物
巴西补充剂和维生素购物网站:Natue
2019/06/17 全球购物
上班玩手机检讨书
2014/02/17 职场文书
班级光棍节联谊会策划书
2014/10/10 职场文书
国庆节主题班会
2015/08/15 职场文书