ecshop验证码图片无法显示终极解决办法

ecshop验证码图片无法显示终极解决办法

ECSHOP教程 ecshop 教程网(www.ecshop119.com) 2014-06-06

 

客户在安装好ecshop之后所有前台的证码不显示,后台可以显示,ECSHOP开发中心总结了解决办法分享给各位朋友。

可以在后台有,前台不显示

打开includes/init.php文件,将如下这段代码屏蔽即可。

/* 判断是否支持 Gzip 模式 */
if (!defined(‘INIT_NO_SMARTY’) && gzip_enabled()){
ob_start(‘ob_gzhandler’);
}else{
ob_start();
}

产生原因:

因为在php中的path路径可能没了 ./ 的当前路径,找不到验证码的图片。

解决方案:

修改 captcha.php 的第22行

$img = new captcha('data/captcha/', $_CFG['captcha_width'], $_CFG['captcha_height']);
改为:
$img = new captcha(ROOT_PATH . 'data/captcha/', $_CFG['captcha_width'], $_CFG['captcha_height']);

编码原因

修改了某些utf-8文件,结果保存成 utf-8+ 也就是传说中的 utf-8 with bom
解决方法,找到对应文件,应 editplus 重新保存成 utf-8 无bom


BUG原因:

变量命名重复了,至于是哪个变量名重复了,请看解决把办法就知道了。

解决办法:

1、打开 /includes/lib_insert.php 文件,先定位到 insert_comments 函数部分,
然后找到 insert_comments 函数里面的

$GLOBALS['smarty']->assign('enabled_captcha', 1);将之修改为

$GLOBALS['smarty']->assign('enabled_captcha_comments', 1);

2、然后继续 修改 /themes/default/library/comments.lbi 文件将

<!-- 判断是否启用验证码{if $enabled_captcha} -->修改为

<!-- 判断是否启用验证码{if $enabled_captcha_comments} -->

posted @ 2015-06-24 18:17  brady-wang  阅读(662)  评论(0编辑  收藏  举报