找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 8625|回复: 0

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

[复制链接]
发表于 2014-8-9 11:03:07 | 显示全部楼层 |阅读模式
dedecms安装完成后会出现登陆后台空白,发布文章时提示”标题不能为空”。
& D  L1 Y+ B! R) L; B. S" ]! C7 h5 G9 T8 B
1.解决dedecms登陆后台空白错误
; o) i' O9 V" y0 Q因为php5.5的版本废除了session_register,所以需要去掉session_register函数  _4 ], E4 Z) [' ~8 t
) `, l! @! x; ?/ G' F1 _
修改:“include/userlogin.class.php”,注释掉session_register,修改后如下% `! B9 I: m6 b
//@session_register($this->keepUserIDTag);" L3 c7 a7 j* Q! Q, x/ T
$_SESSION[$this->keepUserIDTag] = $this->userID;
, S5 i* K/ y. X+ \& z6 v% R4 S7 }% _0 i' K
// @session_register($this->keepUserTypeTag);* H" |8 W4 G' T' c+ [
$_SESSION[$this->keepUserTypeTag] = $this->userType;" K. Z' [+ \% g: h
2 ~. j2 ?' P+ ?4 r6 |2 j
// @session_register($this->keepUserChannelTag);
. P: U4 Z: G$ W2 m$_SESSION[$this->keepUserChannelTag] = $this->userChannel;
* Y2 `& y2 p) N8 W7 z: ~$ i+ w$ u3 g) {$ Y) F' b
// @session_register($this->keepUserNameTag);
( y) s1 s3 Q/ X' y$_SESSION[$this->keepUserNameTag] = $this->userName;
% ?0 a; y% B9 O: A; t- V
, D  P: ^; N4 D2 v# e  q1 }* F4 L// @session_register($this->keepUserPurviewTag);
9 E+ i0 ^( z( ?+ O$_SESSION[$this->keepUserPurviewTag] = $this->userPurview;0 s! P2 D6 S7 t* H' Y8 L! ]

9 A, V7 u6 a" `9 o8 E, t( f// @session_register($this->keepAdminStyleTag);
" d" Q: G. j5 e, q$_SESSION[$this->keepAdminStyleTag] = $adminstyle;
$ U8 i/ p1 T" O6 o* u. h5 Z1 E: S
! Y( H: q4 F; u9 D2.dedecms发布文章提示"标题不能为空"
# N" K$ ^& L" v- L& p2 y7 M& Q7 v
- x7 l# a3 K: y2 n现象是发布英文标题没问题,发布中文会提示“标题不能为空”
/ J9 @) \4 a* y. s因为htmlspecialchars在php5.4默认为utf8编码,
1 G6 n0 S) W' P& ~gbk编码字符串经 htmlspecialchars 转义后的中文字符串为空,也就是标题为空。
" {( F4 Q, d% C# G所以给htmlspecialchars添加ENT_COMPAT ,'GB2312'参数修改编码默认值。
" D8 Z! @( t6 h& i5 _# r. K! {
5 }5 s* H7 F( A5 d% p; d4 a2 C具体方法:
& {  F. o$ ]& j. H3 Z/ M* K' J1.在dede安装目录执行. `) `0 o9 S. l7 M! v
sed -i "s/htmlspecialchars(/gbkhtmlspecialchars(/g" `grep htmlspecialchars\( -rl *`
: D! |+ v$ o8 I- D. c9 ?: ~( b! _# ?2 e9 g& ^- h* I) O* a9 f8 \
2./include/common.func.php中任意位置添加函数: |* R% t! Y# i, Y, n

6 N1 G) A# `* b( L; Z$ Pfunction gbkhtmlspecialchars($str)* ~4 B# a3 K& W0 Z+ A* C$ k
{, t7 ^/ t  e4 ]  C" u/ H
        return htmlspecialchars($str, ENT_COMPAT ,'ISO-8859-1');' E2 {, ^0 |; v% x- F$ F7 Y
}2 Q1 S1 Q4 O1 U2 R/ ^6 B2 q
注意:使用了本文方法的就不用理会这篇文章了:https://bbs.swdyz.com/thread329sw1dyz1.shtml
; ]- h& ?$ c/ h1 `+ }; h6 s' S1 {6 ^5 ]! i
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-4-5 00:58 , Processed in 0.067269 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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