织梦57,会员前台发布文章,内容可以传,但是提交以后源代码被自动改变。

织梦57,会员前台发布文章,内容可以传,但是提交以后源代码被自动改变。,第1张

一、实现方法

第一步:打开默认ajax评论文件 /plus/feedback_ajaxphp ,找到如下代码:

$_SESSION['sedtime'] = time();

在下面一行加入如下代码:

$doType = empty($fid) 'feedback' : 'reply';

doCommentEmail($fid, $aid, $msg, $doType);

第二步:打开 /include/extendfuncphp 文件,在最后一行或者>之前加入如下代码:

function doCommentEmail($fid=0, $aid=0, $msg='', $doType='reply'){

global $dsql, $cfg_adminemail, $cfg_sendmail_bysmtp, $cfg_smtp_server,$cfg_smtp_port, $cfg_smtp_usermail, $cfg_smtp_password, $cfg_webname, $cfg_basehost;

$arcRow = GetOneArchive($aid);

$headers = "From: "$cfg_adminemail"\r\nReply-To: "$cfg_adminemail;

if($doType == 'reply'){

$query = "SELECT f,muname,memail FROM dede_feedback f LEFT JOIN dede_member m on fmid = mmid WHERE fid = '{$fid}' AND mid > 0";

$row = $dsql->GetOne($query);

if(!is_array($row)) return '';

$email = $row['email'];

$mailtitle = "您在『{$cfg_webname}』的评论已被回复";

$mailbody = "{$row['uname']},您好:\r\n您在{$cfg_webname}的评论已被人回复!<pre>{$msg}</pre><br/><a href='{$arcRow['arcurl']}'>点击这里查看详情</a>";

}else{

$email = $cfg_adminemail;

$mailtitle = "您的网站『{$cfg_webname}』有新的评论";

$mailbody = ",您好:<br/>\r\n您的网站《{$cfg_webname}》有新的评论!<pre>{$msg}</pre><br/><a href='{$cfg_basehost}'>点击这里查看详情</a>";

}

if($email == '') return '';

if($cfg_sendmail_bysmtp == 'Y' && !empty($cfg_smtp_server))

{

$mailtype = 'HTML';

require_once(DEDEINC'/mailclassphp');

$smtp = newsmtp($cfg_smtp_server,$cfg_smtp_port,true,$cfg_smtp_usermail,$cfg_smtp_password);

$smtp->debug = false;

$smtp->sendmail($email,$cfg_webname ,$cfg_smtp_usermail, $mailtitle,$mailbody, $mailtype);

}

else

{

@mail($email, $mailtitle, $mailbody, $headers);

}

}

第三步:配置后台邮件发送信息,进入网站后台,切换到『系统』选项卡,点击「系统基本参数」的“核心设置”,将里面的“网站发信EMAIL”、“是否启用smtp方式发送邮件”、“smtp服务器”、“smtp服务器端口”、“SMTP服务器的用户邮箱”、“SMTP服务器的用户帐号”和“SMTP服务器的用户密码”配置好即可。

你好,根据你的问题找到的相关对应的解决方法。希望能够帮助到你。

问题症状:V57登录后台后,发布英文标题没问题,发布中文会提示“标题不能为空”。

问题根源:PHP版本升级为PHP54之后,htmlspecialchars在php54默认为utf8编码,gbk编码字符串经 htmlspecialchars 转义后的中文字符串为空,也就是标题为空。

解决办法:给htmlspecialchars添加ENT_COMPAT ,'GB2312'参数修改编码默认值。

具体修改页面:

1、dede/article_addphp 和 dede/article_editphp

将 $title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen));

改成

$title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen),ENT_COMPAT ,'GB2312');

2、include/ckeditor/ckeditor_php5php 138行

将htmlspecialchars($value)替换为htmlspecialchars($value, ENT_COMPAT ,'GB2312')

测试,发布文章成功。

时间太长了,不知道还能不能帮到你,解决方法如下:

会员前台新增文章:

/member/article_addphp

$body = HtmlReplace($body, -1);//源码部分

$body = str_replace('\\','',$body);//新增部分

会员前台修改文章:

/member/article_editphp

$body = HtmlReplace($body, -1);//源码部分

$body = str_replace('\\','',$body);//新增部分

找到对应的源码部分,把新增的加在下面。

说明:HtmlReplace()会在内容中替换出一个反斜杠,这个反斜杠把路径破坏掉了,所以在用str_replace()将反斜杠替换掉。

当然,还有没有其他方法我没研究过。

1、在生成,更新主页里面,有个动态浏览

2、在核心,网站栏目管理,点开文章后修改,高级参数里面有生成html

3、建议楼主这样设置(伪静态),因为百度更喜欢抓取静态的网址,如果生成动态的不方便蜘蛛收录。要想伪静态就必须在步骤2生成html

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 织梦57,会员前台发布文章,内容可以传,但是提交以后源代码被自动改变。

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情