`
kk48323201
  • 浏览: 93985 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

dedecms5.7更换kindeditor在线编辑器的解决方案

    博客分类:
  • PHP
阅读更多
本方法是结合dedecms的系统来做的,以达到安全的效果,过程可能稍微有点麻烦

第一步:删除/include/common.inc.php[size=medium][/size]
找到以下部分,并且注释掉
if (DEBUG_LEVEL === TRUE)
            {
                echo '<pre>';
				echo $classname.'类找不到';
				echo '</pre>';
				exit ();
            }
            else
            {
                header ( "location:/404.html" );
                die ();
            }


第二步:下载kindeditor在线编辑器放置在/include/[/size]

第三步:新建一个config.php放在/include/kindeditor/ 目录中[size=medium]

config.php代码如下
<?php
//该页仅用于检测用户登录的情况,如要手工更改系统配置,请更改common.inc.php
require_once(dirname(__FILE__)."/../common.inc.php");
require_once(dirname(__FILE__)."/../userlogin.class.php");

//获得当前脚本名称,如果你的系统被禁用了$_SERVER变量,请自行更改这个选项
$dedeNowurl   =  '';
$s_scriptName = '';
$isUrlOpen = @ini_get('allow_url_fopen');

$dedeNowurl = GetCurUrl();
$dedeNowurls = explode("?",$dedeNowurl);
$s_scriptName = $dedeNowurls[0];


//检验用户登录状态
$cuserLogin = new userLogin();

if($cuserLogin->getUserID() <=0 )
{
	if(empty($adminDirHand))
	{
		ShowMsg("<b>提示:需输入后台管理目录才能登录</b><br /><form>请输入后台管理目录名:<input type='hidden' name='gotopage' value='".urlencode($dedeNowurl)."' /><input type='text' name='adminDirHand' value='dede' style='width:120px;' /><input style='width:80px;' type='submit' name='sbt' value='转入登录' /></form>", "javascript:;");
		exit();
	}
	$gurl = "../../{$adminDirHand}/login.php?gotopage=".urlencode($dedeNowurl);
	echo "<script language='javascript'>location='$gurl';</script>";
	exit();
}

?>


第四步:修改/include/kindeditor/php/upload_json.php
为以下代码
[size=medium][/size]
<?php
/**
 * KindEditor PHP
 * 
 * 本PHP程序是演示程序,建议不要直接在实际项目中使用。
 * 如果您确定直接使用本程序,使用之前请仔细确认相关安全设置。
 * 
 */
require_once(dirname(__FILE__)."/../config.php");
require_once 'JSON.php';

if(empty($imgFile))
{
	$imgFile='';
}
if(!is_uploaded_file($imgFile))
{
	alert("你没有选择上传的文件!");
	exit();
}

$imgfile_name = $_FILES['imgFile']['name'];
$imgfile_name = trim(ereg_replace("[ \r\n\t\*\%\\/\?><\|\":]{1,}", '', $imgfile_name));
if(!eregi("\.(".$cfg_imgtype.")", $imgfile_name))
{
	alert("你所上传的图片类型不在许可列表,请更改系统对扩展名限定的配置!");
	exit();
}
 
$nowtme = time();
 
$mdir = MyDate($cfg_addon_savetype, $nowtme);
 
if(!is_dir($cfg_basedir.$cfg_medias_dir."/allimg2"."/$mdir"))
{
	MkdirAll($cfg_basedir.$cfg_medias_dir."/allimg2"."/$mdir",$cfg_dir_purview);
	CloseFtp();
}
$filename_name = $cuserLogin->getUserID().'-'.dd2char(MyDate("ymdHis",$nowtme).mt_rand(100,999));
$filename = $mdir.'/'.$filename_name;
$fs = explode('.',$imgfile_name);
$filename = $filename.'.'.$fs[count($fs)-1];
$filename_name = $filename_name.'.'.$fs[count($fs)-1];
$fullfilename = $cfg_basedir.$cfg_medias_dir."/allimg2"."/".$filename;


$file_url=$cfg_medias_dir."/allimg2"."/".$filename;


if(!move_uploaded_file($imgFile,$fullfilename))
{
  alert("上传失败");exit();
}
@unlink($imgFile);

$info = '';
$sizes[0] = 0; $sizes[1] = 0;
$sizes = getimagesize($fullfilename,$info);
$imgwidthValue = $sizes[0];
$imgheightValue = $sizes[1];
$imgsize = filesize($fullfilename);
$inquery = "INSERT INTO `#@__uploads`(arcid,title,url,mediatype,width,height,playtime,filesize,uptime,mid)
  VALUES ('0','$filename','".$file_url."','1','$imgwidthValue','$imgheightValue','0','{$imgsize}','{$nowtme}','".$cuserLogin->getUserID()."'); ";
$dsql->ExecuteNoneQuery($inquery);
$fid = $dsql->GetLastID();
AddMyAddon($fid, $activepath.'/'.$filename);
 
	header('Content-type: text/html; charset=UTF-8');
	$json = new Services_JSON();
	echo $json->encode(array('error' => 0, 'url' => $file_url));
	exit;
 
function alert($msg) {
	header('Content-type: text/html; charset=UTF-8');
	$json = new Services_JSON();
	echo $json->encode(array('error' => 1, 'message' => $msg));
	exit;
}

?>


第五步:修改/include/inc/inc_fun_funAdmin.php
在194行后添加一个判断代码
[size=medium][/size]
else if($GLOBALS['cfg_html_editor']=='kindeditor')
	{
		 $html = "";
		 $html .= '<script charset="utf-8" src="../include/kindeditor/kindeditor.js"></script>';
		 $html .= '<script>KE.show({id:"body",imageUploadJson : "/include/kindeditor/php/upload_json.php",fileManagerJson :"/include/kindeditor/php/file_manager_json.php",allowFileManager : true,width:"100%",height:"300px",newlineTag : "p",cssPath : "../include/kindeditor/index.css",afterCreate : function(id) {KE.event.ctrl(document, 13, function() {KE.sync(id);document.forms["form1"].submit();});KE.event.ctrl(KE.g[id].iframeDoc, 13, function() {KE.sync(id);document.forms["form1"].submit();});}});</script><textarea id="body" name="body" tyle="width:100%;height:300px;visibility:hidden;"></textarea>';
	     echo $html;
	}


第六步:进入DEDECMS后台修改==系统基本参数==核心设置
编辑器的地方修改为 kindeditor

完成。。。。自行查看效果
分享到:
评论
1 楼 esiso 2011-12-13  
试了一下不成功。

相关推荐

    给siteweaver6.8更换Kindeditor4.1.10编辑器

    【标题】"给siteweaver6.8更换Kindeditor4.1.10编辑器"涉及的主要知识点包括网站构建工具Siteweaver的升级与编辑器替换,以及Kindeditor的使用和功能特性。 Siteweaver是一款用于创建和管理网站的软件,它提供了基本...

    JSP版的完善KindEditor在线编辑器(带附件上传与图片按日期分类管理功能)

    JSP版的完善KindEditor在线编辑器(带附件上传与图片按日期分类管理功能) 1.集合了日期、时间、在线预览和特殊字符插件,采用3.0皮肤; 2.将图片上传与管理的JSP页面改写成SERVLET,同时去除JSON包; 3.添加图片压缩...

    kindeditor在线编辑器最简模式.7z

    总的来说,KindEditor的最简模式提供了一个轻量级、易用的在线编辑解决方案,尤其适合对编辑功能需求不复杂且对浏览器兼容性有一定要求的场景。不过,它可能需要开发者进行一定的兼容性修复工作,尤其是在老旧的IE...

    kindeditor在线编辑器asp.net能用版本

    总的来说,KindEditor在线编辑器与ASP.NET 3.5的结合,为开发者提供了一个高效、易用的在线文本编辑解决方案,尤其适合需要用户在Web端进行内容创作和编辑的应用场景。通过深入理解和熟练运用,开发者可以充分利用...

    KindEditor在线编辑器

    KindEditor非常适合在CMS、商城、论坛、博客、Wiki、电子邮件等互联网应用上使用,2006年7月首次发布2.0以来,KindEditor依靠出色的用户体验和领先的技术不断扩大编辑器市场占有率,目前在国内已经成为最受欢迎的...

    Kindeditor在线编辑器(PHP)版

    KindEditor是一款功能...总的来说,KindEditor在线编辑器为PHP开发者提供了一个强大且灵活的解决方案,使得在网页上实现富文本编辑变得轻而易举。无论是初学者还是经验丰富的开发者,都能快速上手并充分利用其功能。

    KindEditor Html在线编辑器

    KindEditor HTML在线编辑器是一款广泛应用于网页开发中的富文本编辑工具,它提供了丰富的文本格式化选项,使得非程序员也可以轻松地在网页上编辑内容。这款编辑器以其易用性、功能强大和高度可定制性而受到开发者的...

    kindeditor文本编辑器(asp.net中使用)

    kindeditor文本编辑器(asp.net中使用) 源代码都在

    Kindeditor文本编辑器

    Kindeditor文本编辑器是一款在IT领域中广泛应用的开源富文本编辑器,它的设计目标是提供一个易用且功能丰富的Web内容创作环境。这个编辑器以其简单易上手、功能全面的特点,深受开发者和用户的喜爱。它能够很好地...

    彻底解决asp中KindEditor编辑器无法获得提交的数据

    ### 彻底解决ASP中KindEditor编辑器无法获得提交的数据问题 #### 一、问题背景与概述 在ASP环境中使用KindEditor编辑器时,可能会遇到一个常见问题:无法正确获取编辑器内用户提交的数据。这通常发生在需要将编辑...

    kindeditor文本编辑器实例(包含本地图片上传及浏览服务器方法)

    总的来说,KindEditor文本编辑器实例提供了丰富的功能,包括本地图片上传、服务器浏览和自定义按钮等,帮助开发者构建高效、易用的在线编辑环境。正确配置和使用这些功能,能够提升网站的内容质量和用户体验。

    asp 版的KindEditor 3.5.1编辑器 外部编辑器 web编辑器 最新版的KindEditor 编辑器 适合asp jsp的编辑器

    asp 版的KindEditor 3.5.1编辑器 外部编辑器 web编辑器 最新版的KindEditor 编辑器 适合asp jsp的编辑器 这是经过本人一个下午测试的 ,保证可以使用 在这拿出来 大家一起学习学习 QQ290273103

    kindeditor在线HTML代码编辑器

    总的来说,KindEditor在线HTML代码编辑器提供了一套完整的解决方案,使得在Web页面上实现类似Word的文本编辑功能成为可能,同时提供了丰富的API和配置选项,以满足各种开发需求。无论是个人博客、内容管理系统还是...

    kindeditor在线编辑器

    KindEditor是一款功能强大的在线文本编辑器,专为网站开发者设计,提供了一种简便的方式来实现文本输入、格式化、图片上传、链接创建等常见的文本编辑功能。它以富文本形式展示内容,用户界面友好,操作简单,适用于...

    kindeditor文本编辑器

    总的来说,KindEditor是一款实用且灵活的富文本编辑器,对于需要用户提供富文本内容的Web应用来说,是一个很好的解决方案。通过深入学习和利用其提供的文档和示例,开发者可以轻松集成并定制满足特定需求的文本编辑...

    kindeditor 在线编辑器(很强大)

    KindEditor是一款开源的JavaScript在线富文本编辑器,它以其强大的功能和良好的兼容性深受开发者喜爱。这款编辑器能够轻松地嵌入到各种Web应用程序中,包括JSP平台,为用户提供了一个类似于桌面应用的文字编辑环境,...

    kindeditor整合公式编辑器

    本话题聚焦于一个特定的应用场景:将KindEditor编辑器与JMEditor公式编辑器进行整合,以实现一个适用于题库系统的强大文本编辑解决方案。 KindEditor是一款开源的Web富文本编辑器,它支持多种浏览器环境,提供了...

    kindeditor富文本编辑器

    总的来说,KindEditor是一个强大且易用的富文本编辑器,尤其适合与Java环境配合使用,为各种文本编辑应用场景提供了灵活且安全的解决方案。其丰富的功能、良好的扩展性和易用性,使得它在众多富文本编辑器中脱颖而出...

Global site tag (gtag.js) - Google Analytics