您的位置:首页 > 编程语言 > PHP开发

关于在laravel项目中验证码不显示的问题

2017-05-28 13:08 387 查看

如何解决php 生成验证码图片不显示问题

时间 2014-12-07 09:14:07

[/i]
CSDN博客

原文
http://blog.csdn.net/whq19890827/article/details/41785689

主题

PHP

验证码第一天还好好的,第二天怎么整都不显示了,高级好几个小时。网上原因找了好久,哈哈,终于找到了!现在给大家分享一下:

程序:

<?php

w=80;//设置图片宽和高h = 26;

str=Array();//用来存储随机码string = “ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789”;//随机挑选其中4个字符,也可以选择更多,注意循环的时候加上,宽度适当调整

for(i=0;i < 4;i++)$str[$i]=$string[rand(0,35)];$vcode.=$str[$i];sessionstart();//启用超全局变量session_SESSION["vcode"] = vcode;im = imagecreatetruecolor(w,h);

white=imagecolorallocate(im,255,255,255); //第一次调用设置背景色

black=imagecolorallocate(im,0,0,0); //边框颜色

imagefilledrectangle(im,0,0,w,h,white); //画一矩形填充

imagerectangle(im,0,0,w-1,h−1,black); //画一矩形框

//生成雪花背景

for(i=1;i < 200;i++)$x=mtrand(1,$w−9);$y=mtrand(1,$h−9);$color=imagecolorallocate($im,mtrand(200,255),mtrand(200,255),mtrand(200,255));imagechar($im,1,$x,$y,"∗",$color);//将验证码写入图案for(i = 0;i<count(str);i++)$x=13+$i∗($w−15)/4;$y=mtrand(3,$h/3);$color=imagecolorallocate($im,mtrand(0,225),mtrand(0,150),mtrand(0,225));imagechar($im,5,$x,$y,$str[$i],$color);header(“Content−type:image/jpeg”);//以jpeg格式输出,注意上面不能输出任何字符,否则出错imagejpeg(im);

imagedestroy($im);

?>

验证过,在别人的电脑上能运行,但是我自己的电脑却无法运行。原因如下:

首先要声明一下的是,我以为是gd2库没有打开,但用
phpinfo查看了,发现打开了。清除了bom,代码也是顶行开始写的,因此问题可能出现在代码上。后来经过研究,发现还是要更改一下程序,要在header前面加上ob_clean()这个语句,这样就可以运行了。

加在header输出之前:

ob_clean(); //关键代码,防止出现’图像因其本身有错无法显示’的问题。

header(“Content-type:image/jpeg”);

这样问题就得到了解决。

</div>
<div class="article_social">
<div class="article_like">
<div class="circle circle-like" id="my_zan" data_id="jaYBBfJ">  </div>




分享

[/i] 收藏

[/i]
纠错

("#share_weibo_id").click( function() {
window.open("http://share.baidu.com/s?type=text&searchPic=0&sign=on&to=tsina&url=http://www.tuicool.com/articles/jaYBBfJ&title=%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3php+%E7%94%9F%E6%88%90%E9%AA%8C%E8%AF%81%E7%A0%81%E5%9B%BE%E7%89%87%E4%B8%8D%E6%98%BE%E7%A4%BA%E9%97%AE%E9%A2%98++%28%E5%88%86%E4%BA%AB%E8%87%AA+%40%E6%8E%A8%E9%85%B7%E7%BD%91%29&key=3113829255");
});<script type="math/tex" id="MathJax-Element-413">("#share_weibo_id").click( function() {
window.open("http://share.baidu.com/s?type=text&searchPic=0&sign=on&to=tsina&url=http://www.tuicool.com/articles/jaYBBfJ&title=%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3php+%E7%94%9F%E6%88%90%E9%AA%8C%E8%AF%81%E7%A0%81%E5%9B%BE%E7%89%87%E4%B8%8D%E6%98%BE%E7%A4%BA%E9%97%AE%E9%A2%98++%28%E5%88%86%E4%BA%AB%E8%87%AA+%40%E6%8E%A8%E9%85%B7%E7%BD%91%29&key=3113829255");
});
</script>("#share_qq_id").click( function() {
window.open("http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url=http://www.tuicool.com/articles/jaYBBfJ&title=%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3php+%E7%94%9F%E6%88%90%E9%AA%8C%E8%AF%81%E7%A0%81%E5%9B%BE%E7%89%87%E4%B8%8D%E6%98%BE%E7%A4%BA%E9%97%AE%E9%A2%98&desc=&summary=&site=");
});
("#share_weixin_id").click( function() {("#share_weixin_image").toggle();
});

<div class="bottom_plink huodong-detail-plink-banner clearfix">
<a href="http://bird.so" target="_blank"><img src="http://static1.tuicool.com/images/upload/bird700.jpg"></a>

</div>
</div>
<div id="site_articles" style="clear:both;">
<div class="article-part-title">
<span>推荐文章</span>
</div>
<ul class="side_article_list">
<li class="side_article_list_item">
1.<a href="/articles/FVVNjmj" target="_blank" title="PHP_设计模式">
PHP_设计模式
</a>
</li>
<li class="side_article_list_item">
2.<a href="/articles/R3I3M3y" target="_blank" title="[ PHP 内核与扩展开发系列] 第一个 PHP 扩展:编写函数">
[ PHP 内核与扩展开发系列] 第一个 PHP 扩展:编写函数
</a>
</li>
<li class="side_article_list_item">
3.<a href="/articles/FRBrMj2" target="_blank" title="yii2事件的解绑和级别概念">
yii2事件的解绑和级别概念
</a>
</li>
<li class="side_article_list_item">
4.<a href="/articles/r2UBbaI" target="_blank" title="PHP or Python如何选择?或许你应该考虑一下这三个问题">
PHP or Python如何选择?或许你应该考虑一下这三个问题
</a>
</li>
<li class="side_article_list_item">
5.<a href="/articles/F7ZFzyj" target="_blank" title="一个活生生的Yii2事件例子">
一个活生生的Yii2事件例子
</a>
</li>
<li class="side_article_list_item">
6.<a href="/articles/j2yEBr6" target="_blank" title="[ PHP 内核与扩展开发系列] 内存管理 —— 内存分配与释放">
[ PHP 内核与扩展开发系列] 内存管理 —— 内存分配与释放
</a>
</li>
</ul>
</div>
<div id="kan_articles"> <div class="article-part-title"> <span>相关推刊</span></div><div class="kan-list-container"><ul class="kan-list clearfix">          <li class="kan-item">            <span class="kan-item-head">              <small></small>              <img class="kan-cover" src="http://img0.tuicool.com/EzuEvyZ.jpg!kan">            </span>            <span class="kan-detail">              <i>《匿名收藏》</i>              <i class="kan-num">57</i>            </span>          </li>                  <li class="kan-item">            <span class="kan-item-head">              <small></small>              <img class="kan-cover" src="http://img0.tuicool.com/6Rn6beQ.png!kan">            </span>            <span class="kan-detail">              <i>《匿名收藏》</i>              <i class="kan-num">43</i>            </span>          </li>                  <li class="kan-item">            <a href="/kans/3605510558" target="_blank" class="kan-item-head">              <small>by 字研字禹</small>              <img class="kan-cover" src="http://img0.tuicool.com/zU7VVf.png!kan">            </a>            <span class="kan-detail">              <a href="/kans/3605510558" target="_blank">《PHP常用方法及模块》</a>              <i class="kan-num">665</i>            </span>          </li>        </ul></div><i class="clearfix"></i></div>
<div id="article_weibo" style="display:none;">
<div class="article-part-title">
<span>相关微博</span>
<sub>
<a href="/articles/weibo_list/jaYBBfJ" target="_blank">(<i id="weibo_num"></i>)</a>
</sub>
</div>
<div class="related-weibo-list"></div>
</div>
<div class="comments">
<div class="comments-area">
<div class="comments-header">
<h5>我来评几句</h5>
<div class="alert comment-alert alert-error" style="display:none;">
错误
</div>
<textarea cols="60" rows="5" id="comment-body" placeholder="请输入评论内容..." style="resize: none;"></textarea>
<span class="btn btn-medium btn-submit" id="comment-submit">登录后评论</span>
<p style="margin-top: 5px;margin-left:10px;">
已发表评论数(<span class="comment_cnt">0</span>)
</p>
</div>
<div class="comments-list">
<div class="empty-cmts alert alert-success" style="display:none;">
没有更多评论了^^
</div>
</div>
<div class="more-comments" style="display:none;">
<a href="">更多评论</a>
</div>
<div class="load-fail" style="display:none;">
评论加载失败,<a href="javascript:reload_comments('jaYBBfJ',1,0,-1);">重新加载</a>
</div>
</div>


转载自(http://www.tuicool.com/articles/jaYBBfJ);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐