分类: 系统运维
2012-05-30 09:05:12
Ckeditor kcfinder 整合配置:
Ckeditor ----à强大的富文本编辑器
官方推出了ckfinder 在线文件管理模块配合,但是该模块并不是和ckeditor一样开源免费使用;
不过还好有另外一款文件管理器可与其配合使用,实现你想要的功能,即:kcfinder。这是其他组织开发的远程文件管理模块,可以用它来协同ckeditor 做文件上传、实现图文并茂的文章发布和远程管理文件资源的操作。
网上下载ckeditor 和 kcfinder 的php版本,将两者放到你规划好的同一目录下,
配置ckeditor :
修改config.js,添加如下配置项:
_++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//kcfinder 文件在线浏览的url
config.filebrowserBrowseUrl = '/admin/kcfinder/browse.php?type=files';
//kcfinder 在线浏览图片资源的url
config.filebrowserImageBrowseUrl =
'/admin/kcfinder/browse.php?type=images';
//kcfinder 在线浏览flash文件的url
config.filebrowserFlashBrowseUrl =
'/admin/kcfinder/browse.php?type=flash';
//ckeittor 文件上传提交的url
config.filebrowserUploadUrl =
'/admin/kcfinder/upload.php?type=files';
//ckeittor 上传图片的url
config.filebrowserImageUploadUrl =
'/admin/kcfinder/upload.php?type=images';
//ckeittor 上传flash的url
config.filebrowserFlashUploadUrl =
'/admin/kcfinder/upload.php?type=flash';
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
经过以上配置,可以在ckeditor 的工具栏里边的图像工具和flash工具里边看到多了客户端本地文件上传到服务器的菜单项.
但是此时上传会出问题,还需配置kcfinder 正确响应ckeditor的操作请求,以及配置正确的上传文件保存路径:
修改kcfinder 的配置文件config.php 里边有两个地方需要更改:
一是添加权限限制,不能谁谁都可以向你服务器上传东西:
比如我的一个小应用-----文章发布系统的后台,我在config.php文件的最顶部加入:
+++++++++++++++++++++++++++++++++++++++++++++++++++++++
session_start();
if(!empty($_SESSION['USERNAME'])&&!empty($_SESSION['PASSWORD'])){
$_SESSION['KCFINDER']['disabled'] = false;
}else{
echo
"";
}
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
以上代码主要是判断用户是否登录,登录的话让kcfinder 的
$_SESSION['KCFINDER']['disabled'] = false;//就是启用kcfinder
反之就跳转到登录页面登录;
配置如下:(配置数组方式)
//不允许上的传文件类型限制
'deniedExts' => "exe com msi bat php phps
phtml php3 php4 cgi pl",
'maxImageWidth' => 0, //图片最大宽度
'maxImageHeight' => 0,//图片最大高度
'thumbWidth' => 100,//缩略图的最大宽
'thumbHeight' => 100, //缩略图的最大高
'jpegQuality' => 90, //图片质量
//上传文件保存路径配置:
'uploadURL'
=> "../upload/",
以上是一些基本配置,之后kcfinder 就可以一ckeditor模块的方式协同ckeditor 来做文件上传、实现图文并茂的文章发布和远程管理文件资源的操作。
在需要用到ckeditor 的页面,包含一下ckeditor/ckeditor.php文件,之后参考以下代码,实现在页面合适的位置输出编辑器:
* $CKEditor = new
CKEditor();
* $CKEditor->returnOutput = true;
* $code =
$CKEditor->editor("editor1", "
Initial value.
");原文地址: