|
|
dedecms安装完成后会出现登陆后台空白,发布文章时提示”标题不能为空”。
+ E l0 \/ H( q/ R- g
7 C0 l+ Z: f# z8 d7 v$ [, h& h1.解决dedecms登陆后台空白错误
( W% p$ G3 U# Q/ r& S" M: X因为php5.5的版本废除了session_register,所以需要去掉session_register函数& f" ^3 V0 Y# i# }
+ D: V( S! o+ o7 g7 F1 Q. u, J修改:“include/userlogin.class.php”,注释掉session_register,修改后如下
% |$ G6 T \( y//@session_register($this->keepUserIDTag);
+ e- n* F. B+ a* `1 _ y9 E$_SESSION[$this->keepUserIDTag] = $this->userID;
, s6 @1 L2 O! l7 r( o! |
+ j _5 e) m2 N// @session_register($this->keepUserTypeTag);
3 s3 q* l9 }: Q5 j, m+ h$_SESSION[$this->keepUserTypeTag] = $this->userType;, I8 D8 \0 t, m* G0 @
I) }, H' ?3 }' V4 f% E
// @session_register($this->keepUserChannelTag);
0 i; N6 W2 T \! O$_SESSION[$this->keepUserChannelTag] = $this->userChannel;
4 Z% P% H* r' I# I+ I# p2 F$ K) f K+ V( R/ p& T1 U* z
// @session_register($this->keepUserNameTag);
- p5 G& P4 C" ~$_SESSION[$this->keepUserNameTag] = $this->userName;
2 @# c, z: o) z
' z$ N! V5 f; n6 X( o1 M// @session_register($this->keepUserPurviewTag);8 N" |" h: s- e4 J1 C1 `" o
$_SESSION[$this->keepUserPurviewTag] = $this->userPurview;* n% d* e% [# E
2 F9 y+ N5 b8 H3 z// @session_register($this->keepAdminStyleTag);7 z3 x8 O! V$ v7 E" g2 d
$_SESSION[$this->keepAdminStyleTag] = $adminstyle;* o# K/ x/ h' n" e) T/ H
5 y: L4 k, P* w1 q# Z9 D0 K) K
2.dedecms发布文章提示"标题不能为空"
& T. |% \' B. g6 m9 Z) \+ e8 H7 M* f6 ^2 q4 A# U9 q
现象是发布英文标题没问题,发布中文会提示“标题不能为空”* I8 G# B* c8 j; T w$ |
因为htmlspecialchars在php5.4默认为utf8编码,
! J1 `& @5 d' N: v; Z6 A7 Cgbk编码字符串经 htmlspecialchars 转义后的中文字符串为空,也就是标题为空。* e# v# b/ r# A% F5 [6 n
所以给htmlspecialchars添加ENT_COMPAT ,'GB2312'参数修改编码默认值。: _: Y+ @% P7 g9 ^2 R' F4 e, Z
. D( j5 a: b! y, u( y具体方法:& w' n D/ b4 Z1 U
1.在dede安装目录执行0 Q. s: d+ v) ]* v9 j+ N5 U( M
sed -i "s/htmlspecialchars(/gbkhtmlspecialchars(/g" `grep htmlspecialchars\( -rl *`
$ h/ p5 s- N& v2 M) e- c; \6 e! ]5 U" Y) k7 s! B! b
2./include/common.func.php中任意位置添加函数( Y8 m4 |5 g) E. f# d0 ?( T+ S$ {
; l, G+ S i6 l* _
function gbkhtmlspecialchars($str)
' D5 e2 g; D- ]) h3 d! V& h6 `{
! q4 {& S4 q- \: `% M return htmlspecialchars($str, ENT_COMPAT ,'ISO-8859-1');
9 ~! @0 [2 V( _/ B, [}
+ g7 R2 \) T, A2 b注意:使用了本文方法的就不用理会这篇文章了:http://bbs.swdyz.com/thread329sw1dyz1.shtml5 e( G$ E- x6 D$ M# h- R: d
8 G+ k7 X% g% o% z& u' ` |
|