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

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

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Freigeben: 2016-06-13 11:55:14
Original
1097 Leute haben es durchsucht

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

我在尝试编写一个验证码的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 />
Nach dem Login kopieren

------解决方案--------------------
自己检查一下,常量的定义和使用不一致
------解决方案--------------------
已经提示的很明显 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 />
Nach dem Login kopieren


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

Verwandte Etiketten:
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage