|
|
dedecms安装完成后会出现登陆后台空白,发布文章时提示”标题不能为空”。 g. A& b- ]3 P( C, r
3 I8 Y. q; B' l) K# z, T1.解决dedecms登陆后台空白错误
8 a: n, T* t* k6 A P因为php5.5的版本废除了session_register,所以需要去掉session_register函数
- y1 O1 y* P% F A
7 \% F- [" F# ~, D7 Q2 b' B4 m修改:“include/userlogin.class.php”,注释掉session_register,修改后如下% ` I: j2 x! }# h0 F9 V
//@session_register($this->keepUserIDTag);
; u' H- U6 Y% T+ ^+ e: ^; D$_SESSION[$this->keepUserIDTag] = $this->userID;, ?& ^& `3 \6 i% r; z1 \9 E2 R; m
/ d2 l* a, t/ J+ \8 R' _// @session_register($this->keepUserTypeTag);
0 t) g# C1 `0 d8 ?0 T0 @$_SESSION[$this->keepUserTypeTag] = $this->userType;1 s. f' `& Z# d( f
$ @: i% p- z V' L) B! J' P ?
// @session_register($this->keepUserChannelTag);2 D# o, Q& o8 t" d
$_SESSION[$this->keepUserChannelTag] = $this->userChannel;
. Z; Y9 Y/ q' c( n3 E4 [
. C6 U' o& U5 B* E1 v% g& p& v' @* B// @session_register($this->keepUserNameTag);' i# N- X! n" k" |% u) P" b
$_SESSION[$this->keepUserNameTag] = $this->userName;
$ B/ `% L5 e' Y4 f, f0 G, G/ S( `( j* W' m$ H) r
// @session_register($this->keepUserPurviewTag);
( H" n( v! w( W$_SESSION[$this->keepUserPurviewTag] = $this->userPurview;
+ Z2 x/ @! ], Y6 _; m$ o
0 W1 M& Q! [: z0 d, o// @session_register($this->keepAdminStyleTag);
, m, |' ?; i6 D: S% M$_SESSION[$this->keepAdminStyleTag] = $adminstyle;- `2 H; L2 ?4 u" t1 [+ s) y5 t( x! ^; J
# U6 `3 F9 a' I" J) S, l& F
2.dedecms发布文章提示"标题不能为空"
3 H% w* E+ S& Q |; K
# m A. z! U1 J9 R现象是发布英文标题没问题,发布中文会提示“标题不能为空”7 _5 W- O; ]) n
因为htmlspecialchars在php5.4默认为utf8编码,' d: W; N1 h$ k/ T0 |
gbk编码字符串经 htmlspecialchars 转义后的中文字符串为空,也就是标题为空。
% _8 s" w, M& C5 O5 h. h6 s, w( c所以给htmlspecialchars添加ENT_COMPAT ,'GB2312'参数修改编码默认值。3 ?9 x+ x4 t+ h3 j
. d* l4 f% o: ~8 D6 k7 p
具体方法:/ C; ~. a: j+ B' n- l# U) Y
1.在dede安装目录执行9 k0 O# m# C' Q; T# S5 n
sed -i "s/htmlspecialchars(/gbkhtmlspecialchars(/g" `grep htmlspecialchars\( -rl *`
7 Y9 ~& b" G* ]0 [9 I, {: w+ |% s- f% F
2./include/common.func.php中任意位置添加函数1 Y- _8 q, v3 F, O% x
- s6 B( k x, R) L$ P8 y7 G" gfunction gbkhtmlspecialchars($str)
- B6 L2 ?0 ]+ U4 u{
; R* S6 `' Y* Q u! } return htmlspecialchars($str, ENT_COMPAT ,'ISO-8859-1');
# O- n' n- O k" k/ H( N) O2 j}' y* Q% }2 d4 A0 m
注意:使用了本文方法的就不用理会这篇文章了:http://bbs.swdyz.com/thread329sw1dyz1.shtml: J: |8 B2 H: {6 Q- t) ~8 e
. o8 s9 c D) k
|
|