php防刷新

一般都是以下代码:

 

PHP代码
  1. <?php  
  2. session_start();  
  3. //防刷新时间间隔  
  4. $time_space = "10000";  
  5. if (isset($_SESSION["anti_time"])) {  
  6.     if (time() – $_SESSION["anti_time"] < $time_space) {  
  7.         exit("请不要反复刷新");  
  8.     } else {  
  9.         $_SESSION["anti_time"] = time();  
  10.     }  
  11. else {  
  12.     $_SESSION["anti_time"] = time();  
  13. }  
  14. ?>  

 

上面代码只能防止单个页面刷新,如果整站都用同样的代码来防止用户刷新则会导致所有的页面都不能访问,解决如下:

 

PHP代码
  1. <?php  
  2. session_start();  
  3. //防刷新时间间隔  
  4. $time_space = "30000";  
  5. $file=$_SERVER[‘SCRIPT_FILENAME’];  
  6. if (isset($_SESSION["anti_time"])) {  
  7.     if ((time() – $_SESSION["anti_time"] < $time_space)&&($_SESSION[‘anti_file’]==$file)) {  
  8.         exit("请不要反复刷新");  
  9.     } else {  
  10.         $_SESSION["anti_time"] = time();  
  11.         $_SESSION[‘anti_file’]=$file;  
  12.     }   
  13. else {  
  14.     $_SESSION["anti_time"] = time();  
  15.     $_SESSION[‘anti_file’]=$file;  
  16. }   
  17. ?>   

用这个方法是逼不得已的,不知道还有没有更加有效的方面.!

 



发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>