|
|
# ^3 e; c; N6 y9 b) X4 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 错误# s6 L& t7 l' ~0 _* J& Y. X: ]3 E/ k, n/ X
解决:找到install/includes/lib_installer.php中的第31行 return cls_image::gd_version();然后在找到include/cls_image.php中的678行,发现gd_version()方法未声明静态static,所以会出错。这时候只要:7 y3 ?0 s; }: n1 K" ?4 X% r1 `6 R$ R8 r
1)将function gd_version()改成static function gd_version()即可。! H; k% d& u& C! `
2)或者将install/includes/lib_installer.php中的第31行return cls_image::gd_version();改成:, O/ T) r) T2 Z. _5 ^& g
$p = new cls_image();
' T- _, ~$ g8 y. i" O0 ureturn $p->gd_version();
+ h @* J$ [; v$ u, Z4 [3 { `1 `$ d' J7 n4 V# S* V
' f9 p+ U4 ~1 S, A- p下载ECShop网店系统V2.7.0正式版,解压,上传后,安装进程进行到第3步:“配置系统”,点击“立即安装”后弹出“安装程序监视器”窗口,内容显示如下:9 K4 a6 Z8 }7 i$ G$ a; m2 m
安装进程已中止# v2 `: A3 Q# z: F/ k( A, ?" s! {
创建配置文件............成功
2 {2 G) G1 A2 L! P1 j- w创建数据库............成功. Y$ `9 n$ E3 E5 C/ D
安装数据............成功: t u& _' U. Q! G+ F
创建管理员帐号............成功
+ Y& A, f- y1 O处理其它............失败. T( e# r: S) u0 c+ s9 l
/ F$ J$ D2 a0 s0 F% k& ?4 T1 `Warning: mkdir() [function.mkdir]: No such file or directory in /home4/skyrunne/public_html/7dbay/install/includes/lib_installer.php on line 528; _ F# Y2 x0 ~/ C- \0 T
无法创建目录,无法创建目录
7 y: u5 I. t( S8 l) R8 [! S解决方法如下:
" A: z, D: W$ ^% P# R) R P5 v点击“立即安装”前,不选择屏幕最下方的复选框安装测试数据: % f W- X6 C! {2 z# E/ ~
(选择此项,将默认全选预选商品类型) ,就可以顺利完成,反之就会出现如上的错误提示。3 p, T; j2 e# ?' Y9 H
不安装测试数据库一样可用,一样正常,不是问题.....
5 S, ]/ {) O4 E愿看到此文章的朋友能解决问题;
; @. U0 T* [) {
: k4 J" @7 a4 ^1 }
3 k, p. n" d% Y- A+ U- Hecshop如何解决includes\cls_template.php on line 418错误! D3 Q6 y! O2 @6 Q R
! [) Y; F* J" g之前遇到过的问题,一直很苦恼,到底该怎么解决,现在终于找到了解决的方法,现在分享给大家看下,问题如下所示:
; ^, S1 i$ D# V. e& dStrict Standards: Only variables should be passed by reference in upload\includes\cls_template.php on line 418
2 V. W6 M6 w Y u" s第418行:$tag_sel = array_shift(explode(' ', $tag));
& C" w' j% d4 L9 r9 h% N. U
* q' I/ D( H+ ?解决办法 1:
. u" x+ e3 H' |' p1 ^4 e/ T5.3以上版本的问题,应该也和配置有关 只要418行把这一句拆成两句就没有问题了 $tag_sel = array_shift(explode(' ', $tag)); 改成:
+ U$ s5 i7 a. c7 P4 |- |2 F
! |& ^, h+ m8 F1 c' @$tag_arr = explode(' ', $tag); $tag_sel = array_shift($tag_arr);
, `5 C: Q' l" ](实验过,绝对可行) 因为array_shift的参数是引用传递的,5.3以上默认只能传递具体的变量,而不能通过函数返回值
( K& @! O4 ^+ H7 L8 a }! {& a+ _同理举一反三:遇到函数嵌套错误时可以分开写,错误自然解决' O, Q. t( P1 J6 }3 g: ^7 e8 ~
U. \: {9 G6 x, y p! j
如:# I1 H, u& h( n7 z( X
function get_dyna_libs($theme, $tmp) E: p5 c0 q7 I. P
{# i. T2 s' j) d& o* U& ]; ~
$extsub = explode('.', $tmp);
3 o6 Y8 \& h3 J. h" W$ext = end($extsub);
6 P; Y8 W9 W/ ~9 m* P* `% r$tmp = basename($tmp,".$ext");# _. G4 F* R. U3 q$ I+ _
$sql = 'SELECT region, library, sort_order, id, number, type' .7 s% q* L% |* w. \2 a% h% Z
' FROM ' . $GLOBALS['ecs']->table('template') .8 A D$ Y( _1 j' ?6 }8 W
" WHERE theme = '$theme' AND filename = '" . $tmp . "' AND type > 0 AND remarks=''".
! H& H: a) B! M& K* x! s' ORDER BY region, library, sort_order';) B7 g' J ?5 j. u1 n" l
$res = $GLOBALS['db']->getAll($sql);$ A X9 e- q: L( d7 o. M
$dyna_libs = array();; j* P$ s: f1 L4 N) P. D6 c/ T
foreach ($res AS $row)
4 o' X% x& L3 `{6 u4 l8 H# o8 k
$dyna_libs[$row['region']][$row['library']][] = array(# A9 [. H% y* }/ g1 o8 B- s$ K
'id' => $row['id'],% f. M: E& ]# _* [& x# [2 Z( _. r
'number' => $row['number'],7 ]$ v" S. E/ V$ G! P
'type' => $row['type']
+ g: t- N5 a5 f7 j) j9 |);
8 Q) R9 J5 T9 @}4 B/ Y, w4 w1 I
return $dyna_libs;; E$ t' f* t1 J& H
}
8 S& q5 d* [3 Y6 n + k& x- e6 F% K
将$ext = end(explode('.', $tmp));2 [% H* g: ]# F# z2 _
改为
" N- F# U) e3 j( ]$extsub = explode('.', $tmp);
+ I+ x0 i0 U K6 K$ext = end($extsub);; f. Y) N! S) H F0 Y& m) q0 r
, L" M2 ^: W: Z9 z4 X2 ^解决办法 2(屏蔽错误) :. Y- b$ e$ x: N) D0 q- d
9 K! i: S: b5 G或则如果这样配置的话: error_reporting = E_ALL | E_STRICT
: N& q, L- ~: ]4 {php.ini中有如下设置:, Q* W( |0 ?$ E; |& |- U& n
error_reporting = E_ALL | E_STRICT
! x5 h# P0 W' r* |2 u W; F + @5 i, U/ F z3 w0 q$ ]
这是说,显示那些不符合编码规范的警告(coding standards warnings)。' G' E7 N* c& O: P) \7 B$ i
Joomla其实是建议取消error的输出,如果出于调试需要,应改为
6 E* r7 _ f9 t* a" Cerror_reporting = E_ALL & ~E_NOTICE8 z# @( N# ?' N
; t( `$ D+ O7 V x F+ p
问题得到解决。3 `7 X+ ?! m$ u: \
3 m4 L) U+ Q+ C7 c. p2 F
# |9 [# M4 g) O! j" F( w8 U! t2 {: |Ecshop出现问题 includes\lib_main.php on line 1329 includes\lib_base.php on line
5 U! J, }8 f( {' G' }php 5.3版本兼容问题不少,以上函数参数传递问题可以将lib_main.php on line 1329这句 $ext = end(explode('.', $tmp));
& E/ P. L" G" I- f7 r1 K: [( Z改为 :2 i9 d' J/ P3 H$ W/ u$ @$ d
$extsub=explode('.', $tmp);$tmp=end($extsub);
$ r0 e" [. l7 {& F4 {' h6 x# C
4 _$ x7 K- ?4 D- H |
|