ecshop

问题一:商城首页报错 Strict Standards: Only variables should be passed by reference in D:\wamp\ecshop\includes\cls_template.php on line 422

解决方法:

找到提示错误的文件 cls_template.php 及行号

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

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

并且删除 D:\wamp\www\ecshop\temp\caches下所有的文件


问题二:后台首页报错
Strict Standards: Non-static method cls_image::gd_version() should not
be called statically in D:\wamp\www\ecshop\includes\lib_base.php on
line 346

解决办法

找到D:\wamp\www\ecshop\includes\cls_image.php文件

搜索 function gd_version 改成 static function gd_version


问题三:后台-商店设置 

Strict Standards: mktime(): You should be using the time() function instead in D:\wamp\www\ecshop\admin\sms_url.php on line 31
Strict Standards: mktime(): You should be using the time() function
instead in D:\wamp\www\ecshop\admin\shop_config.php on line 32

解决办法

根据错误提示 把 mktime() 改成 time()

 

问题四:后台-起始页

Strict Standards: Redefining already defined c**tructor for class alipay in D:\www\es\includes\modules\payment\alipay.php
on line 85

解决办法

1)、错误原因:
PHP 类,有两种构造函数,一种是跟类同名的函数,一种是 __contruct()。从PHP5.4开始,对这两个函数出现的顺序做了最严格的定义,必须是 __c**truct() 在前,同名函数在后

2)、
解决方法:
调换一下两个函数的前后位置即可。
以 includes/modules/payment/alipay.php  为例:
将下面这两个函数的位置互换一下就OK了,__contruct()在前,alipay()在后

  1.    function alipay()    {
  2.     }

  3.     function __contruct()
  4.     {
  5.         $this->alipay();
  6.     }



3)、ECSHOP的很多类文件 都存在这个问题,都需要修改掉。

问题五:后台-数据备份 

 Strict standards: Redefining already defined
constructor for class cls_sql_dump in
D:\wamp\www\ecshop\admin\includes\cls_sql_dump.php on line 90
Strict standards: Non-static method cls_sql_dump::get_random_name()
should not be called statically in D:\wamp\www\ecshop\admin\database.php
on line 64

解决办法

根据错误提示 把 cls_sql_dump的 function __construct()改到  function cls_sql_dump()的前面

把 cls_sql_dump的 function get_random_name()改成 static  function get_random_name()


问题六:

Deprecated: Assigning the return value of new by reference is deprecated in  \admin\sitemap.php on line 46

 $sm     =& new google_sitemap();

解决办法

在5.3版本之后已经不允许在程序中使用”=&”符号。如果你的网站出现了Deprecated: Assigning the return value of new by reference is deprecated in 错误,别着急,先定位到出错的文件,查找下是不是在程序中使用了”=&”,例如刚才定位到网站程序中发现了下图的程序,发现使用了”=&”符号,去掉‘&’符号之后程序运行正常

问题七:

Declaration of phpbb::set_cookie() should be compatible with integrate::set_cookie...

解决办法:把function set_cookie ($username="") 改为function set_cookie ($username="", $remember = NULL)即可


问题八:

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in..

解决办法:

我遇见了有两处,都在cls_template.php文件中:

 1、return preg_replace("/{([^\}\{\n]*)}/e", "\$this->sel ect('\\1');", $source);
替换为
return preg_replace_callback("/{([^\}\{\n]*)}/", function($r) { return $this->sel ect($r[1]); }, $source);
问题解决。

2、$val = preg_replace("/

([\[

]*)\]/eis", "'.'.str_replace('$','\$','\\1')", $val);

  替换为

 $val= preg_replace_callback("/

([\[

]*)\]/eis",function($r){return str_replace('$','\$',$r[1]);}, $val);

问题解决

在PHP5.3以上版本运行ecshop出现的问题及解决方案的更多相关文章

  1. 在PHP5.3以上版本运行ecshop和ecmall出现的问题及解决方案

    ecshop 问题一:商城首页报错 Strict Standards: Only variables should be passed by reference in D:\wamp\ecshop\i ...

  2. PHP5.6.6上运行 ecshop 2.7.3常见问题处理

    ecshop在在PHP5.6.6版本以后,有了很多细微的变化.而ECSHOP官方更新又太慢,发现这些问题后也不及时升级,导致用户安装使用过程中错误百出. 整理一下我遇到的问题希望对你们能有些帮组也为了 ...

  3. PHP 5.6.6 上运行 ecshop 2.7.3 不兼容问题整合

    在安装完php在自己的服务器上以后, 发现在静态网页上出现了很多 error. 在网上查找过后发现,大部分问题是因为 PHP发展到PHP5.5版本以后,有了很多细微的变化.而ECSHOP官方更新又太慢 ...

  4. PHP5.5下安装配置EcShop

    建议用较旧的PHP版本与EcShop搭配,比如PHP5.3,新版的PHP有很多奇奇怪怪的问题... 错误描述: Deprecated: preg_replace(): The /e modifier ...

  5. 如何让VMware低版本运行VMware高版本创建的虚拟机

    如何让VMware低版本运行VMware高版本创建的虚拟机 问题描述: 本机安装的VMware Workstation是10版本,之前VMware Workstation 11版本创建的虚拟机,在运行 ...

  6. 在Vista以上版本运行WTL程序,有时候会提示“这个程序可能安装补正确...”的错误

    在Win7/Vista下,如何以兼容模式运行exe?     https://msdn.microsoft.com/en-us/library/dd371711(VS.85).aspx     问题描 ...

  7. Keras 2.0版本运行

    Keras 2.0版本运行demo出错: d:\program\python3\lib\site-packages\ipykernel_launcher.py:8: UserWarning: Upda ...

  8. Php5.6.31连接sqlserver 2008R2数据库问题sqlsrv(php5.3及以上版本)与mssql(php5.3以前版本)②

    Php5.6.31连接sqlserver 2008R2数据库 1.环境配置 Win7(win8.1)  64 +Apache2.4 + PHP5.6.31 + SQL Server 2008 R2数据 ...

  9. 修正ECMALL在PHP5.3以上版本中无法开启支付方式的BUG

    修正ECMALL在PHP5.3以上版本中无法开启支付方式的BUG 很多用户反映说PHP5.3.3下,ECMALL的商家无法安装支付方式,这个是比较严重的事情,不能安装支付方式那什么都不能干呢,那我就免 ...

随机推荐

  1. pgadmin4 python

    安装安装包 # sudo apt-get install build-essential libssl-dev libffi-dev libgmp3-dev virtualenv python-pip ...

  2. [development][PCRE] old PCRE

    介绍, man手册 txt版 http://www.pcre.org/original/pcre.txt html版 http://www.pcre.org/original/doc/html/pcr ...

  3. LeetCode 965 Univalued Binary Tree 解题报告

    题目要求 A binary tree is univalued if every node in the tree has the same value. Return true if and onl ...

  4. quartz 2.1.6使用方法

    /** * @Description: * * @Title: QuartzManager.java * @Package com.joyce.quartz * @Copyright: Copyrig ...

  5. Bloom Filter 数据结构去重

    Bloom Filter是一种空间效率很高的随机数据结构,它利用位数组很简洁地表示一个集合,并能判断一个元素是否属于这个集合. Bloom Filter的这种高效是有一定代价的:在判断一个元素是否属于 ...

  6. Shell基本介绍和使用

    Shell 教程 Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁.Shell 既是一种命令语言,又是一种程序设计语言. Shell 是指一种应用程序,这个应用程序提供了一个 ...

  7. unittest框架assert断言

    Pthon内部自带了一个单元测试的模块,\ pyUnit也就是:unittest 先介绍下unittest的基本使用方法: 1.import unittest2.定义一个继承自unittest.Tes ...

  8. python脚本获取文件的创建于修改日期并计算时间差

    由于在计算一个算法的运行时间的时候,需要将文件的创建日期与修改日期读取到,然后计算两者之差,在网上搜索了相关的程序之后,自己又修改了一下,把代码贴在这里,供以后查阅使用,也希望可以帮到其他人. # - ...

  9. head 命令 读取文件的前n行,默认查看文件的前十行

    head 命令 读取文件的前n行 默认查看文件的前十行 head /etc/passwd # 默认查看文件的前十行 /etc/passwd # 查看文件的前两行

  10. OC分割输入验证码的视觉效果

    效果图: 用到的类: UITextField+VerCodeTF.h #import <UIKit/UIKit.h> @protocol VerCodeTFDelegate <UIT ...