百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>网页制作> php验证图片不显示
分享文章到:

php验证图片不显示

发布时间:09/01 来源:未知 浏览: 关键词:

错误:

verify-1.jpg

今天在在当地创建了一个虚拟主机,把之前写好的一个php小网站摆设上去,由于之前用的wamp集成环境,所以没有显现这种状况。此刻忽然发明验证码居然刷不出来了。

于是便开启了寻bug之旅,在网上寻了很多方法,最后终于解决了,此刻分享如下:

办法一:

显现上面的状况,最根本的一个错误就是你很大概在php里面健忘安置gd模块了。window环境下面只需要在php.ini文件里面寻到:

;extension=php_gd2.dll

把前面的分号去除就可以了,重新启动apache后,你就可以在phpinfo()里面寻到这个:

verify-2.jpg

假如是在ubuntu环境下面,你需要安置gd模块,命令是:

sudo apt-get install php5-gd

安置好了今后,也可以看到上面的模块。

办法二:

假如小伙伴经历上面的安置后,发明还是没有用,那么就大概是下面的问题了。

你的代码很大概是使用了像editpuls或者notepad++这样的文本编纂器编纂的,那么他们的默许编码格局就是有BOM的utf-8。UTF-8 BOM又叫UTF-8 签名,其实UTF-8 的BOM对UFT-8没有作用,是为了支撑UTF-16,UTF-32才加上的。

BOM签名的意思就是告诉编纂器当前文件采纳何种编码,利便编纂器识别,但是BOM虽然在编纂器中不显示,但是会发生输出,就像多了一个空行。一样我用UTF-8无BOM格局,所以你需要将代码的编码格局改成无BOM格局。

办法三:

假如大家经历上面的两个步骤发明还是不起作用,那就要祭出杀手锏了。使用ob_clean()了,清除一下缓存。ob_clean这个函数的作用就是用来抛弃输出缓冲区中的内容,假如你的有很多生成的图片类文件,那么想要拜访准确,就要经常清除缓冲区。

	public function create()
	{
		ob_clean();
		$a = new verify();
		session::set('captcha', strtolower($a->create(4, 15)));
		view::assign("captcha", $a);
		view::display("captcha");
		exit(0);
	}

留意:

大家假如使用较高的php版本,那么不克不及使用不决义变量,不然会报notice错误,$new_number和$_SESSION['check_checks']在使用前必需用isset推断一下或者你用老代码的话在最开端处加上error_reporting(E_ALL & ~E_NOTICE);屏蔽掉notice错误(不引荐),所以用isset()推断一下,来确保它被定义了,不然也有大概显示不出来验证码。

引荐视频教程:PHP视频教程

以上就是php验证图片不显示的具体内容,更多请关注百分百源码网其它相关文章!

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有156人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板