zoukankan      html  css  js  c++  java
  • ecshop安装常见问题及解决办法

    一,Ecshop首页出现报错:Only variables should be passed by referen
      最近想安装一个ECSHOP商城上去,老是报错,出现下面这就话:
      Strict Standards: Only variables should be passed by reference in D:**includescls_template.php on line 406 第406行:$tag_sel = array_shift(explode(' ', $tag));
      解决办法 1 5.3以上版本的问题,应该也和配置有关 只要406行把这一句拆成两句就没有问题了
      $tag_sel = array_shift(explode(' ', $tag));
      改成:
      $tag_arr = explode(' ', $tag);
      $tag_sel = array_shift($tag_arr);
      (实验过,绝对可行)因为array_shift的参数是引用传递的,5.3以上默认只能传递具体的变量,而不能通过函数返回值 解决办法 修改完了要记得清理缓存。
      2 :或则如果这样配置的话: error_reporting = E_ALL | E_STRICT 估计也可(未测试过,实验中……)
           修改完上面这个问题之后,可能还会出现下面这个问题:
      Strict Standards: Non-static method cls_image::gd_version() should not be called statically in D:**XXecshopshiincludeslib_main.php on line 1316
      经过查询"includeslib_main.php"文件的1316行发现,还是同样的问题:
      //$ext = end(explode('.', $tmp));
      我们把上面这句拆分为下面这三句:
          $ext = end();   
          $ar = explode('.', $tmp);
          $ext = end($ar);
      就正常了(亲自测试过的,没问题)
      $tmp = basename($tmp,".$ext");
      如果主机的GD库不存在或者版本不同还有可能出现下面这句错误提示:
      Strict Standards: Non-static method cls_image::gd_version() should not be called statically in D:**Xincludeslib_base.php on line 346
      直接找到“includeslib_base.php”文件的346行左右,将这句:
      //return cls_image::gd_version();
      注释掉就可以了,当然,如果你的程序需要GD库支持,那就要咨询下服务器空间商了,只作简要说明,不详述方法咯,本文所述ECSHOP版本为:ECShop_V2.7.3_UTF8,其它版本未测试,请自行研究啦。

    二,ECSHOP错误Redefining already defined constructor for class如何解决

    找到对应代码,将两个构造函数的位置对调一下就可以了,这是到了php5.4以后对这两个函数在代码中的顺序有了严格的要求。

  • 相关阅读:
    js事件分类
    过3s弹出广告条,点叉号关闭
    js进阶
    js入门
    html
    R Markdown + Infinite Moon Reader + 编辑实时更新
    png转ico+windows图标+GIMP
    微生物+计算细胞倍增时间
    使用Mathjax网页插入公式
    Firefox+zoom+全局缩放比例
  • 原文地址:https://www.cnblogs.com/focai/p/4586671.html
Copyright © 2011-2022 走看看