Heim  >  Artikel  >  Backend-Entwicklung  >  session保存验证码的有关问题

session保存验证码的有关问题

WBOY
WBOYOriginal
2016-06-13 10:03:09790Durchsuche

session保存验证码的问题
我在code页面生成验证码的原字符 保存到session中 从另一个页面调用 怎么会是空呢? 奇怪

code 的源程序

//checkNum.php 
session_start(); 
function random($len) 

$srcstr="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; 
mt_srand();//配置乱数种子 
$strs=""; 
for($i=0;$i $strs.=$srcstr[mt_rand(0,35)]; 

/* 
  2 名 称:strtoupper 
  3 功 能:字串全转为大写\r 
  4 传回值:字串 
  5 语 法:strtoupper(string str); 
  6 说 明:本函式将字串 str 全部变大写字串。\r 
  7 范 例: 
  8 strtoupper("ab2cd4efg"); 结果为AB2CD4EFG 
  9 strtoupper("ab1cde4fg"); 结果为Ab1CDE4fg 
  10  
  11 */ 
return strtoupper($strs); 

$str=random(4); //随机生成的字符串 
$width = 50; //验证码图片的宽度 
$height = 25; //验证码图片的高度 
/* 
Content-Type: xxxx/yyyy 
 Location: xxxx:yyyy/zzzz 
 Status: nnn xxxxxx 
*/ 
@header("Content-Type:image/png"); 
$_SESSION["code"] = $str; 
//echo $str; 
$im=imagecreate($width,$height); 
//背景色 
$back=imagecolorallocate($im,0xFF,0xFF,0xFF); 
//模糊点颜色 
$pix=imagecolorallocate($im,187,230,247); 
//字体色 
$font=imagecolorallocate($im,41,163,238); 
//绘模糊作用的点 
mt_srand(); 
for($i=0;$i { 
imagesetpixel($im,mt_rand(0,$width),mt_rand(0,$height),$pix); 

imagestring($im, 5, 7, 5,$str, $font); 
imagerectangle($im,0,0,$width-1,$height-1,$font); 
imagepng($im); 
imagedestroy($im); 
$_SESSION["code"] = $str; 

session_destroy(); 
?>
  

从另一个页面调用$_SESSION["code"] 居然为空? 为什么

------解决方案--------------------
session_destroy(); 
你都删除session了,另一个页面怎么会有session的内容?
------解决方案--------------------
session_destroy(); 晕,还没取就注销session()你怎么取?》

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn