fckeditor上传图片问题的解决

 其实我在去年的时候就开始接触FCKEditor了,当时是一个朋友张钦文介绍的,按照他的思路,我马上就能在.NET搭建的网站里把FCKEditor 用起来了。不过发现一个大问题,就是图片、附件等不能上传,这可是一个大的缺陷,不是编辑器本身没有付带这个功能,而是这功能在默认情况下是使用不了的, 必须经常管理员详细的设置。比如针对网站的语言、网站的所以目录等进行设置。最近因为应jiajoy.com的要求,一定得加上这个图片上传的功能,所以 真的是不能不做了。在我初步看来,虽然很麻烦,网站也很多人提出这个问题,但我想既然有这么多人都在使用,我也一定能让它行的。于是,从今天早上开始,我 就一直在baidu上漫游,输入了一系列关系FCKEditor的关键字,如"FCKEditor的配置","FCKEditor在.NET中的图片上传 ","fckeditor 在.net中的文件上传","FCKEditor 在.net中上传图片没反应"等,查阅了近百篇贴子,包括网友们的回复等,也都参照了一些贴子进行了设置,但问题还是解决了,整个上午都为这事忙着,眼睛 都累得不行了。
   下午到office时已经是三点,得抓紧时间解决这个问题。于是继续上网上查找资料,并在论坛留言,但问题还是解决不了。于是,我想不是该换一个版本,因 为我现在用的是2.2版本,现在最新是2.4啦,时间没有允许我再有更多的选择,马上上FCKEditor.net下载了最近版本,照这个路子,我查找最 新版本在.net环境中最新的设置资料,于是,很幸运,找到一篇文章,文章不长,作者超级自信。为了更好的利用这位仁兄的思想,我特意新建了一个新的虚拟 目录,将FCKEditor的目录放在站点的根目录下,再新建一个upload.aspx的文件进行测试,想不到,新的问题出现了,提示“找不到文件”, 我右键一查看源文件位置,原来我的虚拟目录在地址中被省略了。我的虚拟目录本是uploadtest,访问该文件时就是 http://localhost/uploadtest/FCKEditor/...... ,但现在变成 http://localhost/FCKEditor/...... 了,于是我马上新建一个站点代替虚拟目录,奇迹出现,图片上传成功了。好高兴,Year!!但是,一会我就冷静下来,为什么虚拟目录不行呢,难道没有别的 方法吗?我在baidu一查,原来这个的FCKEditor正常时确实不支持虚拟目录,但是一查,还是有办法,就是在web.config中的< appSettings>将虚拟目录也添加到value值中,如jiajoy就是虚拟目录来的。具体设置如下:
<appSettings>
     <add key="FCKeditor:UserFilesPath" value="/jiajoy/UserFiles/" />
</appSettings>
   问题终于解决了,我松了一口气,回头看看,发现其实我遇到的问题也不算什么大问题,走了这么大弯路,也许就是因为没人及时给以指点,或许这也是掌握点新东西需要付出的代价吧。


   以下附:在FCKEditor2.4.1版在.net环境中图片上传的正确配置,以供大家参考,以少走弯路。
asp.net下的fckeditor2.4.1配置
用最简单的语言描述一下。其它配置和优化就不说了,只说怎么让它在asp.net环境下能用,能上传。
1、下载文件 http://www.fckeditor.net/download
FCKeditor_2.4.1.zip   和   FCKeditor.Net_2.2.zip
这是目前最新的版本。 FCKeditor_2.4.1.zip 为fckeditor的页面文件 FCKeditor.Net_2.2.zip 是asp.net下的上传用的 dll控件和其源文件
2、 解压FCKeditor_2.4.1.zip 到网站根目录下的 fckeditor中,解压FCKeditor.Net_2.2.zip 将其目录 FCKeditor.Net_2.2/bin/Release中的 FredCK.FCKeditorV2.dll 复制到 根目录的/bin/下
3、打开/fckeditor/fckconfig.js 修改两行代码
var _FileBrowserLanguage = 'aspx' ;
var _QuickUploadLanguage = 'aspx' ;
把默认的asp语言改成aspx
4、这就算行了,开始用吧。根目录下建立test.aspx,其代码如下:
<%@ Page language="c#" AutoEventWireup="false" validateRequest=false%>
<%@ Register TagPrefix="FCKeditorV2" Namespace="FredCK.FCKeditorV2" Assembly="FredCK.FCKeditorV2" %>
<form id="Form1" method="post" runat="server">
<FCKeditorV2:FCKeditor id="content" runat="server"></FCKeditorV2:FCKeditor>
</form>
应该就ok了,可以上传。默认传到根目录的/UserFiles/下,不用自己建,它自己会建。
如果要改上传目录,需要修改FCKeditor.Net_2.2.zip这个包里的.net源文件。修改FileWorkerBase.cs ,改一下26行
private const string DEFAULT_USER_FILES_PATH = "/UserFiles/" ;
重新编译一下,生成新的dll,复制过去,应该就OK了。(这个我没试,应该没问题)
   另外,说一句,fckeditor是很灵活的,可以做很多高级的设置。
还 有的网友,自己优化了它的源文件,有的给它加了功能,比如传视频,传文件什么的。 但这些修改过的版本,有的是有问题的。 曾经下过一个修改了的2.0 版本, asp下,怎么设置都上传不了图片。 重新下个,随便设置一下就可以了。所以,还是推荐大家用官方提供的版本。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值