PHP中使用FCKeditor编辑器
1、概述
FCKeditor 是目前最优秀的可见即可得网页编辑器之一,它采用JavaScript编写。具备功能强大、配置容易、跨浏览器、支持多种编程语 言、开源等特点。它非常流行,互联网上很容易到相关技术文档,国内许多WEB项目和大型网站均采用了FCKeditor(如百度,阿里巴巴)。本文将通 过与 PHP相结合,从基本安装到高级的配置循序渐进介绍给广大PHPer
FCKeditorwww.fckeditor/
FCKeditor Wikiwiki.fckeditor/

2、下载FCKeditor
登录FCKeditor官方站(www.fckeditor),点击网站右上角Download”链接。
注意:当点击FCKeditor_2.4.3.zip”链接后,将跳转到sourceforge网站上自动下载。如果您当前使用LinuxUnix系统,可以点击FCKeditor_2.4.”链接下载.格式的压缩包。
3、安装FCKeditor
        解压FCKeditor_2.4.3.zip”文档到您的网站目录下,我们先假定您存放FCKeditor和调用脚本存于同一个目录下。
fckeditor 目录包含FCKeditor2.4.3程序文件。check.php用于处理表单数据。add_article.php add_article_js.html分别是PHP调用FCKeditorJavaScript调用FCKeditor实例脚本文件。
    3.1、用PHP调用FCKeditor
调用FCKeditor必须先载入FCKeditor类文件。具体代码如下。
PHP代码

<?php 
include("fckeditor/fckeditor.php") ; // 用于载入FCKeditor类文件   
?>
接下来,我们需要创建FCKeditor实例、指定FCKeditor存放路径和创建(显示)编辑器等。
具体代码如下所示(代码一般放在表单内)。
PHP代码

<?php 

$oFCKeditor = new FCKeditor('FCKeditor1') ; // 创建FCKeditor实例 

$oFCKeditor->BasePath = './fckeditor/'; // 设置FCKeditor目录地址 

$FCKeditor->Width='100%'; //设置显示宽度 

$FCKeditor->Height='300px'; //设置显示高度的高度 

$oFCKeditor->Create() ; // 创建编辑器 

?
>
下面是笔者创建好的实例代码,您可将代码保存为add_article.php
通过浏览里打开127.0.0.1/add_article.php 查看FCKeditor安装效果。
FCKeditor安装成功!
  注意:如果您想将FCKeditor创建为HTML结果代码,以便于在模板引擎里面调用(如Smarty)可使用如下代码。
$output = $oFCKeditor->CreateHtml() ;
  现在,您可通过POST方式获得编辑器的变量值。本例将表单的action设置为check.php,您可在check.php里使用代码
$fckeditorValue = $_POST['FCKeditor1'];
获得编辑器的变量值了。
    FCKeditor安装成功了。但是,我们还可以通过更多设置来使FCKeditor更加灵活人性化。具体方法文本后面介绍。
FCKeditor常用设置FCKeditor已经安装成功了,也可以使用了。但是我们可以通过一些简单的设置使FCKeditor更加符合您的项目需求。
设置工具栏很简单,只需打开fckeditor目录下面的fckconfig.js文件,按CTRL+F搜索FCKConfig.ToolbarSets["Default"]代码,到如下代码。
XML/HTML代码
['Source','DocProps','-','Save','NewPage','Preview','-','Templates'], 

['Cut','Copy','Paste','PasteText','PasteWord','-','Print','SpellCheck'], 

['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'], 

['Form','Checkbox','Radio','TextField','Textarea','Select','Button','ImageButton','HiddenField'], 

'/', 

['Bold','Italic','Underline','StrikeThrough','-','Subscript','Superscript'], 

['OrderedList','UnorderedList','-','Outdent','Indent'], 

['JustifyLeft','JustifyCenter','JustifyRight','JustifyFull'], 

['Link','Unlink','Anchor'], 

['Image','Flash','Table','Rule','Smiley','SpecialChar','PageBreak'], 

'/', 

['Style','FontFormat','FontName','FontSize'], 

['TextColor','BGColor'], 


['FitWindow','-','About'] 

在默认情况下,FCKeditor会调用上面定义的所有工具栏按钮。大家可以根据自己的需求进行设置。表1对上面的配置选项功能说明进行汇总。
代码名称
功能
代码名称
功能
Source
源代码
DocProps
页面属性
-
|分隔符
Save
保存
NewPage
新建
Preview
预览
Templates
模板
Cut
剪切
Copy
复制
网页模板编辑器Paste
粘贴
PasteText
粘贴为无格式文本
PasteWord
MS Word粘贴
Print
打印
SpellCheck
拼写检查
Undo
撤消
Redo
重做
Find
Replace
替换
SelectAll
全选
RemoveFormat
清除格式
Form
表单
Checkbox
复选框
Radio
单选框
TextField
单行文本
Textarea
多行文本
Select
列表菜单
Button
按钮
ImageButton
图像域
HiddenField
隐藏域
Bold
加粗
Italic
倾斜
Underline
下划线
StrikeThrough
删除线
Subscript
下标
Superscript
上标
OrderedList
插入/删除编号列表
UnorderedList
插入/删除项目列表
Outdent
减少缩进
Indent
增加缩进
JustifyLeft
左对齐
JustifyCenter
居中对齐
JustifyRight
右对齐
JustifyFull
两端对齐
Link
插入/编辑链接
Unlink
取消链接
Anchor
插入/编辑锚点链接
Image
插入编辑图像
Flash
插入/编辑Flash
Table
插入/编辑表格
Rule
插入水平线
Smiley
插入表情
SpecialChar
插入特殊符号
PageBreak
插入分页
Style
样式
FontFormat
格式
FontName
字体
FontSize
大小
TextColor
文本颜
BGColor
背景颜
FitWindow
全屏编辑
About
关于Fuckeditor
1:工具栏配置选项功能进行汇总
配置上传
要使您的FCKeditor能够使用上传功能,您必须进行以下配制。
注意:FCKeditor不支持虚拟目录,您的路径设置都是针对网站根目录的绝对路径而言的。这点对于发布到远程网站目录的开发者极为不便,后面我们会对此进行讨论。
一、打开fckeditor\editor\filemanager\upload\php\config.php,到代码$Config['Enabled'],将值设置为true
二、接下来几行,设置$Config['UserFilesPath'],设置上传路径。
三、打开fckeditor\fckconfig.js文件,到代码_FileBrowserLanguage,将值设置为php。接下来一行,把_QuickUploadLanguage值也设置为php
配置文件浏览
一、打开fckeditor\editor\filemanager\browser\default\connectors\php\config.php
到代码$Config['Enabled'],将值设置为true;
二、接下来几行,设置$Config['UserFilesPath'],设置浏览路径。
关于上传\文件浏览安全性问题
为了解决FCKeditor不支持虚拟目录问题,和FCKeditor文件上传的安全性考良。我们有必要在这里单论对此进行讨论。
打开fckeditor\editor\filemanager\upload\php\config.php $Config['UserFilesPath']代码,在此行代码之前定义变量$root_path = $_SERVER['PHP_SELF'];
重新设置$Config['UserFilesPath']变量的值,示例如下。
$Config['UserFilesPath'] = $root_path . '您想上传的目录名/' ;

打开fckeditor\editor\filemanager\browser\default\connectors\php \config.php,到代码$Config['UserFilesPath'],在此行代码之前定义变量$root_path = $_SERVER['PHP_SELF'];
重新设置$Config['UserFilesPath']变量的值,示例如下。
$Config['UserFilesPath'] = $root_path . '您想浏览的目录名/'
至此,您的FCKeditor已解决不支持虚拟目录问题。接下来,我们介绍一种技巧配置只允许管理员才可以使用FCKeditor上传问题。
解决方法其实很简单,假如网站采用$_SESSION['admin_id']验证管理员的登录id,您只需将相关的脚本文件引入即可。然后使用下面的代码配置文件上传\浏览开关。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。