PHP验证码无法显示的原因及解决办法


Posted in PHP onAugust 11, 2017

PHP验证码无法显示的原因及解决办法

一、如果是utf-8,就有可能是BOM没有清除

二、在Header("Content-type: image/PNG"); 之前有输出

三、第一行PHP隐藏了代码,如空格,回车等。 解决代码:

$image_width=70;           //设置图像宽度
$image_height=18;       //设置图像高度
$new_number=$_GET[num];
//$new_number=5;
$num_image=imagecreate($image_width,$image_height); //创建一个画布
imagecolorallocate($num_image,255,255,255);    //设置画布的颜色
$black=imagecolorallocate($num_image,0,0,0);
/**/for($i=0;$i<strlen($new_number);$i++){ //循环读取SESSION变量中的验证码
  $font=mt_rand(3,5);               //设置随机的字体
  $x=mt_rand(1,8)+$image_width*$i/4;        //设置随机字符所在位置的X坐标
  $y=mt_rand(1,$image_height/4);          //设置随机字符所在位置的Y坐标
  $color=imagecolorallocate($num_image,mt_rand(0,100),mt_rand(0,150),mt_rand(0,200));  //设置字符的颜色
  imagestring($num_image,$font,$x,$y,$new_number[$i],$color);     //水平输出字符
}
header("content-type:image/png");   //设置创建图像的格式
imagepng($num_image);     //生成PNG格式的图像
imagedestroy($num_image);   //释放图像资源

以上就是PHP验证码无法显示的原因及解决办法的讲解,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP 相关文章推荐
利用js调用后台php进行数据处理原码
Oct 09 PHP
php环境配置 php5 MySQL5 apache2 phpmyadmin安装与配置图文教程
Mar 16 PHP
php代码把全角数字转为半角数字
Dec 10 PHP
php表单转换textarea换行符的方法
Sep 10 PHP
简单的PHP多图上传小程序代码
Jul 17 PHP
在Linux系统的服务器上隐藏PHP版本号的方法
Jun 06 PHP
在CentOS系统上从零开始搭建WordPress博客的全流程记录
Apr 21 PHP
php函数mkdir实现递归创建层级目录
Oct 27 PHP
php smtp实现发送邮件功能
Jun 22 PHP
PHP创建自己的Composer包方法
Apr 09 PHP
Laravel5.4框架使用socialite实现github登录的方法
Mar 20 PHP
使用 PHP Masked Package 屏蔽敏感数据的实现方法
Oct 15 PHP
php readfile()修改文件上传大小设置
Aug 11 #PHP
浅谈Laravel中的一个后期静态绑定
Aug 11 #PHP
浅谈PHP中new self()和new static()的区别
Aug 11 #PHP
php使用 readfile() 函数设置文件大小大小的方法
Aug 11 #PHP
详解PHP使用日期时间处理器Carbon人性化显示时间
Aug 10 #PHP
PHP弱类型语言中类型判断操作实例详解
Aug 10 #PHP
CI框架(CodeIgniter)公共模型类定义与用法示例
Aug 10 #PHP
You might like
PHP扩展开发入门教程
2015/02/26 PHP
yii2.0整合阿里云oss删除单个文件的方法
2017/09/19 PHP
PHP实现用户登录的案例代码
2018/05/10 PHP
对php 判断http还是https,以及获得当前url的方法详解
2019/01/15 PHP
PHP架构及原理知识点详解
2019/12/22 PHP
php实现根据身份证获取精准年龄
2020/02/26 PHP
JavaScript 继承机制的实现(待续)
2010/05/18 Javascript
window.event快达到全浏览器支持了,以后使用就方便了
2011/11/30 Javascript
javascript面向对象编程代码
2011/12/19 Javascript
JS的Document属性和方法小结
2013/09/17 Javascript
Ajax同步与异步传输的示例代码
2013/11/21 Javascript
JQuery $.each遍历JavaScript数组对象实例
2014/09/01 Javascript
jQuery实现定时读取分析xml文件的方法
2015/07/16 Javascript
AngularJS入门教程之表格实例详解
2016/07/27 Javascript
JS点击某个图标或按钮弹出文件选择框的实现代码
2016/09/27 Javascript
[Bootstrap-插件使用]Jcrop+fileinput组合实现头像上传功能实例代码
2016/12/20 Javascript
Angular2 之 路由与导航详细介绍
2017/05/26 Javascript
浅谈express 中间件机制及实现原理
2017/08/31 Javascript
微信通过页面(H5)直接打开本地app的解决方法
2017/09/09 Javascript
详解Webstorm 新建.vue文件支持高亮vue语法和es6语法
2017/10/26 Javascript
JavaScript事件冒泡与事件捕获实例分析
2018/08/01 Javascript
详解如何在vscode里面调试js和node.js的方法步骤
2018/12/24 Javascript
vue axios重复点击取消上一次请求封装的方法
2019/06/19 Javascript
解决layer 关闭当前弹窗 关闭遮罩层 input值获取不到的问题
2019/09/25 Javascript
nestjs中异常过滤器Exceptionfilter的具体使用
2021/02/07 Javascript
python实现跨文件全局变量的方法
2014/07/07 Python
python 实现视频流下载保存MP4的方法
2019/01/09 Python
使用python实现多维数据降维操作
2020/02/24 Python
pycharm激活码快速激活及使用步骤
2020/03/12 Python
python小技巧——将变量保存在本地及读取
2020/11/13 Python
网页切图的CSS和布局经验与要点
2015/04/09 HTML / CSS
命名空间(namespace)和程序集(Assembly)有什么区别
2015/09/25 面试题
初中家长寄语
2014/04/02 职场文书
公共场所禁烟倡议书
2014/08/30 职场文书
2015年计算机教师工作总结
2015/07/22 职场文书
Redis字典实现、Hash键冲突及渐进式rehash详解
2021/09/04 Redis