FCK的使用和设置

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/lhypang2006/archive/2008/03/10/2164773.aspx

FCK的使用

下载地址:http://www.fckeditor.net/download 

FCKeditor使用

一、配置 
1、在www.fckeditor.net点击Download,下载FCKEditor_2.5.1.zip和FCKEditor.Net(ASP.NET Control to easily integrate FCKEditor on .Net Web pages.) 

2、新建一项目,比如叫FCK。解压FCKEditor_2.5.1.zip,里面有个fckeditor目录。把该目录整个复制到新建的ASP.NET项目根目录下。打开fckeditor目录下的fckconfig.js,修改二项: 
FCKConfig.DefaultLanguage = 'en' ; 
改为 
FCKConfig.DefaultLanguage = 'zh-cn' ; 
----------------------------------------------------- 
var _FileBrowserLanguage = 'php' ; // asp | aspx | cfm | lasso | perl | php | py 
var _QuickUploadLanguage = 'php' ; // asp | aspx | cfm | lasso | perl | php | py 
改为 
var _FileBrowserLanguage = 'aspx' ; // asp | aspx | cfm | lasso | perl | php | py 
var _QuickUploadLanguage = 'aspx' ; // asp | aspx | cfm | lasso | perl | php | py 

3、在vs05/08的工具箱上新建一个名叫FCKEditor的Tab,然后在里面点右键,选择Choose Item,定位到解压FCKEditor.Net后生成的FCKEditor2.51/FCKeditor.Net_2.5/bin/Release/2.0目录下的FredCK.FCKEditorV2.dll。该Tab下就会生成一个FCKEditor的.net组件。在vs的Design模式下把该组件拖放到界面上。点击该组件,在属性面板上设置BashPath为/FCK/fckeditor/,注意这里的FCK就是你建的ASP.NET的项目名称,fckeditor为项目根目录下的目录名称。(注意:/FCK/fckeditor/前后的斜杠,少了一个都不会显示编辑器的)。Ctrl+F5! 

其它次要配置(不影响使用): 
* 可以把fckeditor目录及其子目录下所有下划下开头的范例、源文件删掉。 
* 可以在fckeditor目录下只保留fckconfig.js、fckeditor.js和几个xml文件,其余全部删掉。 
* fckeditor目录下的editor目录下有个filemanager目录,把该目录下的borswer/default/connectors目录中除aspx目录以外的全部目录删掉。 
* 可以把editor/lang目录下除zh-cn.js、en.js、zh.js之外的全部删掉。 

二、图片上传 
FCKEditor支持图片上传。可以在ASP.NET项目根目录下添加一目录,起名为UploadFiles. 
在web.config里的appSettings段里 
<appSettings>
    <add key="FCKEditor:BasePath" value="/FCK/fckeditor"/>
    <add key="FCKeditor:UserFilesPath" value="/FCK/UploadFiles/" />
  </appSettings>

注意UserFielsPath,这里设置的/FCK/UploadFiles/指定了要上传的目录。个人认为这里的FCK可以认为是服务器上的虚拟目录名。(另外发现如设为时不起作用)。 

当上传图片时有可能遇到"this connector is disabled Please check the"editor/filemanager/connectors/aspx/config.aspx"的错误,这时可以更改fckeditor/editor/filemanager/connectors/aspx/config.ascx的CheckAuthentication()方法,返回true. 

三、简单的FCKEditor存取数据库及显示 
1、在项目里添加新项Sql Server Database, 文件名保留为Database.mdf。在里面新建一表MyTable,只有两个字段,一个int型自动增加的primary key, 另一个是text类型的MyContent. 我们要把FCKEditor1.Value值存到这个字段里。 

2、先做个显示的页面。项目增加一个Show.aspx,拖一个SqlDataSource,设置一下返回MyTable的内容。再用Repeater显示。 

//代码 

<asp:Repeater ID="myRepeater" runat="server" DataSourceID="SqlDataSource1">
            <HeaderTemplate>
                <table>
            </HeaderTemplate>
            <ItemTemplate>
                <tr>
                    <td>
                       <%# Eval("MyContent") %>
                    </td>
                </tr>
            </ItemTemplate>
            <FooterTemplate>
                </table>
            </FooterTemplate>
        </asp:Repeater>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
        ConnectionString="<%nbsp;ConnectionStrings:ConnectionString %>" 
        SelectCommand="SELECT [OID], [MyContent] FROM [MyTable] ORDER BY [OID] DESC"></asp:SqlDataSource>

3、存入数据库 
项目中引用System.Configuration(为了使用System.Web.WebConfigurationManager) 
在FCKEditor界面上入一个按钮,然后 
protected void Button1_Click(object sender, EventArgs e) 

using (SqlConnection conn = new SqlConnection()) 

conn.ConnectionString = System.Web.Configuration.WebConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString; 
SqlCommand cmd = new SqlCommand(); 
cmd.Connection = conn; 
cmd.CommandText = "insert into MyTable(MyContent) values(@FCKContent)"; 
cmd.Parameters.AddWithValue("FCKContent",FCKeditor1.Value); 
conn.Open(); 
cmd.ExecuteNonQuery(); 


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/lhypang2006/archive/2008/03/10/2164773.aspx


本文来自拼吾爱程序人生,转载请标明出处:http://www.pin5i.com/showtopic-22531.html

FCK的设置

在线编辑器中,FCKeditor是我用过最爽的,也是目前互联网上最好的编辑器,功能强大,支持多种浏览器,无平台限制,可以和多种WEB语言融合,多语言支持,而且还支持开源!^-^

可它的确是太强大了! 以致于可以被别有用心的人轻易利用。

比如不想禁止使用文件上传功能,请看下面内容:FCKeditor在Asp.Net中的配置

抄录如下:
环境以Asp.net开发来进行讲解,步骤如下:
1、获取文件
我们可以从http://www.fckeditor.net/download下载两个压缩文件,第一个是FCKeditor.Net,最新版本是2.5,它主要包含C#的源
码,及DLL文件,我们把DLL复制到BIN目录并将DLL添加到工具箱中,方便使用。另一个是FCKeditor 2.6,里面包含的是FCKeditor
的脚本文件,样式,语言等FCKeditor的杂项。我们可以对它进行精简后,拷到WEB根目录下就可以了。

2、FCKeditor的精简
FCKeditor是支持多种WEB语言的,我们可以针对自己使用的语言来进行简化,将不使用的文件删掉,将FCKeditor_2.6解压后,进入
到 FCKeditor文件夹下,先把以“_”为开头的文件夹统统删除,这些文件夹里放的是范例或是一些其它工具。其实也就是只保留
editor文件夹、fckconfig.js、fckeditor.js、fckstyles.xml、fcktemplates.xml 就可以了,最外层的精简化完毕。
进入到editor文件夹内,先把“_source”文件夹删除,这里是一些源文件,对于使用来说没什么用处。再进入lang文件夹内,这里
是编辑器语言外包文件,只保留 zh-cn.js、en.js、zh.js这几个文件,这几个文件的含义我想大家都是知道的。当然如果需要其它
语言也可以留下来。

再进入skin文件夹,这是编辑器的皮肤,如果你想使用fckeditor默认的这种奶黄色,如果想用别的,那就自己考虑了。office2003
的皮肤比较漂亮,听说加载时速度比较慢,也可以选那择silver,也比较好配色,速度也快。
精简的最后一步,退出skin文件夹,再进入filemanager,进入到 connectors目录下,保留aspx目录,其它全部删除。
精简工作完成,现在看起来就赏心悦目了!

3、对编辑器进行配置,
我们将编辑器控件拖到网页中是是不能正确运行的,必要要对其进行配置。第一个配置文件是fckconfig.js,位于FCKeditor根目录
下。修改项包括:
FCKConfig.SkinPath = FCKConfig.BasePath + 'skins/silver/' ;(皮肤)
FCKConfig.AutoDetectLanguage    = true ;(自动检测语言)
FCKConfig.DefaultLanguage        = 'zh-cn' ;(默认为简体中文)
选择aspx就行
var _FileBrowserLanguage    = 'aspx' ;    // asp | aspx | cfm | lasso | perl | php | py (用来浏览上传文件)
var _QuickUploadLanguage    = 'aspx' ;    // asp | aspx | cfm | lasso | perl | php | py (用来上传文件)
如果想设置编辑器的浏览功能,如浏览图片、Flash,设置上传功能,如图片、Flash上传,可以设置为启用与禁用,true为启用

false禁用。
FCKConfig.LinkBrowser = true;
FCKConfig.ImageBrowser = true ;
FCKConfig.FlashBrowser = true ;
FCKConfig.LinkUpload = true ;
FCKConfig.ImageUpload = true ;
FCKConfig.FlashUpload = true ;

如果你的编辑器还用在网站前台的话,比如说用于留言本或是日记回复时,那就不得不考虑安全了,在前台千万不要使用Default的
toolbar,要么自定义一下功能,要么就用系统已经定义好的Basic,禁用文件上传等其它比较危险的功能。当然也可以自定义,选择
适合自己的功能。至于怎么选,可以对照fckconfig.js文件中FCKConfig.ToolbarSets["Default"]、FCKConfig.ToolbarSets
["Basic"]的配置,应该是比较容易做到的。不用讲解!

4、文件上传的设置
在文件上传时,我们希望将文件上传到指定的目录中,而且必须是经过验证的用户才能上传文件,我们可以
在filemanager/connectors/aspx目录中的config.ascx文件中进行设置,首先为了防止没经过验证的用户上传木马文件,我们可以
在CheckAuthentication()方法中加上对当前用户认证,成功后返回true即可;在SetConfig()方法中,可以设置UserFilesPath来指
定保存上传文件的路径。上传文件可以按目录自动保存到对应的目录中,如: File, Image, Flash, Media ,设置后结构如下
UserFilesPath = "~/Upload/",WEB根目录下的Upload目录中。
~/Upload
      |-File
      |-Image
      |-Flash
      |-Media

另外, 上传时有个Type漏洞,

出现上传漏洞的地址是:
http://www.xxx.com/admin/FCKedit ... aspx/connector.aspx
打开这个地址就可以上传任何类型的文件了,马儿上传到的位置是:
http://www.xxx.com/UserFiles/all/1.asa
"Type=all" 这个变量是自己定义的,在这里创建了all这个目录,而且新的目录没有上传文件格式的限制.
比如输入:
http://www.xxx.com/admin/FCKedit ... aspx/connector.aspx
所传的文件就到了 http://www.xxx.com/UserFiles/monyer/ 下了
而如果这样输入:http://www.xxx.com/admin/FCKedit ... aspx/connector.aspx
就可以传到网站的根目录下,网站支持什么脚本,传什么脚本的马就可以了.
所传的文件就到了网站根目录下了 

解决方案,删除"FCKeditor/editor/filemanager"

本文来自拼吾爱程序人生,转载请标明出处:http://www.pin5i.com/showtopic-22531.html

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/luonangaosi/archive/2010/01/27/5257069.aspx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值