新闻中心

thinkcmf后台验证码有时不显示的解决办法

作者 / 无忧主机 时间 2017-07-21 19:56:05

thinkcmf因为有很好的可扩展性,深受站长朋友们喜爱,无忧主机小编也是因为看见thinkcmf官网有很多简单易懂的教程而被深深吸引到了,更重要的thinkcmf是基于thinkphp开发的,可以借助这个系统更加全面地去了解thinkphp。最近无忧主机小编一直在纠结thinkcmf网站后台验证码不显示的问题,关于这个问题在网上的回答是众说纷纭。经过一番苦苦摸索终于有了答案,为了让thinkcmf源码爱好者不再走我走过的弯路,无忧主机小编就把thinkcmf后台验证码有时不显示的解决办法分享给大家。 用ftp工具连接到虚拟主机,在根目录的 application/Api/Controller/ 路径下找到 CheckcodeController.class.php文件,如图1所示, 图1 将这个文件下载到本地进行修改。 用文本编辑器打开,在 public function index()  这个方法中,找到

$Verify = new \Think\Verify($config);
在这句代码前面上 ob_clean();  如图2所示。 图2 改好后保存并上传到空间的原路径,再去访问发现验证码始终都会显示了。 这个函数到底是起到了什么作用呢,在php官网文档的介绍的是,这个函数用于丢弃缓冲区的内容,而且缓冲区中带了PHP_OUTPUT_HANDLER_CLEANABLE标志的ob_start()方法才能工作, ob_start()表示打开输出控制缓冲。在thinkcmf程序中,网站有许多生成的图片类文件比如销毁后的验证码,想要正确访问新生成的验证码,如果没有及时清除缓冲区,验证码就可能无法显示,这个函数就是用来清理缓冲区的。

本文地址:https://www.51php.com/thinkphp/25138.html

1
1
1
1
1
1
1

客户服务热线

0791-8623-3537

在线客服