|
|
& g* |: N. Q# }$ K
1.Strict Standards: Non-static method cls_image::gd_version() should not be called statically in D:\X\www\ecshop\install\includes\lib_installer.php on line 31 错误
- j' T8 |: r/ Z# R4 I! h: X 解决:找到install/includes/lib_installer.php中的第31行 return cls_image::gd_version();然后在找到include/cls_image.php中的678行,发现gd_version()方法未声明静态static,所以会出错。这时候只要:
7 a% ~. b. q+ x1 m# O" d" m 1)将function gd_version()改成static function gd_version()即可。- P9 k5 q9 b4 x; T3 s
2)或者将install/includes/lib_installer.php中的第31行return cls_image::gd_version();改成:/ } @1 T9 M$ H
$p = new cls_image();2 Y' c# A2 K' K3 l' V8 s* p9 a
return $p->gd_version();/ G& }* `/ U$ D w
5 h; D# Y. n X. K) Q. N, O; @& u" |) ]5 }
下载ECShop网店系统V2.7.0正式版,解压,上传后,安装进程进行到第3步:“配置系统”,点击“立即安装”后弹出“安装程序监视器”窗口,内容显示如下:
% p9 c( I; B7 u* w7 J7 s x# I安装进程已中止 M9 M) C9 C5 ]9 t$ H& b+ E$ ?% o4 E
创建配置文件............成功; L: h' H2 p1 B( P" J! ?2 n! u
创建数据库............成功2 q+ z4 j; G/ \! i& c2 s0 O
安装数据............成功7 d& d% H! s0 D
创建管理员帐号............成功
& X2 B( h4 C9 g& E, |5 \, }2 \处理其它............失败3 r$ y, ~! g c; c2 p" w
( T; f# J1 S3 \9 Y4 h7 iWarning: mkdir() [function.mkdir]: No such file or directory in /home4/skyrunne/public_html/7dbay/install/includes/lib_installer.php on line 528
3 U5 @( B) E8 j* N7 E, a无法创建目录,无法创建目录
# N5 d3 w* Q$ D# R6 c解决方法如下:0 t. ?. M& G: F7 E! ~7 r
点击“立即安装”前,不选择屏幕最下方的复选框安装测试数据:
* U7 V* |$ D# r* X" a3 |" ](选择此项,将默认全选预选商品类型) ,就可以顺利完成,反之就会出现如上的错误提示。
& M$ W* A1 g* E5 x, D不安装测试数据库一样可用,一样正常,不是问题.....
5 o) M: V) f2 b7 {. [愿看到此文章的朋友能解决问题; % N1 S0 U: r6 S7 V$ G* ~2 X3 e
! b3 H+ H" s; l! t
; a$ r( w& e' M( G9 }- recshop如何解决includes\cls_template.php on line 418错误
5 N- n9 b5 Q' @" [: u# \8 [* p# E( u( p* _
之前遇到过的问题,一直很苦恼,到底该怎么解决,现在终于找到了解决的方法,现在分享给大家看下,问题如下所示:% {: A# a3 r+ }/ A
Strict Standards: Only variables should be passed by reference in upload\includes\cls_template.php on line 4180 p s: D9 D% O3 L' F
第418行:$tag_sel = array_shift(explode(' ', $tag));/ _) f! I1 H, y) i% m# d
- c7 P; N) K6 m+ I$ v. y. N, i: X9 W解决办法 1:
3 @2 ^" K, Z8 w. f5.3以上版本的问题,应该也和配置有关 只要418行把这一句拆成两句就没有问题了 $tag_sel = array_shift(explode(' ', $tag)); 改成: 8 U0 e" F/ U" Y, H w) M" B0 h6 y
2 x3 w$ o0 q4 H$tag_arr = explode(' ', $tag); $tag_sel = array_shift($tag_arr);
4 f) i3 h& V1 H: i(实验过,绝对可行) 因为array_shift的参数是引用传递的,5.3以上默认只能传递具体的变量,而不能通过函数返回值
B5 O! N w& w& o4 R3 O9 T同理举一反三:遇到函数嵌套错误时可以分开写,错误自然解决
: N+ N H& z0 y- ? $ G, m+ d$ Z; ]: M$ k6 N$ A
如:# P6 H) N. F4 f
function get_dyna_libs($theme, $tmp)
" A: b3 ~$ |4 f1 Y# `{9 a- C9 u8 d) P: O- j. M
$extsub = explode('.', $tmp);
' i3 D* ?4 z3 m2 A$ V! |: k6 b$ext = end($extsub);2 C, [* q+ @+ }8 A/ x& i
$tmp = basename($tmp,".$ext");! V; [5 Q$ M6 f- f3 o
$sql = 'SELECT region, library, sort_order, id, number, type' .
% u) u8 u8 B, ?; L: F6 g% @' FROM ' . $GLOBALS['ecs']->table('template') .) ]$ _" z' W0 E' o
" WHERE theme = '$theme' AND filename = '" . $tmp . "' AND type > 0 AND remarks=''"./ n' \1 p. S2 T1 v6 N$ D5 ]
' ORDER BY region, library, sort_order';+ B/ Q; N1 |! A$ P+ T4 k+ F1 k
$res = $GLOBALS['db']->getAll($sql);
4 G3 L7 r4 u4 R8 h$dyna_libs = array();
% C8 @8 n; b/ m: j5 Wforeach ($res AS $row)
H' o" |* J- I9 _- X u{
) E% y- p. k4 L$dyna_libs[$row['region']][$row['library']][] = array(% g' }; E5 T6 }
'id' => $row['id'],( `& K# c8 s3 `6 d
'number' => $row['number'],* H) ]; c% A$ E$ w9 |
'type' => $row['type']
$ m2 V3 t9 `( w# @# s" V4 E. ~);
5 H5 J: E/ l1 B}
$ q/ M8 L7 s9 c1 \! I. Nreturn $dyna_libs;" i$ w' F2 [, u
}
% Q4 `& V; `5 `- q * z* C* F8 [% S/ z
将$ext = end(explode('.', $tmp));9 ^3 |. Y( U3 U' U4 e; |
改为
n5 t9 m. ~; j$extsub = explode('.', $tmp);
1 h0 S. D$ c: R9 G) H# R6 N$ext = end($extsub);
( T7 }+ {. _+ b( C+ N
z6 ?: q0 ]8 i解决办法 2(屏蔽错误) :6 k, q6 h6 ^+ U( T$ P' |1 o
/ N& @- |! R$ n& ~2 X
或则如果这样配置的话: error_reporting = E_ALL | E_STRICT E* M. a3 w2 A3 [/ u9 _! o
php.ini中有如下设置:
3 y4 |1 _& P6 a; [3 f" [8 g( Lerror_reporting = E_ALL | E_STRICT
6 @- G9 g8 }5 U1 w! Y $ I% \" l% d/ T
这是说,显示那些不符合编码规范的警告(coding standards warnings)。
: T d9 f9 R. N* e9 }* iJoomla其实是建议取消error的输出,如果出于调试需要,应改为2 i: @( w' c n! {+ d a
error_reporting = E_ALL & ~E_NOTICE
+ z1 x4 ]2 u. s0 ^* e& z! |
. s7 \0 H9 g, u7 ~3 j/ O) n+ S问题得到解决。$ |* h* G+ {, ` D8 t P4 }
3 ]/ m2 v$ P% {5 n" w, R8 |$ K) y0 T' R1 n5 F2 w1 Y; n. u
Ecshop出现问题 includes\lib_main.php on line 1329 includes\lib_base.php on line
% c! j6 y3 `: Z% Uphp 5.3版本兼容问题不少,以上函数参数传递问题可以将lib_main.php on line 1329这句 $ext = end(explode('.', $tmp));
7 K9 G R8 G0 s3 m$ O0 v改为 :
7 p1 X% L3 i1 |- F7 w9 y; T/ [- ?6 K# o$extsub=explode('.', $tmp);$tmp=end($extsub);
O- C/ T! S @) w; C* M; ]8 ^3 Y( e4 O7 v
|
|