1、/ckeditor/config.js
, 配置文件,如果不想写太多,可以直接写好默认配置(语言,
菜单栏,宽度),有需要可以百度 config 配置
config.language = ‘en’ ; config.skin = ‘v2’ ; config.uiColor = ‘#AADC6E’ ;
config.toolbar = ‘Basic’ …
; 。
2、官方的 demo 大多都喜欢用 js 配置 editor 区域,习惯写 php 的我就嫌麻烦,只好看内
置的 php 类。
require_once ROOTPATH “
。 ckeditor/ckeditor.php”;$CKEditor = new CKEditor();
$CKEditor- 》 returnOutput = true
; // 设 置 输 出 可 用 变 量 的 情 况 $CKEditor- 》 basePath =
‘/ckeditor/’;//设置路径$contentarea = $CKEditor-》editor “
( content”
, $rs ‘
[ contents’]);
//生成一个以 name 为 content 的 textarea
echo $contentarea;
3
、需要上传了 ,只好加入 ckfinder.把 ckfinder 和 ckeditor 放在同级目录下。
打开/ckfinder/config.php
, 首先设置第一个函数 CheckAuthentication(),这个函数需要
按照自己的规则写,只要 return true 的情况才能允许上传文件到服务器的,当然不建议直接写 return
true,这将导致安全问题。可以采用 session 来处理比较方便。
session_start
(
)
;
function
CheckAuthentication
(
)
{ if(isset($_SESSION ‘
[ UseEidtor’]))
return true;else return false;}
4、上传文件位置:也在/ckfinder/config.php
, 找到$baseUrl,之前一直想自己写一个
方法用来定位路径,实在不好办,后来只好用 sesssion,如果一个网站中,有需要上传到不同
的位置,正好可以利用 session 定位。
if (isset($_SESSION ‘
[ UseEidtor’
])) {
switch ( $_SESSION
‘
[
UseEidtor’
] )
{ case ‘Addr1’ : $baseUrl =
‘/addr1/uploadfile/’;case ‘Addr2’:$baseUrl = ‘/addr2/upfiles/’;}
} else {
$baseUrl = ‘/upfiles/’;
} 5、对于上传文件名, ckfinder 会按照原有的名字命名,中文的情况下可能会乱码,所
以
建
议
使
用
日
期
重
命
名
。
打
开/ckfinder/core/connector/php/php5/CommandHandler/FileUpload.php
找到《 /p》
$sUnsafeFileName
=CKFinder_Connector_Utils_FileSystem
:
:
convertToFilesystemEncoding
(
CKFinder_Connector_Utils_Misc
:
:
mbBasename($uploadedFile ‘
[ name’]));后面加上
$sExtension
=
CKFinder_Connector_Utils_FileSystem
:
:
getExtension ( $sUnsafeFileName ) ; $sUnsafeFileName=date
‘
( YmdHis’
‘
’
) 。 。 .
$sExtension;6
、 最后就是使用 ckfinder
require_once ROOTPATH
“
。
ckeditor/ckeditor.php” ; require_once ROOTPATH 。
‘ckfinder/ckfinder.php’ ;
$CKEditor = new CKEditor();$CKEditor-》returnOutput = true;$CKEditor-》basePath
= ‘/ckeditor/’;
CKFinder::SetupCKEditor($CKEditor ‘
, /ckfinder/’
) ;//注意这里是相对路径,相对于
根目录,不能用绝对路径
$contentarea = $CKEditor-》editor
“
( content”
, $rs ‘
[ contents’]);两者配合用起来还是挺不错的,更重
要的原因是安全性高了很多。