<?php
/**
* TestGuest Version1.0
* ================================================
* Copy 2010-2012 yc60
* Web: http://www.yc60.com
* ================================================
* Author: Lee
* Date: 2010-8-13
*/
session_start();
$_rnd_code = 4;
for ($i=0;$i<$_rnd_code;$i++) {
$_nmsg .= dechex(mt_rand(0,15));
}
$_SESSION['code'] = $_nmsg;
$_width = 75;
$_height = 25;
$_img = imagecreatetruecolor($_width,$_height);
$_white = imagecolorallocate($_img,255,255,255);
imagefill($_img,0,0,$_white);
$_flag = false;
if ($_flag) {
$_black = imagecolorallocate($_img,0,0,0);
imagerectangle($_img,0,0,$_width-1,$_height-1,$_black);
}
for ($i=0;$i<6;$i++) {
$_rnd_color = imagecolorallocate($_img,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255));
imageline($_img,mt_rand(0,$_width),mt_rand(0,$_height),mt_rand(0,$_width),mt_rand(0,$_height),$_rnd_color);
}
for ($i=0;$i<100;$i++) {
$_rnd_color = imagecolorallocate($_img,mt_rand(200,255),mt_rand(200,255),mt_rand(200,255));
imagestring($_img,1,mt_rand(1,$_width),mt_rand(1,$_height),'*',$_rnd_color);
}
for ($i=0;$i<strlen($_SESSION['code']);$i++) {
$_rnd_color = imagecolorallocate($_img,mt_rand(0,100),mt_rand(0,150),mt_rand(0,200));
imagestring($_img,5,$i*$_width/$_rnd_code+mt_rand(1,10),mt_rand(1,$_height/2),$_SESSION['code'][$i],$_rnd_color);
}
header('Content-Type: image/png');
imagepng($_img);
imagedestroy($_img);
?>我这显示不了验证码,哪里错了新手求指教

解决方案 »

  1.   

    将这行 header('Content-Type: image/png'); 注释掉看报什么错了。
      

  2.   

    Notice: Undefined variable: _nmsg in ...$_nmsg = ''; //加上这句
    for ($i=0;$i<$_rnd_code;$i++) {
    $_nmsg .= dechex(mt_rand(0,15));
    }
      

  3.   


    Fatal error: Call to undefined function imagecreatetruecolor() in D:\wamp\www\TestGuest0.9\code.php on line 29
      
    这个报错
      

  4.   

    $_img = imagecreatetruecolor($_width,$_height);说是这里的错误
      

  5.   

    那你根本就没有加载 php_gd 扩展
      

  6.   

    这个错是没找到imagecreatetruecolor()这个方法,你检查一下你的php扩展的php_gd2开启没?
      

  7.   

    没开  刚在百度查的 我都不知道这个,有学点知识
    这个错是没找到imagecreatetruecolor()这个方法,你检查一下你的php扩展的php_gd2开启没?