字符串验证码图片输出是乱码,求教

Ninjajs 2015-10-30 04:33:21
这段代码是PHP100教程里看的,我敲出来在页面上显示是乱码

<?php

for($i=0;$i<4;$i++){
$rand.=dechex( rand(1,15));
}
$im = imagecreatetruecolor(100,30);//宽,高
//设置颜色
$bg= imagecolorallocate($im,0,0,0);//第一次使用调色板时候的背景颜色
$te= imagecolorallocate($im,255,255,255);
//把字符串写在图像左上角
imagestring($im,5,0,0,$rand,$te);
//输出图像
header("Content-type: image/jpeg");
imagejpeg($im);

?>
...全文
307 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
码无边 2015-11-02
  • 打赏
  • 举报
回复
Notice: Undefined variable: rand in H:\wamp\www\web\test.php on line <i>4</i></th></tr> 变量未定义 声明下变量即可。
码无边 2015-11-02
  • 打赏
  • 举报
回复
Notice: Undefined variable: rand in H:\wamp\www\web\test.php on line <i>4</i></th></tr> 变量未定义 声明下变量即可。
码无边 2015-11-02
  • 打赏
  • 举报
回复
Notice: Undefined variable: rand in H:\wamp\www\web\test.php on line <i>4</i></th></tr> 变量未定义 声明下变量即可。
傲雪星枫 2015-11-01
  • 打赏
  • 举报
回复
出现这个问题是因为$rand在使用前没有定义。导致$rand.=dechex( rand(1,15));的$rand为空。 在代码最前加一句:$rand=''; 即可解决问题。

<?php 
$rand = '';
for($i=0;$i<4;$i++){
$rand.=dechex( rand(1,15));
}
$im = imagecreatetruecolor(100,30);//宽,高
//设置颜色
$bg= imagecolorallocate($im,0,0,0);//第一次使用调色板时候的背景颜色
$te= imagecolorallocate($im,255,255,255);
//把字符串写在图像左上角
imagestring($im,5,0,0,$rand,$te);
//输出图像
header("Content-type: image/jpeg");
imagejpeg($im);

?>
cwk44 2015-11-01
  • 打赏
  • 举报
回复
notice错误开启了,首先输出了notice错误:未初始化变量 报错文字和图片内容(那堆乱码)混合导致图片不再是图片,所以那样显示 解决方案: 1.关闭notice报错(很多开发者是关闭的) 2.初始化变量
xuzuning 2015-10-30
  • 打赏
  • 举报
回复
Notice: Undefined variable: rand in H:\wamp\www\web\test.php on line 4 实用类未定义变量 $rand 在循环前给 $rand 赋初值: $rand=""; 原因是你的 error_reporting = E_ALL
Ninjajs 2015-10-30
  • 打赏
  • 举报
回复
引用 2 楼 qq_30333225 的回复:
[quote=引用 楼主 js8872 的回复:] 这段代码是PHP100教程里看的,我敲出来在页面上显示是乱码 <?php for($i=0;$i<4;$i++){ $rand.=dechex( rand(1,15)); } $im = imagecreatetruecolor(100,30);//宽,高 //设置颜色 $bg= imagecolorallocate($im,0,0,0);//第一次使用调色板时候的背景颜色 $te= imagecolorallocate($im,255,255,255); //把字符串写在图像左上角 imagestring($im,5,0,0,$rand,$te); //输出图像 header("Content-type: image/jpeg"); imagejpeg($im); ?>
哦,奇了怪了,在我这边没有乱码啊 你在这for($i=0;$i<4;$i++){ $rand.=dechex( rand(1,15)); }之前定义下$rand="";就好了。[/quote] 定义一下可以了,非常感谢2L,请问这是什么原因啊?我被这个东西搞了好久,一直以为是自己哪里写错了。
Charles杨 2015-10-30
  • 打赏
  • 举报
回复
引用 楼主 js8872 的回复:
这段代码是PHP100教程里看的,我敲出来在页面上显示是乱码

<?php

for($i=0;$i<4;$i++){
$rand.=dechex( rand(1,15));
}
$im = imagecreatetruecolor(100,30);//宽,高
//设置颜色
$bg= imagecolorallocate($im,0,0,0);//第一次使用调色板时候的背景颜色
$te= imagecolorallocate($im,255,255,255);
//把字符串写在图像左上角
imagestring($im,5,0,0,$rand,$te);
//输出图像
header("Content-type: image/jpeg");
imagejpeg($im);

?>


哦,奇了怪了,在我这边没有乱码啊
你在这for($i=0;$i<4;$i++){
$rand.=dechex( rand(1,15));
}之前定义下$rand="";就好了。
Ninjajs 2015-10-30
  • 打赏
  • 举报
回复
页面显示: <br /> <font size='1'><table class='xdebug-error xe-notice' dir='ltr' border='1' cellspacing='0' cellpadding='1'> <tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Notice: Undefined variable: rand in H:\wamp\www\web\test.php on line <i>4</i></th></tr> <tr><th align='left' bgcolor='#e9b96e' colspan='5'>Call Stack</th></tr> <tr><th align='center' bgcolor='#eeeeec'>#</th><th align='left' bgcolor='#eeeeec'>Time</th><th align='left' bgcolor='#eeeeec'>Memory</th><th align='left' bgcolor='#eeeeec'>Function</th><th align='left' bgcolor='#eeeeec'>Location</th></tr> <tr><td bgcolor='#eeeeec' align='center'>1</td><td bgcolor='#eeeeec' align='center'>0.0000</td><td bgcolor='#eeeeec' align='right'>242136</td><td bgcolor='#eeeeec'>{main}( )</td><td title='H:\wamp\www\web\test.php' bgcolor='#eeeeec'>..\test.php<b>:</b>0</td></tr> </table></font> �����JFIF���������>CREATOR: gd-jpeg v1.0 (using IJG JPEG v90), default quality ���C� $.' ",#(7),01444'9=82<.342���C 2!!22222222222222222222222222222222222222222222222222�����d"�������������� �������}�!1AQa"q2���#B��R��$3br� %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz����������������������������������������������������������������������������������� ������w�!1AQaq"2�B���� #3R�br� $4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�����������������������������������������������������������������������������?�����3����k}b�{m3P������[��Y�,e����N���y�7�>"���o�t��2�߳��4����ʍ�<�G]����b��;�?���{jvڨ��[/--�3 �!1y��6��B���Abw��Z���}:��í���7�<Qڙ-4{;�,Qcd����?ys��d����;=��������^ݬB�I�=�y�Ix�I#6�q�, ��S��k�]oI���� !����Dp@�� �`��;Jn���gi5��x��։�j��Y��F�q+�Al���D�ńDI�<�p �������"����R:Y�MF��+D���d�˴�\� s���&���%��o��$I<e]dIca�tu%]O��8#�5�Z��8�E�>�֫��`y$���W!=s3����(���(���(���(���(���(���(���(���(���(���(���

21,893

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧