|
|
. m: Y8 k( `* o& Q
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 错误6 ?! N& v/ s2 S# h9 @1 t
解决:找到install/includes/lib_installer.php中的第31行 return cls_image::gd_version();然后在找到include/cls_image.php中的678行,发现gd_version()方法未声明静态static,所以会出错。这时候只要:
' L! F' F$ ?' ]. K 1)将function gd_version()改成static function gd_version()即可。
) g- ~0 s: I. n% I8 s 2)或者将install/includes/lib_installer.php中的第31行return cls_image::gd_version();改成:
2 S0 C; Z& v: m( R1 _! ~' c$p = new cls_image();
7 q( ]+ h3 c0 F p% M$ }( H8 areturn $p->gd_version();
) h# H8 `5 ]- D @. r
; o2 W8 Y2 O$ t4 [% w3 s8 R" R6 n1 t) j! O# Z: m* u* h1 }( e/ O
下载ECShop网店系统V2.7.0正式版,解压,上传后,安装进程进行到第3步:“配置系统”,点击“立即安装”后弹出“安装程序监视器”窗口,内容显示如下:
) I1 ]6 E) N3 k& [$ V M: \安装进程已中止, v% X4 C5 k8 F0 I9 F
创建配置文件............成功
1 u, _# m& ~) V创建数据库............成功& F+ g9 |2 y# g! T8 |% C# v, l6 I
安装数据............成功
8 }' [4 r# o" r$ ]创建管理员帐号............成功
# K0 {0 T6 m! L* W, T2 ?+ i0 F处理其它............失败6 f' V: c9 p* H. O
) D3 n7 [; W) Q" D4 P( s
Warning: mkdir() [function.mkdir]: No such file or directory in /home4/skyrunne/public_html/7dbay/install/includes/lib_installer.php on line 528
8 {, k. j( ^2 [4 M" ~2 q6 ~无法创建目录,无法创建目录' d) X2 ]5 r& ~, a$ l' q' A
解决方法如下:
. g! h, o* B, X& W1 U% Z! i点击“立即安装”前,不选择屏幕最下方的复选框安装测试数据:
- w3 n6 h4 |: c4 A+ E9 a" Z( B) W(选择此项,将默认全选预选商品类型) ,就可以顺利完成,反之就会出现如上的错误提示。
8 U- ~) p0 V h, p) R不安装测试数据库一样可用,一样正常,不是问题.....0 Z4 O6 X6 e; I7 d5 `0 u
愿看到此文章的朋友能解决问题;
b# H) B1 D, r# v2 f9 _3 q/ N. t% ?/ J7 u4 ^" ?! \4 S$ y9 {6 m
2 j: c3 F+ I6 E t2 ^ecshop如何解决includes\cls_template.php on line 418错误' n; G2 z' E" r- _
D7 e& X. g2 \: S, Y/ Y
之前遇到过的问题,一直很苦恼,到底该怎么解决,现在终于找到了解决的方法,现在分享给大家看下,问题如下所示:, w8 k9 V+ n$ P/ U0 o
Strict Standards: Only variables should be passed by reference in upload\includes\cls_template.php on line 4186 _! |8 f; O' j9 w) [3 G% [- o1 U
第418行:$tag_sel = array_shift(explode(' ', $tag));
0 G- o- N6 Y1 U0 r6 e% ?
& x2 U4 p; f5 V; L+ u: s( s/ l解决办法 1:
) |0 e0 j8 v9 T0 [! o5.3以上版本的问题,应该也和配置有关 只要418行把这一句拆成两句就没有问题了 $tag_sel = array_shift(explode(' ', $tag)); 改成:
- ]% U6 i& d; S* Z6 [* G# f+ A . @+ _2 N" y8 J7 s3 ^
$tag_arr = explode(' ', $tag); $tag_sel = array_shift($tag_arr);( a# @6 _2 t1 o: a0 i
(实验过,绝对可行) 因为array_shift的参数是引用传递的,5.3以上默认只能传递具体的变量,而不能通过函数返回值, t5 ?2 T2 c- \5 X6 d
同理举一反三:遇到函数嵌套错误时可以分开写,错误自然解决
7 C6 Z0 P1 e+ p0 D0 h( f1 z9 j
5 z; S# |/ f6 I; x6 v; M. \" m) t如:
# s2 G) U% o! n2 I+ g; V: tfunction get_dyna_libs($theme, $tmp)
6 t0 Y' U7 \6 {# K{# e, f4 ]3 E( k \5 I
$extsub = explode('.', $tmp);
$ c* ]: l; o8 k) s; ?4 h$ext = end($extsub);& z. W6 H; B F+ W8 r
$tmp = basename($tmp,".$ext");
; J3 q) A' D# l: y @ v# i' N$sql = 'SELECT region, library, sort_order, id, number, type' .* }. f4 q) K5 z2 p) e
' FROM ' . $GLOBALS['ecs']->table('template') .5 X, D' V( q( e: F( x7 P
" WHERE theme = '$theme' AND filename = '" . $tmp . "' AND type > 0 AND remarks=''"./ B$ L, Y, g3 Y: X. u5 O
' ORDER BY region, library, sort_order';
" m! |" X- I3 H# M4 g+ c- w# |$res = $GLOBALS['db']->getAll($sql);
! d6 r: j; Y* K! i9 ], L0 F$dyna_libs = array();
! _5 S. l: v e9 q, Vforeach ($res AS $row)( N0 I# j6 y( L1 x) h
{% K. u2 C7 k7 V$ m, a5 u
$dyna_libs[$row['region']][$row['library']][] = array(3 ?) E9 O" ^, s6 Z! o; u) b
'id' => $row['id'],
2 e) |6 n2 ]. \3 s: ?7 w) Q'number' => $row['number'],$ {# K$ R7 j- A, X+ p
'type' => $row['type']
% S! U# j2 D3 V6 Q& I- m/ t);
( u& @3 _5 w) d6 S# O9 }} I3 m/ @6 f5 D% C
return $dyna_libs;
" G4 N+ ?) Q- L @' k& k5 i}
+ r4 x8 ~9 V% A$ b! d
: E8 b/ x. w1 | S将$ext = end(explode('.', $tmp));$ C! w8 l1 m" C2 O' W4 D
改为& N4 O- T, X0 @/ S% k2 i% z
$extsub = explode('.', $tmp);2 y5 v% @0 N" c4 f5 o
$ext = end($extsub);
6 B$ A! F# F9 ~* s5 W1 `% J/ H " b6 ]1 P' [8 e& s1 h; X2 E0 A
解决办法 2(屏蔽错误) : N! r2 M5 J8 X
& h* I" x' F* o8 Z4 I6 O: T1 ~
或则如果这样配置的话: error_reporting = E_ALL | E_STRICT
\0 W" E0 z5 z( Wphp.ini中有如下设置:
, p- k* O. |6 t# a! a2 serror_reporting = E_ALL | E_STRICT
, n5 B4 t- O+ ]! \7 ?
4 ~& h: z$ J. U' h& z这是说,显示那些不符合编码规范的警告(coding standards warnings)。5 I V, }" `0 r$ X
Joomla其实是建议取消error的输出,如果出于调试需要,应改为' Z; U2 U T- E% m) |
error_reporting = E_ALL & ~E_NOTICE9 [4 |' i5 N0 C
& O* Y, u; m7 r" t: d! C
问题得到解决。: O" l9 |( G; `7 \1 v
. O9 ?& z* x- s* c( Z3 W' i2 x, R
Ecshop出现问题 includes\lib_main.php on line 1329 includes\lib_base.php on line
$ W7 u8 X; ~/ q& ?: c/ ephp 5.3版本兼容问题不少,以上函数参数传递问题可以将lib_main.php on line 1329这句 $ext = end(explode('.', $tmp));5 `2 x+ B0 M* k3 \; r. `
改为 :
! \& l8 \: m. q7 W* [! ]$extsub=explode('.', $tmp);$tmp=end($extsub);4 L& w. W' t6 B# e6 `' Q: }2 K
; U" Y; ?' E" c( M% n; l
|
|