文档章节

Ecshop 二次开发笔记

土龙
 土龙
发布于 2013/12/07 19:11
字数 1085
阅读 817
收藏 6
点赞 0
评论 0

1、因为官网下载每次都要输入名字和电话,稍微有点麻烦,所以传到网盘上去了,gbk版本就是只有中文版,utf8版本就是又有中文版又有英文版
ecshop gbk版本下载地址 http://pan.baidu.com/s/1xiQAl
ecshop utf8 版本下载地址http://pan.baidu.com/s/1O5sC  


2、Strict Standards: Non-static method cls_image::gd_version() should not be called statically in C:Apache2.2htdocsyecshopincludeslib_base.php on line 347
找到include/cls_image.php中的678行,发现gd_version()方法未声明静态static,所以会出错。这时候只要:
将function gd_version()改成static function gd_version()即可。 这个是版本兼容问题,新版的php要求更严格

3、是否支持JPEG 显示不支持 这个是环境检查代码的一处错误 

install/includes/lib_installer.php中第98行,JPEG写成了JPG,正确的应该是:

$jpeg_enabled = ($gd_info['JPEG Support'] === true) ? $_LANG['support'] : $_LANG['not_support'];

不改的话其实对功能也没有影响。

4、Strict standards: Only variables should be passed by reference in D:\wamp\www\ecshop\includes\lib_main.php on line 132 

解决办法:
D:\wamp\www\ecshop\includes 下cls_template.php 418行
$tag_sel = array_shift(explode(' ', $tag));

$tag_sel = array_shift(explode(' ', $tag));

改成: 

$tag_arr = explode(' ', $tag); 
$tag_sel = array_shift($tag_arr);

修改完之后问题还是没有最终解决,因为还是有其他的地方报同样的错误,这是由于ecshop使用的是老版本的php,而php5.3之后就不再支持上面的写法。 

解决办法之一就是给wampserver配置多个版本的php,但是这样比较麻烦,最后找了个偷懒的办法,下载老版本的wampserver,找一个php的版本为5.2的,问题最终是解决了,同一个操作系统下可以装多个版本的wampserver。
我把老版本的wampserver传到了百度的云盘里。地址如下:
http://pan.baidu.com/s/1FzTmK
版本信息为:php5.2.6,mysql5.0.51b,apache2.2.8 

4.1 Strict standards: Redefining already defined constructor for class alipay

原因是PHP4中构造方法是一个与类同名的方法,而从PHP5开始,用__construct()做为构造方法,但仍然支持PHP4的构造方法,如果同时使用而且同名方法在前的话,则会报错,将同名的方法放到构造方法之后即可解决。

class alipay
{
    function __construct()
    {
        $this->alipay();
    }
    function alipay()
    {
    }

4.2 Warning: date_default_timezone_get(): It is not safe to rely on the system's timezone settings

解决办法是编辑php.ini文件,搜索 date.timezone 前面的 分号去掉。date.timezone = "Asia/Shanghai",修改完后 重启 apache

5、做团购时需要增加一个图片字段,一开始叫做googs_img, 但是之后访问首页时报错:Column 'goods_img' in field list is ambiguous,这个错误就是由于不同表中有相同字段,查询的时候又在一起没有区分。解决办法就是修改下新增字段的名字比如改成group_goods_img 

6、smarty中获取遍历次数和截取字符串:

<div class="head mt20">热销商品排行</div>
<div class="body" style="padding:0; width:228px">
	<ul class="sales-ranking">
		<!-- {foreach name=top_goods from=$top_goods item=goods}-->
			<li><a class="num-{$smarty.foreach.top_goods.iteration}" href="{$goods.url}">{$goods.goods_name|truncate:13}</a></li>
		<!-- {/foreach} -->
	</ul>
</div>

7、smarty中使用判断语句,包括if,else,elseif,相等,不相等

<!-- {if $group_buy.status eq 0} 未开始 -->
	{$lang.gbs_pre_start}
<!-- {elseif $group_buy.status eq 1} 进行中 -->
	<a class="buy-01" href="javascript:void(0);" onclick="gb_submit()"></a> 
<!-- {else} 已结束 -->
	<span class="buy-02"></span> 
<!-- {/if} -->

<!-- {if $group_buy.status ne 1} 非进行中 -->
	<em class="gray-bg"></em>
<!-- {/if} -->

大于 gt,小于lt,大于等于gte,小于等于lte

8、"high" == 0 竟然是true,不能这样用, 判断某个字符串不存在的时候,可以赋值为空,不要赋值为0,比如下面的代码:

$_REQUEST['level'] = isset($_REQUEST['level']) ? $_REQUEST['level'] : 0;

可以写为

$_REQUEST['level'] = isset($_REQUEST['level']) ? $_REQUEST['level'] : "";

否则,赋值为0之后,在进行字符串判断的时候都是true,比如:

$level=0
{if $level eq "high"} 为true

原因是php在判断字符串与整数是否相等时会先进行类型的转换,字符串转换为整数时是0,0==0所以为true

9、smarty中判断数组长度是否为0

{if $specification|@count neq 0 }
{/if}

10、日期时间格式处理

$row['add_time']     = local_date('Y-m-d H:i:s', $row['add_time']);

11、增加锚点,使得评论和咨询翻页时还是能跳到第一条内容,href和onclick可以同时使用

<div class="comment-box02" id="comment_body">
<a href="#comment_body" onclick="{$pager.page_first}">首页</a>

12、ecshop有些配置参数写在了data/config.php上面,比如 DOMAIN,数据库参数等。这个文件是安装时通过lib_installer.php 生成的


© 著作权归作者所有

共有 人打赏支持
土龙

土龙

粉丝 37
博文 106
码字总数 35678
作品 2
咸宁
ecshop 完美解决动态ip登录超时和购物车清空问题

ECSHOP模板/ecshop开发中心(www.68ecshop.com) / 2014-05-06 前一段时间,ECSHOP开发中心的一个客户说自己的ecshop网店出了状况,就是有时候登录的时候会自动退出。而且购物车也没规律的会清...

thinkyoung ⋅ 2015/06/24 ⋅ 0

第三方支付接口现号,第三方支付接口对接,第三方支付接口申请

第三方支付公司太多,到目前为止一共有5批206家拿牌支付公司:国付宝,支付宝,环迅,汇潮,易宝,快钱,智付,等等不管您从事与哪家,我们都必须面对这些事实,每家支付公司都有自己的优势跟...

alaimaro ⋅ 04/26 ⋅ 0

ecshop session丢失问题

ecshop session丢失问题 电子商务PHP 用ecshop搭建了一个电子商务的系统,本地测试一切正常。放到服务器上出现问题: 症状: 点着点着经常无故退出,感觉session被清空了。查找原因:ecshop中...

thinkyoung ⋅ 2015/06/29 ⋅ 0

linux下安装ecshop,

本文参考https://blog.csdn.net/fuwei52406/article/details/50547366,略有修改。 感谢原作者。 安装apache服务器,php服务器,mysql服务器 yum install httpd yum install php 卸载掉原有mys...

云中栖 ⋅ 05/28 ⋅ 0

ecshop 工作流程加载配置介绍

ecshop 工作流程加载配置介绍 分类: ecshop2014-09-14 09:36 729人阅读 评论(2) 收藏 举报 模板引擎工作流 这里简单介绍下echsop工作流程: 首先,你会发现一般的echsop的php文件都会引入i...

thinkyoung ⋅ 2015/05/21 ⋅ 0

代码审计ECShop-V3.0.0 漏洞集合

  0×00 背景   不久前对ECShop-V3.0.0进行了一次粗浅的审计,还是发现了一些问题。本篇分析的漏洞利用条件是比较苛刻的,但是重要的是能够在审计的过程中学习到新的思路和知识,期待和师...

FreeBuf ⋅ 05/15 ⋅ 0

2018年5月第一二周下载中心资源下载TOP榜

2018年5月01日至2018年5月14日下载中心资源下载TOP榜 A、系统运维 NO.1 下载数:282 资源标题:Linux操作系统(上百个新特性)_红帽RHEL7新特性与功能汇总V1.0 资源地址:http://down.51cto.c...

51CTO下载 ⋅ 05/15 ⋅ 0

ECshop会员添加权限的开发教程

由于会员管理权限里面就包括会员添加和查看会员列表。但是这次开发需要只有会员添加权限,不允许看到其他会员的任何信息,所以才会有这两天的菜鸟级开发。希望对菜鸟级的人有用,因为在网上搜...

kangjunfei ⋅ 05/17 ⋅ 0

loading-cli 1.0.6 发布,命令行 loading 效果

loading-cli 1.0.6 发布,命令行loading效果。 更新内容 ee2991b - 修复参数frames无效.

同一种调调 ⋅ 01/21 ⋅ 0

ecshop二次开发有什么好处?

ecshop二次开发有什么好处?为什么好多人都喜欢ecshop商城系统,说是可以二次开发

猜猜我啊 ⋅ 2016/07/27 ⋅ 1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

sbt网络问题解决方案

http://dblab.xmu.edu.cn/blog/maven-network-problem/

狐狸老侠 ⋅ 13分钟前 ⋅ 0

大数据,必须掌握的10项顶级安全技术

我们看到越来越多的数据泄漏事故、勒索软件和其他类型的网络攻击,这使得安全成为一个热门话题。 去年,企业IT面临的威胁仍然处于非常高的水平,每天都会看到媒体报道大量数据泄漏事故和攻击...

p柯西 ⋅ 56分钟前 ⋅ 0

Linux下安装配置Hadoop2.7.6

前提 安装jdk 下载 wget http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.7.6/hadoop-2.7.6.tar.gz 解压 配置 vim /etc/profile # 配置java环境变量 export JAVA_HOME=/opt/jdk1......

晨猫 ⋅ 今天 ⋅ 0

crontab工具介绍

crontab crontab 是一个用于设置周期性被执行的任务工具。 周期性执行的任务列表称为Cron Table crontab(选项)(参数) -e:编辑该用户的计时器设置; -l:列出该用户的计时器设置; -r:删除该...

Linux学习笔记 ⋅ 今天 ⋅ 0

深入Java多线程——Java内存模型深入(2)

5. final域的内存语义 5.1 final域的重排序规则 1.对于final域,编译器和处理器要遵守两个重排序规则: (1)在构造函数内对一个final域的写入,与随后把这个被构造对象的引用赋值给一个引用...

江左煤郎 ⋅ 今天 ⋅ 0

面试-正向代理和反向代理

面试-正向代理和反向代理 Nginx 是一个高性能的反向代理服务器,但同时也支持正向代理方式的配置。

秋日芒草 ⋅ 今天 ⋅ 0

Spring 依赖注入(DI)

1、Setter方法注入: 通过设置方法注入依赖。这种方法既简单又常用。 类中定义set()方法: public class HelloWorldOutput{ HelloWorld helloWorld; public void setHelloWorld...

霍淇滨 ⋅ 昨天 ⋅ 0

马氏距离与欧氏距离

马氏距离 马氏距离也可以定义为两个服从同一分布并且其协方差矩阵为Σ的随机变量之间的差异程度。 如果协方差矩阵为单位矩阵,那么马氏距离就简化为欧氏距离,如果协方差矩阵为对角阵,则其也...

漫步当下 ⋅ 昨天 ⋅ 0

聊聊spring cloud的RequestRateLimiterGatewayFilter

序 本文主要研究一下spring cloud的RequestRateLimiterGatewayFilter GatewayAutoConfiguration @Configuration@ConditionalOnProperty(name = "spring.cloud.gateway.enabled", matchIfMi......

go4it ⋅ 昨天 ⋅ 0

Spring clound 组件

Spring Cloud技术应用从场景上可以分为两大类:润物无声类和独挑大梁类。 润物无声,融合在每个微服务中、依赖其它组件并为其提供服务。 Ribbon,客户端负载均衡,特性有区域亲和、重试机制。...

英雄有梦没死就别停 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部