smartweb 发表于 2016-12-24 17:23:18

弱水河_kUW1u 发表于 2016-12-17 23:27
兄台,你没有能明白我的意思。我要问的是这样

我之前也遇到类似问题,感觉是输出头部原因,后来就用这段代码解决了,也可以点击刷新验证码。

弱水河_kUW1u 发表于 2017-1-2 13:08:34

终于知道原因了,是那几个以image开头的函数的问题,比如imagepng,imagegif 等,在codeigniter里的captcha_helper.php文件中,都生成了图像文件,只要把imagejpeg($im, $img_path.$img_filename)和imagepng($im, $img_path.$img_filename)里的$img_path.$img_filename参数去掉,上面的代码运行起来后,就可以在浏览器里显示图像了。

看来基础很重要啊,不要过于迷恋框架啊

弱水河_kUW1u 发表于 2017-1-2 14:27:40

你那个教程资源索引也该更新了吧,兄弟

Hex 发表于 2017-1-2 22:50:31

弱水河_kUW1u 发表于 2017-1-2 13:08
终于知道原因了,是那几个以image开头的函数的问题,比如imagepng,imagegif 等,在codeigniter里的captcha ...
你这是改了 CI 的源码了?如果改源码才能正常的话,还是说明你的环境(或某些地方)有问题,因为在我这里是不需要修改源码就可以正常运行的。另外,修改源码以后,对于升级 CI 框架也可能会有问题。

PS:你说的很对,基础很重要,框架虽然不能迷恋,但是建议你尽可能了解一下框架的某些写法是不是也有一定的用处?


Hex 发表于 2017-1-2 23:09:47

弱水河_kUW1u 发表于 2017-1-2 14:27
你那个教程资源索引也该更新了吧,兄弟
感谢反馈。关于更新这个索引你有什么建议么?欢迎提出你的想法。感谢对 CI 中国的支持。

弱水河_kUW1u 发表于 2017-1-6 23:03:25

Hex 发表于 2017-1-2 22:50
你这是改了 CI 的源码了?如果改源码才能正常的话,还是说明你的环境(或某些地方)有问题,因为在我这里 ...

是改了源码了,只是想说明原因所在。

不修改源码,直接用的话不可能显示。把你的代码贴出来看看,hex

Hex 发表于 2017-1-10 10:31:13

弱水河_kUW1u 发表于 2017-1-6 23:03
是改了源码了,只是想说明原因所在。

不修改源码,直接用的话不可能显示。把你的代码贴出来看看,hex ...
我亲测了一下,根据 3.1.2 手册上的说明,$cap['image']; 指的是一个 HTML img 标签(你可以 var_dump($cap); 看看里面的内容就知道了),并不是图片本身,所以你的视图写法是错误的,所以你看不到验证码。

手册请参考: http://codeigniter.org.cn/user_guide/helpers/captcha_helper.html
页: 1 [2]
查看完整版本: 视图端为什么无法显示验证码