溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

php頁面禁止刷新的方法

發(fā)布時間:2020-10-09 18:47:29 來源:億速云 閱讀:139 作者:小新 欄目:編程語言

php頁面禁止刷新的方法?這個問題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家?guī)淼膮⒖純?nèi)容,讓我們一起來看看吧!

php頁面禁止刷新的方法:首先直接退出代理IP;然后設(shè)置刷新的時間段和次數(shù),防止快速刷新;接著設(shè)置監(jiān)控變量,并處理監(jiān)控結(jié)果;最后跳轉(zhuǎn)至攻擊者服務(wù)器地址即可。

php頁面禁止刷新的方法:

方法1:

一小段代碼實現(xiàn)頁面防刷新,可能沒有太大的用途,只是一個思路,供參考。

原理:

在頁面訪問時判斷是否有session,沒有的話直接創(chuàng)建一個session,并設(shè)置為當(dāng)前時間,程序正常向下執(zhí)行;

如果有session,判斷 session里的時間和當(dāng)前時間的時間差,如果間隔小于規(guī)定的時間,如本例的5分鐘,則中斷程序執(zhí)行并提示錯誤信息;

如果session里的時間大于當(dāng) 前的時間,則刷新session中的時間,頁面正常執(zhí)行。

代碼如下:

session_start();   //啟動session
$timeOutLimit = "300";  //設(shè)置時間間斷五分鐘
if (isset($_SESSION["timeout"])) {  //判斷是否有session
    if (time() - $_SESSION["timeout"] < $timeOutLimit) {   
    //如果有session 且session時間間隔小于5分鐘 直接die()退出并輸出提示信息。
       die("請不要多次刷新當(dāng)前頁面");
    } else {    //如果沒有超時,將session時間重置為當(dāng)前時間。
       $_SESSION["timeout"] = time();
    }
} else {
    $_SESSION["timeout"] = time(); 
    //如果沒有timeout的session,則創(chuàng)建session為當(dāng)前時間,便于下次訪問頁面時判斷
}
//其它頁面代碼.....

方法2:

//代理IP直接退出
empty($_SERVER['HTTP_VIA']) or exit('Access Denied');
//防止快速刷新
session_start();
$seconds = '3'; //時間段[秒]
$refresh = '5'; //刷新次數(shù)
//設(shè)置監(jiān)控變量
$cur_time = time();
if(isset($_SESSION['last_time'])){
    $_SESSION['refresh_times'] += 1;
}else{
    $_SESSION['refresh_times'] = 1;
    $_SESSION['last_time']     = $cur_time;
}
//處理監(jiān)控結(jié)果
if($cur_time - $_SESSION['last_time'] < $seconds){
    if($_SESSION['refresh_times'] >= $refresh){
        //跳轉(zhuǎn)至攻擊者服務(wù)器地址
        header(sprintf('Location:%s', 'http://127.0.0.1'));
        exit('Access Denied');
    }
}else{
    $_SESSION['refresh_times'] = 0;
    $_SESSION['last_time'] = $cur_time;
}

感謝各位的閱讀!看完上述內(nèi)容,你們對php頁面禁止刷新的方法大概了解了嗎?希望文章內(nèi)容對大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

php
AI