ecshop不用后台更新缓存同样可实现前台的刷新

1、首先修改数据库结构
进入 ECShop后台 ==》 数据库管理 ==》SQL查询
输入下面SQL语句,提交,注意要把表前缀更改为你自己的。我这里使用的是默认表前缀ecs_。

INSERT INTO `ecs_shop_config` VALUES (1021, 10, 'last_clear_time', 'text', '', '', '1332808200', 1);
注:1332808200这个是数据库存储的时间戳,对应于2012-03-27 08:30:00,到后台更新下缓存,它会自动变更的。
1021这个值也是可以改的,但是不建议少于1000 如果少于1000,可能对其他值会产生影响。
2、打开 includes/init.php 这个文件
在文件的最后添加如下代码:
    // 自动更新缓存
    if (is_temps())
    {
        clear_all_files();
        $sql="UPDATE ".$ecs->table('shop_config') ."SET value=".time()." WHERE code='"."last_clear_time'";
        $db->query($sql);
    }

function is_temps()
    {
        if(time()-$_CFG['last_clear_time']<3600)
        {
            return(false);
        }
        else
        {
            return(true);
        }
    }

上面代码中的3600为自动更新间隔时间,单位为秒;
注:如果嫌上面的方法麻烦,可以先显示页面的php代码中在 php结束符?>之前加上一句话“clear_all_files();”,这个是每次都清空缓存,不建议使用

文章转载:http://www.gehut.cn/

(0)

相关推荐