|
|
7 B6 G' l& t% G
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 错误
& z" a+ \+ z* r& p5 L 解决:找到install/includes/lib_installer.php中的第31行 return cls_image::gd_version();然后在找到include/cls_image.php中的678行,发现gd_version()方法未声明静态static,所以会出错。这时候只要:
4 ^: M9 ~5 x' N- o P* k 1)将function gd_version()改成static function gd_version()即可。) M h C4 p3 c) \7 k
2)或者将install/includes/lib_installer.php中的第31行return cls_image::gd_version();改成:
4 k; E5 Q, G" F( T: z5 @$p = new cls_image(); L0 s5 c/ T" A7 L+ y5 a& p; a4 D
return $p->gd_version();
9 O8 n6 F9 f) @$ ~% [0 n3 F! B! L( A& M$ r4 v! I
C- ]2 J( n7 s下载ECShop网店系统V2.7.0正式版,解压,上传后,安装进程进行到第3步:“配置系统”,点击“立即安装”后弹出“安装程序监视器”窗口,内容显示如下:5 X6 y D( c6 y! g6 m
安装进程已中止
6 |5 {0 j7 f" t' B& U- {创建配置文件............成功) c# ~; v- l/ d, X7 _2 C/ K
创建数据库............成功" x" J$ ^7 f& K1 A) ]
安装数据............成功; [" X5 A N, d* A5 K! s. |# ]
创建管理员帐号............成功1 A* c% O8 A' ~1 h; N# I* s, S
处理其它............失败
- X; ?; |$ {8 [* J6 q
) |" q) w/ {4 w+ j, C# j+ |Warning: mkdir() [function.mkdir]: No such file or directory in /home4/skyrunne/public_html/7dbay/install/includes/lib_installer.php on line 528
$ r, B$ l" ~$ {9 Z! B. Z无法创建目录,无法创建目录
7 t9 V% R0 I, w, D; @. O1 B解决方法如下:
$ Q6 i c6 Z9 ?- A( T: P点击“立即安装”前,不选择屏幕最下方的复选框安装测试数据:
; V! ^ v Y* {; C5 J% z(选择此项,将默认全选预选商品类型) ,就可以顺利完成,反之就会出现如上的错误提示。
8 L) A! S4 e1 s不安装测试数据库一样可用,一样正常,不是问题.....
[# M N3 t( |/ g' p愿看到此文章的朋友能解决问题; ( s8 G. g5 y }" V3 A8 |; a
4 m+ i2 ~- H$ g! h! B( U- R, U1 Y; r, U
ecshop如何解决includes\cls_template.php on line 418错误; u! Z$ _2 v1 I9 g2 J. v1 u6 M
6 L# Z, X; I. k, B之前遇到过的问题,一直很苦恼,到底该怎么解决,现在终于找到了解决的方法,现在分享给大家看下,问题如下所示:
0 V5 z, x. P8 ~. qStrict Standards: Only variables should be passed by reference in upload\includes\cls_template.php on line 418
( w6 {3 a) X5 N4 @% K2 a: N3 c$ m第418行:$tag_sel = array_shift(explode(' ', $tag));3 ]9 p/ A& d+ t5 ~, t
1 `' [6 q2 S! @6 p- a解决办法 1:, c9 \6 [* b2 j8 J1 o, e' g
5.3以上版本的问题,应该也和配置有关 只要418行把这一句拆成两句就没有问题了 $tag_sel = array_shift(explode(' ', $tag)); 改成:
6 q1 ]7 h0 S7 N4 p. y8 V
: I( H+ D' D! p$tag_arr = explode(' ', $tag); $tag_sel = array_shift($tag_arr);, b& P5 i% O. j: Y: \# Z: J9 Z) P
(实验过,绝对可行) 因为array_shift的参数是引用传递的,5.3以上默认只能传递具体的变量,而不能通过函数返回值- s& M: i' Z) G- d* v" y
同理举一反三:遇到函数嵌套错误时可以分开写,错误自然解决
+ p3 a* X: @8 w
2 ]0 q, ^ w3 Z9 |如:8 U( t: D+ E& F) o: M9 [6 D; _3 s
function get_dyna_libs($theme, $tmp)) d K& s- ~9 \ [4 J. U! L( F% m
{
2 w5 j- k" J1 Z7 Z8 q% s/ F8 ?6 o$extsub = explode('.', $tmp);% p L9 P% E0 P. i
$ext = end($extsub); R9 ?7 ?9 `/ B0 f/ X5 |/ }# R5 d
$tmp = basename($tmp,".$ext");" B" h. g# {: F7 H+ a
$sql = 'SELECT region, library, sort_order, id, number, type' .
4 H8 I1 v& }! j' FROM ' . $GLOBALS['ecs']->table('template') .
( R* D0 i: \/ u" j3 k" WHERE theme = '$theme' AND filename = '" . $tmp . "' AND type > 0 AND remarks=''"." v2 Y! `" L4 E6 _
' ORDER BY region, library, sort_order'; ~7 O6 V' A3 L4 v- J. R: R
$res = $GLOBALS['db']->getAll($sql);3 Z6 u; x% U- A
$dyna_libs = array();; Y8 _% O! U# H. z
foreach ($res AS $row): q$ n; c1 l7 j# H% [7 V
{
. e; @, `' v6 v) }# i$dyna_libs[$row['region']][$row['library']][] = array(
6 n$ g; m2 U$ j! R'id' => $row['id'],
, x& J3 s# V. V9 N/ z'number' => $row['number'],
% L: D- M% f$ g, W6 L+ l'type' => $row['type']" I1 `9 S& }) {( x
);
. v/ T4 Z4 D8 F$ S- p% r}
9 ^1 F; V& w$ ~. Z y! _return $dyna_libs;
, k! F s, b$ e) I}
% v6 |+ ~ E c( b: Z 5 }6 Y# O% S, F) A3 B
将$ext = end(explode('.', $tmp));+ w, V, r( Z4 N0 h& N+ m
改为
+ s3 ]5 \$ l( u$extsub = explode('.', $tmp);; l& P |/ `7 z% C; m4 H0 \
$ext = end($extsub);3 c& @' y% [6 f8 g% I4 R
+ v( y$ \6 S5 x+ g" F" y解决办法 2(屏蔽错误) :4 n6 P3 S' r( ]
, b( G% H: I& i4 ]4 \或则如果这样配置的话: error_reporting = E_ALL | E_STRICT2 f! c9 U: s, Q% M l
php.ini中有如下设置:
+ [* t+ q! ^6 J6 ?% @: [ H) lerror_reporting = E_ALL | E_STRICT6 o1 C! c+ m8 I) f3 e
& ]6 x7 a, A4 J; o这是说,显示那些不符合编码规范的警告(coding standards warnings)。0 ~! ?: T4 F. l* r1 v+ P% `
Joomla其实是建议取消error的输出,如果出于调试需要,应改为3 R+ ^/ k- Z& s' X! v
error_reporting = E_ALL & ~E_NOTICE$ q/ o0 _, m( ^$ y, [
) d8 t- ]4 O J3 I0 h3 N: f
问题得到解决。
% c4 Y" p# ?' q$ h' G, @- ?8 A) T0 o) E
6 Z7 w* f( ]1 A1 y
Ecshop出现问题 includes\lib_main.php on line 1329 includes\lib_base.php on line
5 i# F1 ]& X' m4 G/ Zphp 5.3版本兼容问题不少,以上函数参数传递问题可以将lib_main.php on line 1329这句 $ext = end(explode('.', $tmp));
! n! y5 r7 K( ?0 Z! F! K/ g8 R, {+ t改为 :8 v. }' ~1 X; V d
$extsub=explode('.', $tmp);$tmp=end($extsub);
2 d' N$ e2 j& @! L. N' V3 a& [/ @+ H) O# {; O5 D6 Y! C
|
|