PHP技术论坛

搜索
查看: 1818|回复: 0
打印 上一主题 下一主题

[综合] Thinkphp中验证码不显示解决办法

[复制链接]

83

主题

88

帖子

411

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
411
跳转到指定楼层
楼主
发表于 2016-6-28 11:12:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

  1. 验证码不显示根据我php经验分析
  2. 、先确保是否开启了 gd库
  3. 2、页面是否存在bom头
  4. 3、导入的ORG.Util.Image是否存在
  5. 4、入口文件中是否有define(‘APP_DEBUG’, TRUE); //是否开启调试模式,上线时请改为false ?这句(注:很关键作者就犯了这个错误折腾了老半天才找到)。
  6. 后来到了官方
  7. 根据这里的入门教程,我都检查了,GD是开着的,2.Image类库以及String类库导入也正确,通过output($im, $type='png', $filename='c:\verify.png') 这里给filename赋值后在C盘下是有verify.png图片保存,图片也正常显示,那就是3.验证码输出之前是否有任何的其他输出了,我把相关的页面都使用dreamware打开查看过,也都是正常了吧,可现在就是网页上验证码还是红叉叉
  8. 官方说
  9. title="{$Think.lang.refresh_verify_code}" class="verify_img" src="{:U('logo/code', array('t'=>time()))}" /> code方法就返回的是这个img对象 的数据流,会自动解析出来图片的,但此方法还是解决不了我的问题。
  10. 后来再接着百度,找到一文章
  11. ThinkPHP自带验证码的函数类,存放路径为:ThinkPHP/Lib/ORG/Util/验证码类

  12. 使用的时候只需在Index控制器中引入,方法如下:
  13. 代码如下        复制代码

  14.     public function verify() {

  15.         import ( "ORG.Util.Image" );

  16.         Image::buildImageVerify ( 4 );

  17.     }

  18. 在模板页面中调用方法如下:
  19. 代码如下        复制代码

  20. <img id="verifyImg" src="/Wen/verify/"  />



  21. if ($_SESSION['verify'] != md5($_POST['verify'])){

  22.             $this->error('验证码错误!');

  23. }

  24. Thinkphp验证码不显示图片最后发现时由于编码问题引起的,格式转换无UTF-8无DOM时,久违的验证码终于出现了。
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|PHP  

GMT+8, 2024-5-6 01:48 , Processed in 0.059196 second(s), 29 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表