|
|
. |" K, Y8 \2 O1 o 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 错误
& \/ ^& i P) S! k 解决:找到install/includes/lib_installer.php中的第31行 return cls_image::gd_version();然后在找到include/cls_image.php中的678行,发现gd_version()方法未声明静态static,所以会出错。这时候只要:
, B8 @3 ~; B) l8 P1 t6 ] `" n7 ~ 1)将function gd_version()改成static function gd_version()即可。% j8 C2 w: F3 _% F0 K0 _; F3 G0 Y
2)或者将install/includes/lib_installer.php中的第31行return cls_image::gd_version();改成:
4 _$ h5 |2 V, @9 H. J. M- r+ \$p = new cls_image();1 P% O4 @. T7 Z" [) m* M
return $p->gd_version();* I9 m/ L$ T" Q' A( r7 k8 f
& f2 }6 k6 S' G2 C, |& |
. p; w5 s/ V3 e3 S; s下载ECShop网店系统V2.7.0正式版,解压,上传后,安装进程进行到第3步:“配置系统”,点击“立即安装”后弹出“安装程序监视器”窗口,内容显示如下:
( y+ o) o5 K2 k4 l- d' U$ J安装进程已中止
! j, Z- [+ z* F5 ~% q) s& A创建配置文件............成功1 s% R: H- r8 D2 f
创建数据库............成功+ i" x8 W; S8 I) T2 ~
安装数据............成功
: H, f6 |9 Z, z) o创建管理员帐号............成功. Q8 ~; s a% k% b7 E
处理其它............失败+ H2 r( L; q: u8 d
# e! J0 v7 [: i$ e: q$ r( I$ i
Warning: mkdir() [function.mkdir]: No such file or directory in /home4/skyrunne/public_html/7dbay/install/includes/lib_installer.php on line 528# u0 c8 s5 t* X* D; A
无法创建目录,无法创建目录- w+ f) j, W: b# u6 {7 i
解决方法如下:
8 p# N7 Z$ G- M% _% e$ u* A点击“立即安装”前,不选择屏幕最下方的复选框安装测试数据:
' C H+ B; S/ k% \1 }) T" Q(选择此项,将默认全选预选商品类型) ,就可以顺利完成,反之就会出现如上的错误提示。
: ?6 G! O: O0 {, N N- k% g不安装测试数据库一样可用,一样正常,不是问题.....& Q: h; j! j. D0 g! `9 N, U
愿看到此文章的朋友能解决问题;
3 X' J7 V2 f8 C# g8 Z: X* b) T2 \
4 j. C. Y! b. P1 h
. a2 ]1 C, B" E J8 K8 R2 K4 U, [ecshop如何解决includes\cls_template.php on line 418错误
7 H/ F" q- {2 U4 [: J1 y' _% k' r; K+ d+ r
之前遇到过的问题,一直很苦恼,到底该怎么解决,现在终于找到了解决的方法,现在分享给大家看下,问题如下所示:0 e, }0 ?5 d2 R/ y) i
Strict Standards: Only variables should be passed by reference in upload\includes\cls_template.php on line 418: z3 e0 z" ?6 x% p4 K
第418行:$tag_sel = array_shift(explode(' ', $tag));
: p# a7 n% v( G3 {6 b5 G 4 Q6 [+ \2 B* S/ V4 Y2 N! E& v$ X
解决办法 1:$ k$ x$ V' x; V" l# x
5.3以上版本的问题,应该也和配置有关 只要418行把这一句拆成两句就没有问题了 $tag_sel = array_shift(explode(' ', $tag)); 改成: ' v5 N- I% A. ^7 i! l/ B
$ M3 @7 G$ A% N& }
$tag_arr = explode(' ', $tag); $tag_sel = array_shift($tag_arr);6 T# B- B4 ^3 p0 F3 _6 F
(实验过,绝对可行) 因为array_shift的参数是引用传递的,5.3以上默认只能传递具体的变量,而不能通过函数返回值
* U5 a4 a8 N( n e1 g; W! T$ ~同理举一反三:遇到函数嵌套错误时可以分开写,错误自然解决3 V. g1 f* i# e% L: g
- L0 K" x& T! N |7 c
如:6 q" V: e) f; M& O
function get_dyna_libs($theme, $tmp)
) q' D# [$ \6 x% S& \. d/ f( l! y{
4 J+ h( o+ X8 S1 W6 `' ]4 L$extsub = explode('.', $tmp);( A9 e4 \( E# |5 N
$ext = end($extsub);5 {% u! y* F O5 r* D. M
$tmp = basename($tmp,".$ext");
- Y; P- c; ]2 N* |# e! }$sql = 'SELECT region, library, sort_order, id, number, type' .
3 l: U+ L5 q7 k& w4 S' FROM ' . $GLOBALS['ecs']->table('template') .- A" `% X$ h6 H% M, T' O3 J: h
" WHERE theme = '$theme' AND filename = '" . $tmp . "' AND type > 0 AND remarks=''".; {; Y) c" @/ q/ Y& B/ D$ R$ ]' d
' ORDER BY region, library, sort_order';
0 b6 {7 a2 w( A8 e, c$res = $GLOBALS['db']->getAll($sql);
9 g2 p9 \8 A$ l/ z/ C! `, \& H$dyna_libs = array();; j: C! T: u8 s% {
foreach ($res AS $row)
) I: y3 }# E8 c5 k{
: D) q: Z' E4 Q u& Z( J7 k$dyna_libs[$row['region']][$row['library']][] = array(
c! t0 a: Y$ H3 t. N' A& f7 \8 C+ c'id' => $row['id'],
9 a& S' P4 r/ R" d1 m1 W'number' => $row['number'],
1 n+ A. x |' k1 }7 E+ C'type' => $row['type']: X5 P3 V. P' m: J6 H) z
);
2 U3 ^! a# R1 j l; g' @7 P. a$ B5 f% D}4 d3 L& u' H5 ~+ v) \" z
return $dyna_libs;
- E0 q7 U" g8 X* l5 k4 q8 _: m}- j- n, [" X4 k6 f7 f1 U
- Q n& Z* T0 D( Z: m' X
将$ext = end(explode('.', $tmp));8 k5 Y4 f' n3 c+ I- O
改为
) Z# n% |3 R8 W4 X$extsub = explode('.', $tmp);
1 _$ F: _8 n$ c* F7 W: k$ext = end($extsub);
" J' \3 r0 X; Q5 G0 c 6 z- t4 Y' a, I3 s
解决办法 2(屏蔽错误) :2 g- b% e8 h/ K7 L: q, ]3 a
' A. W% d4 b2 X7 U+ y: ^
或则如果这样配置的话: error_reporting = E_ALL | E_STRICT8 O2 i# F( N \4 Q o' t2 _
php.ini中有如下设置:* E1 t0 C3 w% _" {- X
error_reporting = E_ALL | E_STRICT
% y1 X( V1 o: y8 s0 H: ^
9 g# ]4 N( d% ?' V) }& I) t这是说,显示那些不符合编码规范的警告(coding standards warnings)。/ F3 U# G# d2 z% k
Joomla其实是建议取消error的输出,如果出于调试需要,应改为2 G }( i2 H, |' J; A4 O
error_reporting = E_ALL & ~E_NOTICE ]% {6 I4 |5 f
8 _5 t, V3 @8 z+ Q+ y
问题得到解决。
* g% {/ c# P, k8 `0 J0 }! d
, I5 V( _; L2 N+ x
. B1 F/ {# T5 I5 d; HEcshop出现问题 includes\lib_main.php on line 1329 includes\lib_base.php on line
( ~) r. g0 h5 }/ X% X5 @+ Tphp 5.3版本兼容问题不少,以上函数参数传递问题可以将lib_main.php on line 1329这句 $ext = end(explode('.', $tmp));: h( c5 j7 S/ V s3 N
改为 :# p- y6 C7 H2 n; m( j+ X' _
$extsub=explode('.', $tmp);$tmp=end($extsub);- |8 F8 n3 ]7 H& ]
* r2 U" R. {& H* j* k, | |
|