Tpshop 插件、多商户版、缓存各种问题处理与应用记录
Tpshop 插件、多商户版、缓存各种问题处理与应用记录
1:后台不能更新缓存bug
问题原因:点击清空缓存,发现Runtime下缓存文件并没有被删除。
解决思路:1、查看是否是代码问题。2、检查php.ini配置中scandir是否放开3、百度
解决方法:通过打印scandir结果发现返回NULL,但是目录是真实存在的,so检查php.ini配置中scandir是否打开,发现没有打开。删除php.ini中scandir。解决
2:首页分类不能实时更新。
问题原因:添加分类之后首页全部商品分类没有变化。
解决思路:1、删除缓存。2检查代码
解决办法:通过查看源码,发现在Common/Common/Common.php中![]()
cache(true)没有设置有效时间导致。询问官网大神说是叫我清空缓存,当时缓存清空还要问题。cache(true,TPSHOP_CACHE_TIME)所以我加上了有效时间问题得到解决。
3:Logs日志报错,第155行 不知道如何解决。
NOTIC: [8] Undefined index: level /web/wwwroot/www.ameishop.cn/ThinkPHP/Library/Think/Template/TagLib/Tpshop.class.php 第 35 行.
NOTIC: [8] Undefined index: level /web/wwwroot/www.ameishop.cn/ThinkPHP/Library/Think/Template/TagLib/Tpshop.class.php 第 37 行.
解决思路:查看代码
解决办法:发现是由于代码不严谨导致。
问题原因:点击清空缓存,发现Runtime下缓存文件并没有被删除。
解决思路:1、查看是否是代码问题。2、检查php.ini配置中scandir是否放开3、百度
解决方法:通过打印scandir结果发现返回NULL,但是目录是真实存在的,so检查php.ini配置中scandir是否打开,发现没有打开。删除php.ini中scandir。解决
2:首页分类不能实时更新。
问题原因:添加分类之后首页全部商品分类没有变化。
解决思路:1、删除缓存。2检查代码
解决办法:通过查看源码,发现在Common/Common/Common.php中
cache(true)没有设置有效时间导致。询问官网大神说是叫我清空缓存,当时缓存清空还要问题。cache(true,TPSHOP_CACHE_TIME)所以我加上了有效时间问题得到解决。
3:Logs日志报错,第155行 不知道如何解决。
NOTIC: [8] Undefined index: level /web/wwwroot/www.ameishop.cn/ThinkPHP/Library/Think/Template/TagLib/Tpshop.class.php 第 35 行.
NOTIC: [8] Undefined index: level /web/wwwroot/www.ameishop.cn/ThinkPHP/Library/Think/Template/TagLib/Tpshop.class.php 第 37 行.
解决思路:查看代码
解决办法:发现是由于代码不严谨导致。
$order = !empty($tag['order']) ? $tag['order'] : ''; //排序
$where = !empty($tag['where']) ? $tag['where'] : ''; //查询条件.
3:缓存的那些坑函数tpCache()
如果你认为你的代码没问题。但是数据库中没有更新字段。请你看下这个函数。他会先去读取缓存文件。然后进行更新,也就是说你的字段加上没加上都是不要紧的。。
如何更改这个问题,我没有好的方法。 请各位大神指导下
4:手机端改版不通过用户输入积分,根据商品直接扣除积分。
原本我以为很复杂的一件事情。当初的想法是通过js调用去更新用户积分。后来查看代码是发现是通过获取pay_points来更新的。这样就很简单了。
第一步:修改cart数据库,增加字段exchange_integral.
2:修改addcart()方法,在data数组中增加exchange_integral => $goods['exchange_integral'],
3:cartcontroller中查找用户积分与商品总积分。
4:cart2.html中修改积分,并加入一个name为pay_points的隐藏文本框。
ok这样就搞定了 省掉了很多步骤
免费源码下载地址:http://github.crmeb.net/u/defu