|
|
dedecms安装完成后会出现登陆后台空白,发布文章时提示”标题不能为空”。 l+ w3 o; \% |0 X/ p6 ]: `" K1 E
, L" p2 X! s5 i5 w9 T- s# V
1.解决dedecms登陆后台空白错误 ^, s( u$ b' F1 U4 K2 S
因为php5.5的版本废除了session_register,所以需要去掉session_register函数! }% | Z- Z" w/ t- @0 S5 N" P
. F7 H% N2 m, c/ j& m" Y
修改:“include/userlogin.class.php”,注释掉session_register,修改后如下
6 }$ k; J2 _; J//@session_register($this->keepUserIDTag);! @5 } u; [8 `1 V; o" I$ {, `) D
$_SESSION[$this->keepUserIDTag] = $this->userID;
3 `* T' {. D, a8 ?: @" a0 ~1 _
8 o% @+ s; j, c$ H! p// @session_register($this->keepUserTypeTag);
$ ^. l; R# n, \9 L) N; v$_SESSION[$this->keepUserTypeTag] = $this->userType;. }: Z7 {4 }. O' s
) ], v: |- U9 v8 |2 j// @session_register($this->keepUserChannelTag);
! A6 b* J7 S& R' x$_SESSION[$this->keepUserChannelTag] = $this->userChannel;
* i6 d- c: @& F5 y! p4 S8 i
2 {- m: r. T5 ]. N( e) z// @session_register($this->keepUserNameTag);1 |* B) R. w7 i: H: u }
$_SESSION[$this->keepUserNameTag] = $this->userName;
% A, z% c7 c. N) p+ ] Z- P j1 t5 O9 o4 m5 C$ J+ |, D
// @session_register($this->keepUserPurviewTag);
$ d2 G4 n, e1 l$_SESSION[$this->keepUserPurviewTag] = $this->userPurview;
" m2 \% M% _$ H7 p; e0 }# p3 C$ W' E/ A' n& @+ p* d
// @session_register($this->keepAdminStyleTag);+ H' O; j2 }& |
$_SESSION[$this->keepAdminStyleTag] = $adminstyle;
5 f4 C( r+ S" q# }+ A
; z$ b/ x; M2 ~6 t! ~$ }2.dedecms发布文章提示"标题不能为空"- n7 f) y: _7 ^: x$ \9 Q/ b. e
, O( [! X5 o! \* e$ X6 ^5 L
现象是发布英文标题没问题,发布中文会提示“标题不能为空”7 F2 j2 ~2 v- `
因为htmlspecialchars在php5.4默认为utf8编码,* W6 I$ ~+ v, Y4 a
gbk编码字符串经 htmlspecialchars 转义后的中文字符串为空,也就是标题为空。
; O- P! x3 ], E, a* A/ K! k所以给htmlspecialchars添加ENT_COMPAT ,'GB2312'参数修改编码默认值。
/ S0 i+ _" \- F; J3 N: w2 |; g: ?! u; ~- C
具体方法:0 G2 |6 Q0 O! j1 o. X9 V+ _" B
1.在dede安装目录执行
. i" w, Y7 F9 i, H4 W, c- \sed -i "s/htmlspecialchars(/gbkhtmlspecialchars(/g" `grep htmlspecialchars\( -rl *`
! i+ i, S) u3 \0 Q( d
2 o' R e' h; @. s1 O, x+ r3 ^2./include/common.func.php中任意位置添加函数
: o7 T4 `9 K$ f# {' N, X0 E# [* j5 X# i0 Z+ S! M4 L* V! [
function gbkhtmlspecialchars($str)$ l$ @& n" ] X
{
# {2 ~/ I% `# \# A5 m return htmlspecialchars($str, ENT_COMPAT ,'ISO-8859-1');1 w8 k( _5 P3 a
}
`' G( I9 E. _+ K( @$ q6 M! l注意:使用了本文方法的就不用理会这篇文章了:http://bbs.swdyz.com/thread329sw1dyz1.shtml7 s7 x4 r' _; A& E8 J
`3 q; W- j- A, i! Y0 d |
|