PHP生成验证码时“图像因其本身有错无法显示”的解决方法
今天使用代码进行PHP生成校验码功能的实现,发现firefox一直提示“图像.......因其本身有错无法显示”的问题,作者也提示了说“如果浏览器显示“图像XXX因其本身有错无法显示”,可尽量去掉文中空格”,但把代码中所有空格都去掉了还是不能显示检验图片。
于是深度google,大部分的解决方案也是将“<?”这句代码前的空格回车一切都删掉以防止有html输出,但这根本解决不了我的问题,后来看到有人在Header("Content-type: image/PNG");这句代码前使用ob_clean()清除输出,结果一试之下果然成功。现将原代码修改后贴到下面,以备不时之需:
确认码生成文件checkNum_session.php
<?
("Content-type: image/png"
= 1;
= 4;
= *15;
= 20;
= 6;
= "abcdefghijkmnopqrstuvwxyz";
= "023456789";
= "";
(()()*1000000);
= ImageCreate(, );
= ImageColorAllocate(, 255, 255, 255);
ImageFill(, 0, 0, );
( = ImageColorAllocate(, 0, 0, 0);
ImageRectangle(, 0, 0, -1, -1, );
(=0; <; ++ = (0, 1);
= ? : = (0, ()-1);
= (, , 1);
= ! ? 4 : +15;
= ImageColorAllocate(, (0,100), (0,100), (0,100));
ImageChar(, , , 3, , );
.= ;
['authnum_session'] =
(=0; <1; ++)
= ImageColorAllocate(, (0,255), (0,255), (0,255));
ImageArc(, (-5,), (-5,), (20,300), (20,200), 55, 44, );
(=0; <*40; ++)
= ImageColorAllocate(, (0,255), (0,255), (0,255));
ImageSetPixel(, (0,), (0,), );
php验证码 三个实例分享
php自定义大小验证码
php生成扭曲及旋转的图片验证码
php验证码(GD库生成验证码)的例子
php图片验证码的例子
php 雪花背景 验证码
<span php
?>
<html>
<head>
<title>session 图片验证实例</title>
</head>
<body><form action="" method="post"><input type="text" name="validate" value="" size=10> <img src="checkNum_session.php"><br>
<input type="submit">
</form>
<?
"上一个session:<b>".["authnum_session"]."</b><br>"=""((["validate"=["validate" "您刚才输入的是:".["validate"]."<br>状态:"(!=["authnum_session"
"<font color=red>输入有误</font>" "<font color=green>通过验证</font>"
?></span>
PHP之友评论