|
|
$ o. d( ^! V! [+ U+ _! w: B
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 错误
4 o( S9 p0 }% B" A j' w 解决:找到install/includes/lib_installer.php中的第31行 return cls_image::gd_version();然后在找到include/cls_image.php中的678行,发现gd_version()方法未声明静态static,所以会出错。这时候只要:
0 L R% X6 `" Y5 x 1)将function gd_version()改成static function gd_version()即可。! s' P3 z5 t3 L: F) Q1 f7 |
2)或者将install/includes/lib_installer.php中的第31行return cls_image::gd_version();改成:5 M) f o" @. v% q: d( p, F
$p = new cls_image();) d- _$ q1 w1 J3 F/ e
return $p->gd_version();6 c, |: s( }% X, `$ R
" i& B3 K' L. t7 A- h! l B* x, s
2 Y; i9 d) v: `! W2 c下载ECShop网店系统V2.7.0正式版,解压,上传后,安装进程进行到第3步:“配置系统”,点击“立即安装”后弹出“安装程序监视器”窗口,内容显示如下:, x$ c u) d& G' X7 [) H: k
安装进程已中止
7 S- [6 j4 m4 l4 s! s9 P2 t e) ~- {创建配置文件............成功5 `( e# k* `3 L" ?0 a, G; _
创建数据库............成功9 l* p) Y/ Q( o. E
安装数据............成功( u7 q. y9 `. @0 ~
创建管理员帐号............成功
' C/ ~# ^& N1 T u! ?8 ^处理其它............失败5 ?$ ]- O8 O3 g) S- M
& e! z& S. ]* B& v) i
Warning: mkdir() [function.mkdir]: No such file or directory in /home4/skyrunne/public_html/7dbay/install/includes/lib_installer.php on line 5280 D4 x8 O D4 \/ O* k& J8 u' x
无法创建目录,无法创建目录/ a3 y }7 q; b7 d
解决方法如下:$ c* O9 H0 y' j0 k+ L
点击“立即安装”前,不选择屏幕最下方的复选框安装测试数据:
% {- L U4 h! l5 {(选择此项,将默认全选预选商品类型) ,就可以顺利完成,反之就会出现如上的错误提示。
0 [( K$ d; l; J& B% v) O# j不安装测试数据库一样可用,一样正常,不是问题.....# H) e& p+ H# m
愿看到此文章的朋友能解决问题; 2 N6 Z h+ V0 n" k3 ^
. t0 D( s5 M9 H5 s0 m; n, e1 ? F, E% r4 q1 ` m8 W( }8 k
ecshop如何解决includes\cls_template.php on line 418错误 L1 A+ T' `9 D* V
$ x6 w" F$ | O0 x5 m9 Y之前遇到过的问题,一直很苦恼,到底该怎么解决,现在终于找到了解决的方法,现在分享给大家看下,问题如下所示:5 \" q9 N- v3 O3 o
Strict Standards: Only variables should be passed by reference in upload\includes\cls_template.php on line 418, @- A3 ~: E# R0 P5 I8 F5 j) O( |) N
第418行:$tag_sel = array_shift(explode(' ', $tag));5 `, J, S% A, r* ?: i1 r
0 c* u" s- C0 R解决办法 1:
; g" |6 I% t- l) }" V" p5.3以上版本的问题,应该也和配置有关 只要418行把这一句拆成两句就没有问题了 $tag_sel = array_shift(explode(' ', $tag)); 改成: / h& M; d: D% @' u0 n
+ z( n/ g* j( I/ X% Y8 l$tag_arr = explode(' ', $tag); $tag_sel = array_shift($tag_arr);
[/ y( v" B2 f' f& }& u7 V0 y(实验过,绝对可行) 因为array_shift的参数是引用传递的,5.3以上默认只能传递具体的变量,而不能通过函数返回值& p7 k7 Q4 \. U9 |! c: E
同理举一反三:遇到函数嵌套错误时可以分开写,错误自然解决+ k7 t5 I. Q4 N" B3 t
, z# e6 a [3 r/ ], a* B
如:
+ N4 @" a7 F: [7 I8 sfunction get_dyna_libs($theme, $tmp)
: w! _! Q4 z) `# Q4 K% q{$ N6 n; R7 i$ Z
$extsub = explode('.', $tmp);
4 L* ?2 Z6 k- l7 A8 m9 Z; U4 \$ext = end($extsub);$ u# s# P6 U# u$ X$ {2 U' r* ~
$tmp = basename($tmp,".$ext");
4 h2 |3 J% O9 P, H3 O( t* C$sql = 'SELECT region, library, sort_order, id, number, type' .
- T7 d8 D/ q( @. F1 x' FROM ' . $GLOBALS['ecs']->table('template') .4 D! X! _! `' O$ p0 G/ M2 k
" WHERE theme = '$theme' AND filename = '" . $tmp . "' AND type > 0 AND remarks=''".
4 V( n" k7 d& @% i, J# \! d' ORDER BY region, library, sort_order';
1 R: o6 }3 h5 Y( z9 }- G1 m$res = $GLOBALS['db']->getAll($sql);
c+ @" ~- c3 `0 J" N U N3 F$dyna_libs = array();/ a! x) Y& `4 e6 Q E. m& |! q, H% c9 X
foreach ($res AS $row)
- J( T) v. a% M* O9 J- r{
! J% O$ ?+ r. ?% o, H+ @+ {$dyna_libs[$row['region']][$row['library']][] = array(
9 W9 }& r; q, W/ U/ Z1 \'id' => $row['id'],
' D0 h% Z+ D6 t7 }) c'number' => $row['number'],
) m: N4 Z- S+ A& B'type' => $row['type']* X0 |( e' y4 H; X+ y" V0 l
);
3 b+ G: v) j7 [& |& O}
- ^! G* ^- n6 F: Jreturn $dyna_libs;
: ~3 Q' D0 R( A6 ]}
' F" G6 G! t; `! E2 w ; l Y7 `' l8 D3 T
将$ext = end(explode('.', $tmp));
; G$ _, H" g2 g5 j改为6 m2 H' R0 G2 J2 o% F
$extsub = explode('.', $tmp);
7 e' u( p1 e# G$ext = end($extsub);& a7 r! R( b" v
: P$ f$ A( J. W$ j% O/ b! p9 s5 B2 G解决办法 2(屏蔽错误) :0 `& x$ o: K$ T
* x! b" I* H8 z- P或则如果这样配置的话: error_reporting = E_ALL | E_STRICT, g- X2 q- Z1 F/ N9 q9 v
php.ini中有如下设置:
2 E, t6 G6 l& S4 R7 P7 [error_reporting = E_ALL | E_STRICT
) [; [0 ?# p% u5 P . v2 u& Q9 k0 V( b$ H9 O
这是说,显示那些不符合编码规范的警告(coding standards warnings)。
) P2 o1 X" r& Z# [Joomla其实是建议取消error的输出,如果出于调试需要,应改为7 E' Q0 n7 V3 e, x
error_reporting = E_ALL & ~E_NOTICE8 O7 I/ _' L; ^5 s) P2 F
! k5 [: h. L% `! D0 V4 p
问题得到解决。( D k/ f& |: ], F
/ g4 K/ q3 E) d" d
Q. B( e% m3 o- x
Ecshop出现问题 includes\lib_main.php on line 1329 includes\lib_base.php on line
# v' Z0 T7 V+ W0 r$ Rphp 5.3版本兼容问题不少,以上函数参数传递问题可以将lib_main.php on line 1329这句 $ext = end(explode('.', $tmp)); B0 W) d2 }/ d$ C0 |- o* T1 t
改为 :" k: r; ], q9 s& m9 X
$extsub=explode('.', $tmp);$tmp=end($extsub);
4 O( z! R- P8 V9 C+ N6 i/ ~" _" E7 G% z
|
|