CKEditor 3 和 CKFinder2 使用记录

来源:互联网 发布:龙膜建筑膜遮阳数据 编辑:程序博客网 时间:2024/06/06 15:52

    CKEditor 是 Web 页面所用的所见即所得的文本编辑器,是 著名的 FCKEditor2.0 的升级版。官网 http://ckeditor.com/。

    CKEditor 发布之后,对 FCKEdiror 的一些功能进行了整合,比较显著的是文件和媒体文件管理的功能被提取出来,成为一个独立的 CKFinder 组件(网址:http://ckfinder.com),功能也完善了许多。独立出来的 CKFinder 组件现在需要 License 支持了(购买网址:http://ckfinder.com/purchase)。而同类的软件 tinyMCE 也需要购买该功能(用 MCFileManager 和 MCImageManager 插件实现)。

    CKEditor 3.4 于 2010 年 8 月 17 日发布,是目前最新的版本。CKFinder 2.0.1 也是同日发布的最新修订版。

    CKEditor 3.4 与 CKFinder 2.0.1 在 PHP 下的整合:

    CKEditor 的使用比较简单。CKFinder 独立使用也很简单。它们的整合……也很简单。

    …… 使用别人开发的软件,照着软件说明书做就可以了,本来就没有什么难的。但是网上一大堆一知半解的“教程”反而搞得人晕晕乎乎……

    安装 CKEditor:解压即可。本人的安装路径在网站根目录的 ~/_myPHP5/_ckeditor3.4 下。

    安装 CKFinder:解压,拷贝到 ~/_myPHP5/_ckeditor3.4/plugins/_ckfinder2.0.1。

    CKFinder 组件涉及到网站用户文件存放的安全问题,所以需要在 _ckfinder2.0.1 下的 config.php 文件做一些配置:

    1,把函数  CheckAuthentication 的 return false 语句 修改为:

   session_start();
   return (isset($_SESSION['IsLogin']) && $_SESSION['IsLogin'])? true : false;

    $_SESSION['IsLogin'] 是个会话变量,在调用 CKFinder 之前需要初始化和赋值。如果没有定义或赋值为 false,就会报告以下错误:

    “因为安全原因,文件不可浏览. 请联系系统管理员并检查CKFinder配置文件”。

    2,定义购买的 License(坚决打击盗版行为!盗版无理!):
    $config['LicenseName'] = '';
    $config['LicenseKey'] = '';

    3,定义变量:
    $baseUrl = '/_myPHP5/_ckeditor3.4/plugins/_ckfinder2.0.1/userfiles/';

    然后写一段测试代码:

    <?php
      include_once $_SERVER['DOCUMENT_ROOT']. '/_myPHP5/_ckeditor3.4/ckeditor.php';
      include_once $_SERVER['DOCUMENT_ROOT']. '/_myPHP5/_ckeditor3.4/plugins/_ckfinder2.0.1/ckfinder.php';

      session_start();
      $_SESSION['IsLogin'] = true;  //or: false

      $ckeditor = new CKEditor();
      //$ckeditor->basePath = '/_myPHP5/_ckeditor3.4/';
      CKFinder::SetupCKEditor($ckeditor, '/_myPHP5/_ckeditor3.4/plugins/_ckfinder2.0.1/');

      $content = 'MMMMMMMM NNNNNNNNNNN OOOO PPPPPPP';
      $ckeditor->editor('content', htmlentities($content));
    ?>

    进一步使用需要解决的问题:

    1,CKFinder 没有购买 License 时,浏览上传的文件时,会有个警告信息:
    This is the DEMO version of CKFinder. Please visit
    the CKFinder web site to obtain a valid license.

    译文:这是 CKFinder 的演示版。请访问 CKFinder 网站取到有效的 License。

    如果感觉不爽的话,请购买商业许可。或者违法破解它,高手看代码就能自行破解,低手请搜索网络上的破解办法。

    2,CKFinder 用在多用户环境下,存在用户私有文件混淆的问题。需要解决多用户环境下 CKFinder 的使用问题。
    参看文章:http://blog.why100000.com/?p=945

    3,更改皮肤、配置菜单等等细节问题。

    作者:张庆(网眼) 西安 PHP 教育培训中心 2010-8-25
    来自“网眼视界”:http://blog.why100000.com
    作者微博:http://t.qq.com/zhangking
    “十万个为什么”电脑学习网:http://www.why100000.com

原创粉丝点击