找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 9783|回复: 0

dedecms(织梦)发布文章提示"标题不能为空"及与php5.5兼容问题的解决

[复制链接]
发表于 2014-8-9 11:03:07 | 显示全部楼层 |阅读模式
dedecms安装完成后会出现登陆后台空白,发布文章时提示”标题不能为空”。! u6 H6 I' T0 C* S% Z: X

1 J$ Q! \' n+ I9 {9 C# v1.解决dedecms登陆后台空白错误1 k- |( p, P- L% Q
因为php5.5的版本废除了session_register,所以需要去掉session_register函数9 T8 r5 X, r+ x9 N; D1 L- q' L* G

. _* p8 _8 X5 P% F" j+ w& @修改:“include/userlogin.class.php”,注释掉session_register,修改后如下: b3 n; b8 B  `3 O0 e0 X
//@session_register($this->keepUserIDTag);
- w! f- ^6 j3 \  h/ F# J  Z4 w! B$_SESSION[$this->keepUserIDTag] = $this->userID;6 w6 J! |' E  |3 k( b

8 S! [# v3 h& q// @session_register($this->keepUserTypeTag);
! h+ }: d4 t$ k$_SESSION[$this->keepUserTypeTag] = $this->userType;
: c' w# _3 B8 S9 F/ L! W% d
% l+ e# ^+ f. Q// @session_register($this->keepUserChannelTag);3 U+ K$ T/ O, ~$ q: o1 d+ K$ |5 T& g
$_SESSION[$this->keepUserChannelTag] = $this->userChannel;5 F2 m/ v( |! P& F. p3 t

# }* [9 j% Z9 }$ E  n' T* O// @session_register($this->keepUserNameTag);
: b, v6 `5 x' k: N3 a$_SESSION[$this->keepUserNameTag] = $this->userName;/ J# g/ r% A  M4 z5 S1 N

; \. i# c$ D: o1 r# Z// @session_register($this->keepUserPurviewTag);
5 i* C6 {' w5 o9 G  Y- a$_SESSION[$this->keepUserPurviewTag] = $this->userPurview;
. y) H; j/ y/ `. r4 c5 B$ Y$ g" x- ?. M: V5 [8 L7 _4 i
// @session_register($this->keepAdminStyleTag);
; s$ C/ e7 r" g, t$_SESSION[$this->keepAdminStyleTag] = $adminstyle;
# H- y0 V+ d- U& T7 \
; @6 I$ A4 H* n+ H7 w4 i" C2.dedecms发布文章提示"标题不能为空"7 D, U" f1 f( f; R' U
2 C  R& ~9 G7 K
现象是发布英文标题没问题,发布中文会提示“标题不能为空”
0 G5 u0 c$ T1 C; L7 W& A8 {因为htmlspecialchars在php5.4默认为utf8编码,
# |+ J: \0 ~; [gbk编码字符串经 htmlspecialchars 转义后的中文字符串为空,也就是标题为空。
. ]' z; \/ F5 g: f6 r5 v9 K所以给htmlspecialchars添加ENT_COMPAT ,'GB2312'参数修改编码默认值。$ v( z1 H1 i! _  t0 d) D# c

* l* J: @: d6 U+ Q具体方法:
1 `4 B7 |# ?& H) {3 m1.在dede安装目录执行7 P% l7 S4 o' y9 ~, t: t4 H. _
sed -i "s/htmlspecialchars(/gbkhtmlspecialchars(/g" `grep htmlspecialchars\( -rl *`- c  ]* F4 m- D2 }! u  b

* H5 N6 K* Q6 _, R$ \# K2./include/common.func.php中任意位置添加函数" J( o, Z3 [  Z% Q* G
9 o7 V- \! f  x
function gbkhtmlspecialchars($str)
  Y" y  ~/ S# O& [& x( Z. Y7 I{: K% x& D- j$ T4 T) O
        return htmlspecialchars($str, ENT_COMPAT ,'ISO-8859-1');" J, u- Q. a* q  O4 _# H7 r$ X) l
}3 e/ ?+ P8 d  f' m! k& d5 E
注意:使用了本文方法的就不用理会这篇文章了:https://bbs.swdyz.com/thread329sw1dyz1.shtml! V( e( C1 `- j
  L7 }' I0 [9 w; H( A4 k
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|第一站论坛 ( 蜀ICP备06004864号-6 )

GMT+8, 2025-12-19 07:27 , Processed in 0.058256 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表