asfman
android developer
posts - 90,  comments - 213,  trackbacks - 0

[zt]FCKeditor 2.2 安装试用小记


什么是FCKeditor?他是用来干什么的?我们今天不讨论这个,今天直接进入正题,就是FCKeditor 2.2安装和设置。大家可以到FCKeditor的官方网站去下载最新版本FCKeditor 2.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\upload\asp\config.asp
程序代码 程序代码
ConfigIsEnabled = True
表示文件快速上传打开

②文件上传或浏览的路径设置
注意FCKeditor是不支持虚拟目录的,您的所有路径都是针对网站根目录的绝对路径,这点对于在本地测试用虚拟目录,发布到远程用网站目录的开发者不太方便。我的就是这样,WinXP系统只能一个站点,只有用虚拟目录表示不同的网站,在本地测试好了,上传前还要临时更改这个设置。
文件浏览路径,打开文件editor\filemanager\browser\default\connectors\asp\config.asp:
程序代码 程序代码
ConfigUserFilesPath = "/attachments/"

快速上传的路径,打开文件editor\filemanager\upload\asp\config.asp:
程序代码 程序代码
ConfigUserFilesPath = "/attachments/"

我的文件目录在http://www.xxx.com/attachments/下面,就照以上设置。如果在本地测试这个网站在虚拟目录xxx中,则应该设置为:
程序代码 程序代码
ConfigUserFilesPath = "/xxx/attachments/"


③文件快速上传的一个源文件BUG
以上设置好后,文件浏览和浏览中上传可以顺利进行,但是你会发现“快速上传”不能用。现象就是当选择好本地文件后,点击“上传至服务器”的按钮后没有任何反应。这就是因为fckconfig.js文件中的一个bug所致。
打开fckconfig.js文件,把FCKConfig.QuickUploadLanguage字样的地方,替换成_QuickUploadLanguage,一共要替换三个地方。前者没有定义就使用,所以有错,按代码意图应该和后者的值一样的。

④上传文件名自动更名
FCKeditor不支持中文文件名称,所以我们要让文件存入服务器时更改名称。由于有两个上传的地方,而且所用文件不同,所以两个文件应该同时改,我们先来看看快速上传的文件,打开editor\filemanager\upload\asp\upload.asp,在文件最后添加以下函数:
程序代码 程序代码
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

我们用年月日时分秒和两位随机数字来作为文件名,这样既能够分辨出文件上传时间,也不容易重名。
然后仍然是这个文件,找到:
程序代码 程序代码
 ' Get the uploaded file name.
 sFileName = oUploader.File( "NewFile" ).Name

把它改为:
程序代码 程序代码
 ' Get the uploaded file name.
 sFileName = GetNewFileName() &"."& split(oUploader.File( "NewFile" ).Name,".")(1)

上面说的是快速上传的文件,而文件浏览中上传则是更改另外一个文件(editor\filemanager\browser\default\connectors\asp\commands.asp),其修改方法和上面那个文件一样:添加一个函数,修改一行代码。

4、在ASP源程序中引用FCKeditor编辑器
首先在asp页面顶端插入服务器端包含语句:
程序代码 程序代码
<!--#include file="FCKeditor/fckeditor.asp" -->

然后在表单里面添加以下代码:
程序代码 程序代码
' 定义变量
Dim oFCKeditor
' 类的初始化
Set oFCKeditor = New FCKeditor
' 定义路径(默认路径:/FCKeditor/)
oFCKeditor.BasePath="FCKeditor/"
' 定义工具条(默认为:Default)
oFCKeditor.ToolbarSet="Basic"
' 定义宽度(默认宽度:100%)
oFCKeditor.Width="100%"
' 定义高度(默认高度:200)
oFCKeditor.Height=350
' 输入框的初始值
oFCKeditor.Value="这是示例文本。"
' 创建输入框名为:content
oFCKeditor.Create "content"

这样就在表单里面创建了一个隐藏的名称为content的输入框,可以和其他表单元素一样使用,例如用以下代码取得该输入框的值:
程序代码 程序代码
Dim content
content=CheckStr(Request.Form("content"))
以上用CheckStr对输入数据进行了检测,原始数据如果包含单引号之类的,那么更新数据库会出错。

这就是我在使用FCKeditor 2.2时的各项设置,希望对大家有所帮助。
另外发现该程序所用的上传类好像是一位叫“NetRube(网络乡巴佬)”的国人写的哦,版权声明中没有带网址,要不然定去拜访这位高人。

还有一些存疑的地方:
1、文件上传路径问题比较费劲儿,看以后的版本又不有所改进。
2、LinkBrowser和LinkUpload没搞懂什么意思(UP2006-3-20:原来插入超级链接的时候,链接的目标文件也是可以上传的,而且这个文件格式默认只规定了不允许上传的格式。其实我们就可以利用这个功能上传RAR或DOC等等格式的文件)

本文参考了以下文章:
·FCKeditor 2.0 的设置.修改.使用
·FCKeditor2.0在线编辑器的修改与设置-文件上传部分管理部分
·将管理系统编辑器升级为FCKEditor2.2 RC版了

[本日志由 ziyue 于 2006-03-21 03:01 PM 编辑]
文章来自:本站原创
引用通告地址:http://www.ziyuehome.com/trackback.asp?tbID=73
Tags:ASPFCKeditor
评论: 20 | 引用: 0 | 查看次数: 2205
    • 1 | 2 | >
    Gemini [2006-02-27 04:00 PM]
    对我帮助很大,节约不少时间。
    很感谢的说~
    Gemini [2006-02-27 04:03 PM]
    FCKEDITOR说是支持IE5.5+,FF1.3+....可是怎么不支持Maxthon?!
    ziyue [2006-02-27 09:53 PM]
    支持哪些浏览器没有测试过,我也就在IE里面用过。
    柠檬园主 [2006-03-06 02:37 PM]
    1.快速上传部分确实存在那个BUG,我以前倒一直没发现,在2.0的时候快速上传还只有ASP一种的时候,则没有这种麻烦.
    2.NetRube确实是国人,在广东,忘了是佛山还是中山了.在我发表了那两篇之后,他又修改了一版filebrowsermanager,加入了改名\移动\删除\预览图片的功能.但这一版没有被加入FCK的官方发布版,可以在SF的NETRUBE的项目中找到这一版本,我自己一直在用.
    3.对于MAXTHON以及TT这样的浏览器偶一直是比较反感的,所以回复里的2楼不予回答.另外FCK的使用过程中还要注意的一点是对于IE5.5以下的浏览器,在进行相应的程序修改后,还是可以正常使用,最近一段时间我要是有空会再写一篇的.
    4.谢谢链接偶的两篇.

    来自:http://3rgb.com
    ziyue [2006-03-07 02:28 PM]
    致柠檬园主:
    感谢您的留言,其实我的这个blog是很少人光顾的,特别是像您这样的大虾级 。写这个东西大部分是因为看到了您的两篇文章,而且自己正好要使用。自己做个总结,也给通过搜索不小心来这儿的朋友们一点提示。
    继续关注并期待着您关于FCKeditor的其他文章。
    无名 [2006-03-07 07:05 PM]
    找了好久fckedit2.2的说明,总算找到这个了,呵呵,谢谢啦
    回楼上那个支持浏览器问题,遨游浏览器用ie核心,所以肯定能用的
    还有这个2.2没有那种设定字体大小像素的?有的话在哪里呢?
    ziyue [2006-03-07 09:19 PM]
    字体大小没有像CSS样式表那样的精确控制,其实就是早期HTML标签中的<font size="1"></font>,这个标签也是只有7个取值。其中大小为2则与我们常见的12px差不多大。
    G3 [2006-03-20 01:55 PM]
    谢谢你的文章,很有帮助..
    无意中发现,在插入超连接的同时,可以上传任意类型的文件,哈哈!
    正在研究如何去掉插入表单的选项,感觉没用。。。
    ziyue [2006-03-20 08:48 PM]
    致G3:

    插入超链接时,在官方的默认配置中只规定了禁止上传的格式,而不是像图片或Flash那样规定了允许上传的格式,这点要尤其注意,所以出现您所看到的可以上传“任意”类型的文件。按照配置文件:
    程序代码 程序代码
    FCKConfig.LinkUploadDeniedExtensions = ".(php|php3|php5|phtml|asp|aspx|ascx|jsp|cfm|cfc|pl|bat|exe|dll|reg|cgi)$" ; // empty for no one
    除了这些不允许,其它都是允许的。

    关于去掉插入表单的选项,修改fckconfig.js的下面这一段就行了(注释Form那一行):
    程序代码 程序代码
    FCKConfig.ToolbarSets["Default"] = [
     ['Source','DocProps','-','Save','NewPage','Preview','-','Templates'],
     ['Cut','Copy','Paste','PasteText','PasteWord','-','Print','SpellCheck'],
     ['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'],
     ['Bold','Italic','Underline','StrikeThrough','-','Subscript','Superscript'],
     ['OrderedList','UnorderedList','-','Outdent','Indent'],
     ['JustifyLeft','JustifyCenter','JustifyRight','JustifyFull'],
     ['Link','Unlink','Anchor'],
     ['Image','Flash','Table','Rule','Smiley','SpecialChar','PageBreak','UniversalKey'],
     //['Form','Checkbox','Radio','TextField','Textarea','Select','Button','ImageButton','HiddenField'],
     '/',
     ['Style','FontFormat','FontName','FontSize'],
     ['TextColor','BGColor'],
     ['About']
    ] ;
    根据这个思路,可以任意选择您所要出现的功能。
    d.bo [2006-03-31 10:17 AM]
    如果把fckeditor文件夹放在默认网站根目录下而不是虚拟目录下,ConfigUserFilesPath应该如何设置?
    ziyue [2006-03-31 04:46 PM]
    ConfigUserFilesPath的设置其实不用去考虑根目录或者虚拟目录。您可以这样,手工拷贝一张图片到您的上传目录,然后在浏览器中输入能够访问到这张图片的地址。现在就好办了,用鼠标选中从域名后的/号开始一直到图片名称前面的/号。
    这个就是需要您设置到ConfigUserFilesPath里的值了。
    AA [2006-04-14 09:43 AM]
    请问各位有在VS.NET里配置成功的吗???我在2.0里配置,上传图片要改路径才能用,在VS.NET里上传图片和创建新文件夹就出error 500错误和提示未知错误,请各位大侠帮助解决!
    我的EMAIL是:77542103@163.com,QQ也是77542103
    winsonhan [2006-04-17 08:42 PM]
    发表的信息中,如果还有半角的‘时候就不能提交成功,请问怎么解决。
    ziyue [2006-04-17 11:46 PM]
    致winsonhan:
    在SQL语句中,单引号有特殊意义,所以在构造SQL查询语句的时候,需要把一个单引号替换为两个单引号。
    myfck [2006-04-19 12:54 AM]
    我找了好半天FCKConfig.LinkBrowser不知道在什么地方定义的。
    我其实想在fckconfig.js里增加FCKConfig.RealBrowser。直接添加系统报错没有定义。但是我找其他的如FCKConfig.LinkBrowser也没找到定义的地方。请问高手啊。FCKConfig.LinkBrowser是在什么地方定义的??
    posted on 2006-06-24 09:51 汪杰 阅读(595) 评论(0)  编辑 收藏 引用 所属分类: javascript
    只有注册用户登录后才能发表评论。

    <2024年11月>
    272829303112
    3456789
    10111213141516
    17181920212223
    24252627282930
    1234567

    常用链接

    留言簿(15)

    随笔分类(1)

    随笔档案(90)

    文章分类(727)

    文章档案(712)

    相册

    收藏夹

    http://blog.csdn.net/prodigynonsense

    友情链接

    最新随笔

    搜索

    •  

    积分与排名

    • 积分 - 467499
    • 排名 - 6

    最新随笔

    最新评论

    阅读排行榜

    评论排行榜