首页 > 开发 > ThinkPHP > 正文

真正解决thinkphp 验证码出错无法显示问题

2024-09-09 15:19:55
字体:
来源:转载
供稿:网友

今天做到验证码这一块,想到tp自带验证图片,大喜,但鼓捣半天不出来,一直是个小 X.

官方提示:如果无法显示验证码,请检查:

PHP是否已经安装GD库支持;

输出之前是否有任何的输出(尤其是UTF8的BOM头信息输出);

Image类库是否正确导入;

如果是中文验证码检查是否有拷贝字体文件到类库所在目录;

测试半天,不行,网上找来一个能用的方法,放到一个文件里执行可用,进入到tp里面通过index.php入口进去就是小 x,然后能用的方法所在文件吧编码改为utf-8 含有bom的编码也会出现小 X,其他编码都会出来验证码,初步判断是tp执行到输出验证码的前面有内容输出,主管想到了清除之前的输出就行.

类似:

  1. <?php 
  2. ob_start();//不加这个是不行的(貌似不加可以) 
  3. echo "不要显示"
  4. ob_end_clean(); 
  5. echo "只要显示这"
  6. ?> 

解放方法,修改生成验证码方法:

  1. //生成验证码 
  2. public function verifyimg(){ 
  3. import("ORG.Util.Image"); 
  4. ob_end_clean(); 
  5. Image::buildImageVerify(); 

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选