authpage.php页面
<?
srand((double)microtime()*1000000); 
//验证用户输入是否和验证码一致 
if ($_POST['authinput']!=""){
   if($_POST['authinput']==$_POST['authnum']){
    echo "验证成功";
 }
      else{
         echo "验证失败";
   }
}
//生成新的四位整数验证码 
      $authnum=rand()%100000;  
    ?> 
        <form action=authpage.php method=post> 
        <table> 
                请输入验证码:<input type=text name=authinput style="width: 80px">
                 <input type=hidden name=authnum value=<?=$authnum?>> 
                <img src=authimg.php?authnum=<?=$authnum?>> 
<input type=submit  value="提交验证码">
        </table> 
        </form>
authimg.php页面
<?php 
Header("Content-type: image/PNG");
session_start();  
srand((double)microtime()*1000000); 
$im = imagecreate(62,20); 
$black = ImageColorAllocate($im, 0,0,0); 
$white = ImageColorAllocate($im, 255,255,255); 
$gray = ImageColorAllocate($im, 200,200,200); 
imagefill($im,68,30,$gray); //将四位整数验证码绘入图片 
imagestring($im, 5, 10, 3, $authnum, $gray); 
for($i=0;$i<200;$i++)   //加入干扰象素 

    $randcolor = ImageColorallocate($im,rand(0,255),rand(0,255),rand(0,255));
    imagesetpixel($im, rand()%70 , rand()%30 , $randcolor); 

ImagePNG($im); 
ImageDestroy($im); 
?>

解决方案 »

  1.   

    session_start();
    session_register("authnum");$authnum="";//这个就是操作的地方,你把这个值赋值好了,就是给session赋值了
      

  2.   

    session_start: 初始化session,需要用session的每一个页面最开始处调用。
    session_destroy: 结束 session,在需要结束session处调。
    session_name: 存取目前 session 名称。
    session_module_name: 存取目前 session 模块。
    session_save_path: 存取目前 session 路径。
    session_id: 存取目前 session id号。
    session_register: 注册新的session变量。
    session_unregister: 删除已注册session变量。
    session_is_registered: 检查session变量是否注册。
    session_decode: Session 数据解码。
    session_encode: Session 数据加密。
      

  3.   

    安全? 这个就不光是PHP的事了。