|
|
; \6 h4 }9 q r( m! r9 d% m3 J 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. T/ b+ i* `( b I
解决:找到install/includes/lib_installer.php中的第31行 return cls_image::gd_version();然后在找到include/cls_image.php中的678行,发现gd_version()方法未声明静态static,所以会出错。这时候只要:- W' Q" D$ F! `. f- {! f
1)将function gd_version()改成static function gd_version()即可。 S( E1 ^2 Z8 ]2 J) _
2)或者将install/includes/lib_installer.php中的第31行return cls_image::gd_version();改成:! f P8 [3 s/ [' ?, ^
$p = new cls_image();
- _" q' I- z( x' [7 Jreturn $p->gd_version();: j4 p$ ^; e: s( W7 b# h# N
# o+ m4 f! n) f) s+ `$ I
8 [+ @4 s5 s! \6 T$ q, j. \下载ECShop网店系统V2.7.0正式版,解压,上传后,安装进程进行到第3步:“配置系统”,点击“立即安装”后弹出“安装程序监视器”窗口,内容显示如下:* k0 X0 K" n+ I2 p6 ?; r
安装进程已中止
+ W; ~; d8 h$ `# ~/ }创建配置文件............成功
; ] U# ?) V* [. H2 I8 ?* ^/ u. k$ u创建数据库............成功
7 D5 C) u" _5 N1 E G安装数据............成功! g, j. f/ `4 S
创建管理员帐号............成功
2 W7 j4 J5 {* M7 I0 O/ ~/ u处理其它............失败( G6 H" t; f2 Z2 ?5 K3 @4 K
5 y9 x" {3 _0 {& ` z; [, g( d
Warning: mkdir() [function.mkdir]: No such file or directory in /home4/skyrunne/public_html/7dbay/install/includes/lib_installer.php on line 5286 {- y' J& a- ^( }$ y+ r. l _
无法创建目录,无法创建目录% z/ q0 d& x6 u, c% o2 F
解决方法如下:5 [* Y3 A- v) N6 K
点击“立即安装”前,不选择屏幕最下方的复选框安装测试数据:
; N: M! R; L. _7 O1 s }+ o9 z(选择此项,将默认全选预选商品类型) ,就可以顺利完成,反之就会出现如上的错误提示。, `2 h( i- G. L8 Y) ?; R
不安装测试数据库一样可用,一样正常,不是问题.....6 I" i: X6 a/ B: ]4 X
愿看到此文章的朋友能解决问题;
7 r0 X. G( F2 y
( a' Y1 I* G$ n
4 P- t7 X! D6 K& N' [5 tecshop如何解决includes\cls_template.php on line 418错误
" f3 \5 S% T5 X, X% x
+ I+ C, P3 [, w/ _之前遇到过的问题,一直很苦恼,到底该怎么解决,现在终于找到了解决的方法,现在分享给大家看下,问题如下所示:
/ J1 I+ W: [3 j$ vStrict Standards: Only variables should be passed by reference in upload\includes\cls_template.php on line 418, F% ~: z7 I5 y; n
第418行:$tag_sel = array_shift(explode(' ', $tag));& j$ L' a6 @# p4 J. j
+ w" [0 a& m+ Y7 u, y- f解决办法 1:/ n+ A- s& i8 E U$ S) I- F
5.3以上版本的问题,应该也和配置有关 只要418行把这一句拆成两句就没有问题了 $tag_sel = array_shift(explode(' ', $tag)); 改成: " a/ \& f: Y6 @; O/ i! F* G( v
3 v0 A* m5 S, ^' X2 B
$tag_arr = explode(' ', $tag); $tag_sel = array_shift($tag_arr);5 [8 s: }2 J; G3 C, P7 A
(实验过,绝对可行) 因为array_shift的参数是引用传递的,5.3以上默认只能传递具体的变量,而不能通过函数返回值$ K& N6 i3 Y) p0 G1 M- o
同理举一反三:遇到函数嵌套错误时可以分开写,错误自然解决
7 y/ L4 l+ I+ I- X" a ; E- X( H9 }" l* l
如:8 r" W. d' p- }
function get_dyna_libs($theme, $tmp)
~+ }8 F" J5 @{, V( B6 t+ x% y; }4 `# d
$extsub = explode('.', $tmp);3 ?5 o; [9 L% P- \4 Y
$ext = end($extsub);
$ q' V% \7 t- f1 D3 ~. J, I" J$tmp = basename($tmp,".$ext");
s' R5 I( G, K( |: s( H' `$sql = 'SELECT region, library, sort_order, id, number, type' .4 M; d" c$ {/ g
' FROM ' . $GLOBALS['ecs']->table('template') .
|2 {* H+ _9 Q- o2 L" WHERE theme = '$theme' AND filename = '" . $tmp . "' AND type > 0 AND remarks=''".
, O" Z S2 q9 M+ B- `- i3 ^& U' ORDER BY region, library, sort_order';
. t3 S$ T+ R- v3 O$res = $GLOBALS['db']->getAll($sql);% Z/ I; n1 v2 g" P
$dyna_libs = array();0 Y$ L) G' \9 ~# W# p* I$ T A5 P
foreach ($res AS $row)- S$ o: L/ h7 G- E& \
{9 V+ k- A2 a9 p
$dyna_libs[$row['region']][$row['library']][] = array(
* K# {& _: z6 q3 X: T5 _4 n" W9 I'id' => $row['id'],$ k9 Y2 x& `7 w! Z' k
'number' => $row['number'],
4 G/ D- G! d6 e) w5 L) R1 U1 V'type' => $row['type'], o6 x: J- C* U% n4 A; M* b+ _
);
! w4 k9 k( e, A}
p2 Z' R! ~/ O" r, n6 Sreturn $dyna_libs;
1 r: |; k# c+ d8 q9 u, v4 Y}
( e3 z# m! h1 I o2 d# P t/ {$ [; G 8 n' k6 T# x5 @
将$ext = end(explode('.', $tmp));
1 N! h* p1 H8 q0 F改为" G R2 F9 t5 v b0 }
$extsub = explode('.', $tmp);+ U& w( F( q/ T: b9 B
$ext = end($extsub);
6 q- _5 @, m. ]% J. h b+ A# o
: u$ ^3 L& h' O7 b解决办法 2(屏蔽错误) :$ I: c L9 U: T, @2 |0 k9 C
, h& C4 m# f1 y9 o" N5 e3 A( i2 {或则如果这样配置的话: error_reporting = E_ALL | E_STRICT
1 d6 H' [+ }& Q5 a5 a3 O2 w, j yphp.ini中有如下设置:, F) X4 B" q ~" w
error_reporting = E_ALL | E_STRICT' @& O. G" m# X' P2 D, y) |
2 _7 k/ A. E+ U8 ?& R% @6 W; C
这是说,显示那些不符合编码规范的警告(coding standards warnings)。) t H$ A/ [" \1 ~% h4 Y# ~: J9 C7 J2 t
Joomla其实是建议取消error的输出,如果出于调试需要,应改为9 y! S% O* m+ S& m+ ]6 s4 s2 t
error_reporting = E_ALL & ~E_NOTICE
6 C# X4 f H3 [8 P2 N1 h# B) r# w 6 D d7 S& x! \: _1 {
问题得到解决。
7 V; I: b+ C+ h
! N: ]9 {& l- E
4 w/ u6 n( e+ {2 lEcshop出现问题 includes\lib_main.php on line 1329 includes\lib_base.php on line
% h4 t$ R* T& Qphp 5.3版本兼容问题不少,以上函数参数传递问题可以将lib_main.php on line 1329这句 $ext = end(explode('.', $tmp));
( Z3 y! N. v8 R) f改为 :
# z9 r# ^" _; W' H$extsub=explode('.', $tmp);$tmp=end($extsub);6 [2 U7 y/ i" J% `# k6 ?
0 E$ j2 K# w$ v! i |
|