php验证码代码问题

来源:百度知道 编辑:UC知道 时间:2024/09/23 11:00:55
代码如下:
?
$authnum = '';
$str = '0123456789';
$l = strlen($str);
for($i=1;$i<=4;$i++)
{
$num=rand(0,$l-1);
$authnum.= $str[$num];
}
setcookie ("authnum",$authnum);
//生成验证码图片
Header("Content-type: image/PNG");
srand((double)microtime()*1000000);
while(($Img=rand()%10000)<1000);
$im = imagecreate(40,18);
$green= ImageColorAllocate($im, 0,127,0);
$white = ImageColorAllocate($im, 255,255,100);
$bgcolor = ImageColorAllocate($im, 255,255,255);
imagefill($im,30,15,$bgcolor);
//将四位整数验证码绘入图片
imagestring($im, 5, 2, 2, $authnum, $black);
//for($i=0;$i<50;$i++) //加入干扰象素
//{
//imagesetpixel($im, rand()%70 , rand()%30 , $white);
//}
ImagePNG($im);
ImageDestroy($im);
?>

本人属于未出蛋壳的菜鸟级别,采用别人的验证码,本地测试总是无法显示时什么问题?
是代码问题还是其他问题?
有高玩在吗?
需要提供什么你说,本人不怎么懂php
貌似不行啊
img文件夹下

把第一行的?换为:
<?php

不需要PNG文档。

需要字体文件的,将$font所指的字体文件放到此php文件同一目录
给个简单代码给你参考:
<?
header("Content-type: image/gif");
srand((double)microtime()*1000000);
$im = imagecreate(60,30);
$gray = imagecolorallocate($im,128,128,128);
$white = imagecolorallocate($im,255,255,255);
$blue = imagecolorallocate($im,0,0,255);
imagefill($im,60,30,$gray);
$font = './arial.ttf';
$check = rand(1000,9999);
imagettftext($im,16,5,10,20,$blue,$font,$check);
for($i= 0;$i<100;$i++)
{
imagesetpixel($im,rand()%70,rand()%30,$white);
}
imagegif($im);
imagedestroy($im);
?>