Heim >Backend-Entwicklung >PHP-Tutorial >创建验证码,突然出现大量异常,麻烦帮忙看看,多谢

创建验证码,突然出现大量异常,麻烦帮忙看看,多谢

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-13 11:55:141099Durchsuche

创建验证码,突然出现大量错误,麻烦帮忙看看,谢谢

我在尝试编写一个验证码的php脚本,先开始提示image函数不可用,于是我就添加了php5-gd
安装完成后,发现还是提士找不到函数
于是我就使用了sudo /etc/init.d/apache2 focus-reload
然后 提示函数问题了,却显示大量警告信息
我查看了修改 php.ini文件  error.report =E_ALL & ~E_NOTICE
重启服务器但是还是如此、
验证码的生成代码如下

<br /><?php<br />	session_start();<br />	//set some important identfy constants<br />	define('IDENTFY_NUM',5);<br />	define('IDENTFY_WIDTH',75);<br />	define('IDENTFY_HEIGT',25);<br />	//create the random pass-phrase<br />	$pass_phrase="";<br />	for($i=0;$i<IDENTFY_NUM;$i++){<br />		$pass_phrase.=chr(rand(97,122));<br />	<br />	}<br />	$_SESSION['pass_phrase']=sha1($pass_phrase);<br />	$img=imagecreatetruecolor(IDENTFY_WIDTH,IDENTFY_HEIGHT);<br />	$bg_color=imagecolorallocate($img,255,255,255);<br />	$text_color=imagecolorallocate($img,0,0,0);<br />	$graphic_color=imagecolorallocate($img,64,64,64);<br />	<br />	imagefilledrectangle($img,0,0,IDENTFY_WIDTH,IDENTFY_HEIGHT,$bg_color);<br />	<br />	//Draw random lines<br />	for($i=0;$i<5;$i++){<br />		imageline($img,0,rand()%IDENTFY_HEIGHT,IDENTFY_WIDTH,rand()%INDENTFY_HEIGHT,$graphic_color);<br />	}<br />	for($i=0;$i<50;$i++){<br />		imagesetpixel($img,rand()%IDENTFY_WIDTH,rand()%IDENTFY_HEIGHT,$graphic_color);<br /><br />	}<br />	//Draw the string<br />	imagettftext($img,18,0,5,IDENTFY-5,$text_color,"Courier New Bold.ttf",$pass_phrase);<br />	header("Content-type:image/png");<br />	imagepng($img);<br />	imagedestroy($img);	<br />?>	<br /><br />

------解决方案--------------------
自己检查一下,常量的定义和使用不一致
------解决方案--------------------
已经提示的很明显 23行 你的除法里面分母不能是零  由于这里有错误 倒置$img变量里有杂项值 使得27行的imagesetpixel函数没有一个可用的图片资源
<br />for($i=0;$i<5;$i++){<br />        imageline($img,0,<span   style="max-width:90%">rand()%IDENTFY_HEIGHT</span>,IDENTFY_WIDTH,<span style="color: #FF0000;">rand()%INDENTFY_HEIGHT</span>,$graphic_color);<br />    }<br />


<br /> for($i=0;$i<50;$i++){<br />        imagesetpixel($img,rand()%IDENTFY_WIDTH,rand()%IDENTFY_HEIGHT,$graphic_color);<br /> <br />    }<br />

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn