FCK editor的配置与使用方法

今天改个自己以前做的网站,以前编辑是用JS写的,有点麻烦,于是把它换成FCK编辑器,下面是FCK在ASP里的配置与使用说明。

 

FCKeditor 2.6.2配置修改说明
===============================================================

 

和其他脚本类的程序一样,FCKeditor的安装其实就是源代码的拷贝。我们按照官方的方法,在网站根目录下建立FCKeditor这样一个文件夹,然后把下载下来的文件包释放到该文件夹中。

安装好后,就是配置和使用了,我只对一般的使用(ASP环境)进行了配置,源文件的精简,复杂应用不去管它。配置时需要改动几个文件,我们按功能来分,不按文件来分,这样读者更容易明白。 

1、默认语言

打开fckconfig.js文件(相对FCKeditor文件夹,以下同),把自动检测语言改为不检测,把默认语言改为简体中文:

程序代码

 

FCKConfig.AutoDetectLanguage = false ;

FCKConfig.DefaultLanguage  = 'zh-cn' ; 

 

2、字体列表

打开fckconfig.js文件,在字体列表中添加常用的宋体;黑体;隶书;楷体_GB2312”

 

程序代码

 

FCKConfig.FontNames  = '宋体;黑体;隶书;楷体_GB2312;Arial;Comic Sans MS;Courier New;Tahoma;Times New Roman;Verdana' ; 

 

3、文件上传

FCKeditor的文件管理程序在filemanager文件夹中,又分为浏览(browser)和上传(upload)两种。浏览是指浏览服务器文件并可以选择,也可以上传本地文件至服务器;上传是指快速上传(QuickUpload),在窗口中点上传选项卡打开就是,跟我们使用的UBB编辑器有点相似,选择本地文件后上传就行。

也就是说FCKeditor中有一个文件浏览,有两个文件上传,而这些设置有些在一个文件中,有的则在多个文件中。比较复杂,改动比较多,我们再分几个小点儿来说。 

打开和关闭文件浏览和上传功能

有三个文件跟这个开关有关系,一个是js文件,两个是asp文件,前者关闭后界面中不出现相关窗口或按钮,后者关闭后相关功能不可用。

首先是fckconfig.js文件,以下内容设为true为开,false则为关。

文件浏览和浏览中上传功能:

程序代码

 

FCKConfig.LinkBrowser = false ;

FCKConfig.ImageBrowser = false ;

FCKConfig.FlashBrowser = false ; 

 

文件快速上传功能:

程序代码

 

FCKConfig.LinkUpload = true ;

FCKConfig.ImageUpload = true ;

FCKConfig.FlashUpload = true ; 

 

其次设置两个asp文件:

editor/filemanager/browser/default/connectors/asp/config.asp

程序代码

 

ConfigIsEnabled = False

 

表示文件浏览关闭 

editor/filemanager/browser/default/connectors/asp/config.asp

程序代码

ConfigIsEnabled = True 

表示文件快速上传打开

 

文件上传

上传的路径设置:

打开文件editor/filemanager/browser/default/connectors/asp/config.asp:

程序代码

 

ConfigUserFilesPath = "/userfiles/"

 

 

我的文件目录在http://www.XXX.com/userfiles/下面,就照以上设置。

如果在本地测试这个网站在虚拟目录test中,则应该设置为:

 

程序代码

ConfigUserFilesPath = "/test/userfiles/"

 

 

现在测试一下,点击上传至服务器的按钮后没有任何反应。这就是因为fckconfig.js文件中把默认语言"php"改成"asp".

程序代码

 

var _FileBrowserLanguage    = 'php' ;    // asp | aspx | cfm | lasso | perl | php | py

var _QuickUploadLanguage    = 'php' ;    // asp | aspx | cfm | lasso | perl | php | py

 

 

上传文件名自动更名

FCKeditor不支持中文文件名称,所以我们要让文件存入服务器时更改名称。由于有两个上传的地方,而且所用文件不同,所以两个文件应该同时改,我们先来看看快速上传的文件,打开editor/filemanager/browser/default/connectors/asp/upload.asp,在文件最后添加以下函数:

 

我是在FileUpload sResourceType, sCurrentFolder, sCommand下面加的这个函数~

程序代码

 

    Public Function GetNewFileName()

     dim ranNum

     dim dtNow

     dtNow=Now()

     randomize

     ranNum=int(90*rnd)+10

     GetNewFileName=year(dtNow) & right("0" & month(dtNow),2) & right("0" & day(dtNow),2) & right("0" & hour(dtNow),2) & right("0" & minute(dtNow),2) & right("0" & second(dtNow),2) & ranNum

    End Function

 

我们用年月日时分秒和两位随机数字来作为文件名,这样既能够分辨出文件上传时间,也不容易重名。

 

 

然后仍然是这个文件editor/filemanager/editor/filemanager/connectors/asp/commands.asp,找到:

程序代码

 

' Get the uploaded file name.

sFileName    = oUploader.File( "NewFile" ).Name

 

把它改为:

程序代码

 

' Get the uploaded file name.

sFileName   = GetNewFileName() &"."& split(oUploader.File( "NewFile" ).Name,".")(1) 

 

最后一步:

ASP源程序中引用FCKeditor编辑器

首先在asp页面顶端插入服务器端包含语句:

程序代码

<!--#include file="FCKeditor/fckeditor.asp" --> 

 

然后在表单里面添加以下代码: 

程序代码

 

<%
   Dim oFCKeditor     '定义变量
   Set oFCKeditor = New FCKeditor     '类的初始化
   oFCKeditor.BasePath = "../fckeditor/"  //设置编辑器的路径,我站点根目录下的一个目录
   oFCKeditor.ToolbarSet = "Default"     '定义工具条(默认为:Default
   oFCKeditor.Width = "100%"     '定义宽度(默认宽度:100%
   oFCKeditor.Height = "400px"     '定义高度(默认高度:200
   oFCKeditor.Value = "这是示例文本。"     '这个是给编辑器初始值
   oFCKeditor.Create "body"     '以后编辑器里的内容都是由这个logbody取得,命名由你定
  %>

 

这样就在表单里面创建了一个隐藏的名称为 content 的输入框,可以和其他表单元素一样使用,例如用以下代码取得该输入框的值:

程序代码

 

Dim content

content=    checkstr(request.Form("FCKeditor1"))

 

checkstr函数是自定义的一个函数,防止里面含有SQL非法字符,函数定义如下:

<%

'过滤SQL非法字符并格式化html代码

    function checkstr(fString)

        if isnull(fString) then

        checkstr=""

        exit function

        else

        fString=trim(fString)

        fString=replace(fString,"'","''")

        fString=replace(fString,";","")

        fString=replace(fString,"--","—")

        fString=server.htmlencode(fString)

        checkstr=fString

        end if     

    end function

 

%>

到此,你可以实现基本的功能了。当然Fckeditor功能非常强大,这就要自己慢慢研究吧。

 

 

 

 

你可能感兴趣的:(FCK editor的配置与使用方法)