附加码为什么不会显示

freescy2002 2004-04-06 04:43:53
我按照下面的提示,不知为什么不会显示附加码,高手看一下,运行authpage.php 发现是图片的小叉叉啊。

<?
/*
* Filename: authpage.php
* Date: 2003-7-13
* Version: 1.3.2
*/
session_start();
//验证用户输入是否和验证码一致
if (isset($_POST['authinput']))
{
if ($_SESSION['auth'] == $_POST['authinput'])
{
echo "验证成功!";
exit;
} else echo "验证失败!";
}
?>
<form action=authpage.php method=post>
<table><tr><td>请输入验证码:<input type=text name=authinput style="width: 80px"><img src=authimg.php></td></tr>
<tr><td><input type=submit name="验证" value="提交验证码">
</td></tr>
</table>
</form>
===============================================================================
<?php
/*
* Filename: authimg.php
* Date: 2003-7-13
* Version: 1.3.2
*/

session_start();
srand((double)microtime()*1000000);

while(($authnum=rand()%10000)<1000);//生成四位随机整数验证码
$_SESSION['auth']=$authnum;

//生成验证码图片
Header("Content-type: image/PNG");
$im = imagecreate(50,20);
$black = ImageColorAllocate($im, 200,10,0);
$white = ImageColorAllocate($im, 255,255,255);
$gray = ImageColorAllocate($im, 230,230,230);
imagefill($im,68,30,$gray);

//将四位整数验证码绘入图片
//位置交错
for ($i = 0; $i < strlen($authnum); $i++) {
if ($i % 2 == 0) $top = 1;
else $top = 5;
imagestring($im, 5, 10*$i+6, $top, substr($authnum,$i,1), $black);
}

for ($i = 0; $i < 150;$i++) //加入干扰象素
{
imagesetpixel($im, rand()%70 , rand()%30 , $black);
}

ImagePNG($im);
ImageDestroy($im);

?>
...全文
5 点赞 收藏 7
写回复
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
freescy2002 2004-04-07
各位老大,小弟找不到gd配置的地方啊,xxxgd2这个没有啊,郁闷啊。
回复
freescy2002 2004-04-07
好的,我知道了,可能是服务器没有设置好,打开那个文件要让我下载了,多谢大家的提醒。
回复
freescy2002 2004-04-07
ok了,各位老大,结分。
回复
wchun 2004-04-06
搂主使用的也是那个什么附加码是实现方法把?
主要是因为你的GD库没有打开而已。
你把php.ini里面的 xxxgd2前面的注释去掉就ok了
回复
xuzuning 2004-04-06
单独执行authimg.php 看结果
回复
sdliubo 2004-04-06
你的服务器上配置GD库了吗?

没装的话没有图片处理功能的
回复
xuzuning 2004-04-06
程序无误
回复
发动态
发帖子
基础编程
创建于2007-09-28

2.1w+

社区成员

从PHP安装配置,PHP入门,PHP基础到PHP应用
申请成为版主
社区公告
暂无公告