天天看點

php session 不同步,php中session驗證碼不同步怎麼辦?

php中session驗證碼不同步的解決辦法:引入【yzm.php】頁面,登入頁面設定一個表單送出路徑即可,代碼為【session_start();echo $_SESSION['yzm'];】。

php session 不同步,php中session驗證碼不同步怎麼辦?

php中session驗證碼不同步的解決辦法:

驗證碼生成頁面:for($i=0;$i<4;$i++){

$y = mt_rand(3,10);

$size = mt_rand(5,8);

$ran = dechex(rand(0,15));

imagestring($im,$size,(2+$i*15),$y,$ran,imagecolorallocate($im,rand(0,100),rand(0,150),rand(0,200)));

$yzm.=$ran;

}

$_SESSION['yzm']=$yzm;

登入頁面:

\

紅色代碼為了檢測是否能夠正确獲得圖檔中的驗證碼,但是在測試中,我發現我多次一舉了。

因為每次重新整理這個頁面之後顯示的都是上一次的内容。最後網上查閱了一番發現,session變量,設定之後是需要重新整理頁面才會生效的。

我們在登入頁面是首次引入yzm.php頁面。沒有重新整理頁面。是以目前用$_SESSION是擷取不到的,當我們重新整理這個頁面的時候,擷取到的是上一次的session值,

為了測試猜想是否正确。登入頁面設定一個表單送出路徑。連結的頁面為:session_start();

echo $_SESSION['yzm'];

結果符合。