Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php中session验证码不同步怎么办?

php中session验证码不同步怎么办?

coldplay.xixi
coldplay.xixiasal
2020-07-11 14:15:212494semak imbas

php中session验证码不同步的解决办法:引入【yzm.php】页面,登录页面设置一个表单提交路径即可,代码为【session_start();echo $_SESSION['yzm'];】。

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[&#39;yzm&#39;]=$yzm;

登录页面:

\7d977604a2d99eb1d0e78205c8dfda0e

红色代码为了检测是否能够正确获得图片中的验证码,但是在测试中,我发现我多次一举了。

因为每次刷新这个页面之后显示的都是上一次的内容。最后网上查阅了一番发现,session变量,设置之后是需要刷新页面才会生效的。

我们在登录页面是首次引入yzm.php页面。没有刷新页面。所以当前用$_SESSION是获取不到的,当我们刷新这个页面的时候,获取到的是上一次的session值,

为了测试猜想是否正确。登录页面设置一个表单提交路径。链接的页面为:

session_start();
 echo $_SESSION[&#39;yzm&#39;];

结果符合。

相关学习推荐:PHP编程从入门到精通

Atas ialah kandungan terperinci php中session验证码不同步怎么办?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:apache无法加载php怎么办?Artikel seterusnya:php如何公历转农历?

Artikel berkaitan

Lihat lagi