找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 10819|回复: 0

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

[复制链接]
发表于 2014-8-9 11:03:07 | 显示全部楼层 |阅读模式
dedecms安装完成后会出现登陆后台空白,发布文章时提示”标题不能为空”。
# d3 _- C" ?0 h9 j5 f* T
$ T/ V1 h9 l/ R9 |+ ^1.解决dedecms登陆后台空白错误5 T. ~& H# N: q7 Q" K  P- N/ e
因为php5.5的版本废除了session_register,所以需要去掉session_register函数- x9 N4 ^) L- S3 l0 M

) }  h. r% w4 \4 d修改:“include/userlogin.class.php”,注释掉session_register,修改后如下# x5 J+ K7 h/ X  d9 g
//@session_register($this->keepUserIDTag);6 c7 V7 O$ ^, p2 p; Z, i
$_SESSION[$this->keepUserIDTag] = $this->userID;
- {: T: p% W) w
8 X( |" N0 ]/ T" H7 N# {1 w// @session_register($this->keepUserTypeTag);
0 c9 M$ F% B) F& S$_SESSION[$this->keepUserTypeTag] = $this->userType;& w6 b+ d' r  @& [* [

; F! g. A9 ?. W* i7 e8 P// @session_register($this->keepUserChannelTag);
6 x  Q$ W; \9 q$_SESSION[$this->keepUserChannelTag] = $this->userChannel;$ x6 H+ ~- f5 N6 ^3 `/ V
: U* E: Y- |- r/ S1 e
// @session_register($this->keepUserNameTag);* I! E) G( X! F' ]+ m
$_SESSION[$this->keepUserNameTag] = $this->userName;( r" s: J4 C% m! F) L. ]$ C
+ ^- A+ L: o2 i4 ~* w5 N# r) Q2 U
// @session_register($this->keepUserPurviewTag);) M; C& I4 E! t' d
$_SESSION[$this->keepUserPurviewTag] = $this->userPurview;  ]) P# C* F* g) h# j

! e* `6 a2 P/ ]. y# A: l// @session_register($this->keepAdminStyleTag);+ \( m" }% H! d1 }6 J& a
$_SESSION[$this->keepAdminStyleTag] = $adminstyle;
0 ^! d9 J/ |/ @7 x( m* g  w
8 u/ z: j/ Q4 @6 n& e& y2.dedecms发布文章提示"标题不能为空"  p5 a/ Y* Z$ n+ ^) y
7 h  g0 i' }: w: v3 v& \7 |1 v
现象是发布英文标题没问题,发布中文会提示“标题不能为空”0 D0 g0 I' @2 {" ~% v6 H' i+ {
因为htmlspecialchars在php5.4默认为utf8编码,
7 H% E+ i; q5 t) s  ?) t: F) Ugbk编码字符串经 htmlspecialchars 转义后的中文字符串为空,也就是标题为空。
- J, c; Y# @4 z# u所以给htmlspecialchars添加ENT_COMPAT ,'GB2312'参数修改编码默认值。3 Y4 J) L; C" u% a

! E( N, X0 S: [具体方法:
, k$ `+ E; I6 y6 ?/ a1.在dede安装目录执行! `2 q7 i# I6 K. g( X
sed -i "s/htmlspecialchars(/gbkhtmlspecialchars(/g" `grep htmlspecialchars\( -rl *`
* Z$ Y$ K9 E1 f5 \; p# a& x8 K
1 r9 ?  p0 F! J5 M7 m2./include/common.func.php中任意位置添加函数. h7 A  F" S& g0 b% k3 M. E7 s, [
! v- K; V& ^- \
function gbkhtmlspecialchars($str)+ J3 v9 |) Q" v. [  }" v5 a
{
  G  s9 k' B$ V        return htmlspecialchars($str, ENT_COMPAT ,'ISO-8859-1');
. h7 N8 v1 A  O! n2 n8 a4 \! Q6 O}" ?) \& T( Q- T+ o- R6 u
注意:使用了本文方法的就不用理会这篇文章了:http://bbs.swdyz.com/thread329sw1dyz1.shtml
  J# i- `) J& M. H! [( r( C* [! z4 G. a+ {3 ]! f5 B2 G
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-6-7 04:13 , Processed in 0.059249 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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