不重新编译DLL,让FCKEditor支持附件上传

简介:

最近在忙着做一个小项目,就是一个企业内部的论坛,其中最基本的一点就是富文本编辑帖子和回帖。目前市面上用的比较多的富文本编辑器有:

FreeTextBox 一个有很多年历史的富文本编辑器了,使用简单,而且一般的使用是免费的,但是不开源,上传图片上传附件等功能没有,扩展性差。

image

CuteEditor 最强大的富文本编辑器,巨牛无比,但是是收费的,个人使用的话用下破解版倒无所谓,要想在企业中使用那就得买了,所以虽然强大,但是想节约的话就不考虑这个了。看看他的菜单就知道他有多牛了:

image

FCKEditor(升级版CKEditor)强大的开源富文本编辑器,各个语言中都可以使用。支持上传图片、Flash等,功能强扩展性强。

image image

TinyMCE 也是一个开源的富文本编辑器,不过名气没有FCKEditor大,功能还是不错。

image

KindEditor 一个国人开发的富文本编辑器,貌似还不错,没有深入研究。

image

SharePoint的富文本编辑器,功能很弱,做的很烂,在MOSS中直接使用还好,如果不是MOSS环境那就完全没有必要使用了。

……

介绍了那么多,接下来还是回到主题,说说FCKEditor的配置修改吧。我在项目中使用的是FCKEditor2.6.3,FCKEditor本身非常强大,但是不知道为什么,默认情况下只支持上传图片和Flash,不支持上传一般的附件。网上有修改FCKEditor源代码,然后重新编译成dll,再放在服务器上。这种方法太麻烦了,经过简单的调试了下FCKEditor的代码,发现可以通过直接修改配置文件来上传文件。

具体修改方法就是打开fckeditor文件夹下的fckconfig.js文件,找到FCKConfig.LinkUploadURL ,修改如下:

FCKConfig.LinkUploadURL = FCKConfig.BasePath + 'filemanager/connectors/' + _QuickUploadLanguage + '/upload.' + _QuickUploadExtension + '?Type=File';

OK,就改这一个地方就够了。现在点击“插入超链接”,切换到“上传”选项卡,选择本地文件,然后点击“发送到服务器上”按钮既可。

image

然后就可以以超链接的方式添加到编辑框中,如图:

image

这里默认的是WebImages/FCK目录,在论坛中我们希望将用户上传的文件发布到D盘,每个用户上传的文件放在自己的登录名所命名的文件夹下面,那么可以修改fckeditor\editor\filemanager\connectors\aspx\config.ascx文件,修改代码如下:

string loginName = Page.User.Identity.Name.Substring(Page.User.Identity.Name.IndexOf("\\") + 1);
UserFilesPath = "/Files/" + loginName;//文件的虚拟目录
UserFilesAbsolutePath = @"D:\Files\"+loginName;//文件保存到服务器上的绝对路径

这样上传的文件就会保存到D盘Files文件夹下的用户名文件夹中,需要在IIS中设置虚拟目录Files,指向D盘Files文件夹,这样用户才可以在网站中看到该文件夹中的文件。

我们要使用时间来命名文件夹或者使用其他方式来命名文件夹只需要修改这两个属性即可.OK,本项目中FCKEditor的配置修改就讲这么多了!

目录
相关文章
|
4月前
|
JavaScript 前端开发
nodejs实现解析chm文件列表,无需转换为PDF文件格式,在线预览chm文件以及目录,不依赖任何网页端插件
nodejs实现解析chm文件列表,无需转换为PDF文件格式,在线预览chm文件以及目录,不依赖任何网页端插件
|
4月前
|
缓存 API 图形学
【Unity 3D】AssetBundle打包、上传、加载、卸载详解及演示(附源码)
【Unity 3D】AssetBundle打包、上传、加载、卸载详解及演示(附源码)
77 0
|
4月前
|
小程序 应用服务中间件 Shell
laravel8(三)文件上传提示 “The file deos not exits ” ,但确实已经上传了文件
Laravel 文件上传提示 “The file "" deos not exits ” ,但确实已经上传了文件
36 1
修改注册表打开PDF内嵌的zip等文件
今天在打开一个 PDF 文件的时候,发现文件里面嵌入的 .zip 文件无法打开。当然 .png 之类的文件还是可以打开的。 网上的各种“信任管理器”白名单方法都是无效的。 后来查了官网说明,得知是因为这类文件不安全,所以不允许打开。
712 0
|
XML C# 图形学
Unity 使用VisualStuido将C#脚本封装打包DLL使用
为了方便开发,不破坏写好工具的封装性,我们经常讲C#脚本打包成DLL使用,操作流程如下 创建项目,注意选择Net Framework版本,过高Unity无法支持 添加在脚本中使用的unity引用,在封装的脚本中我只使用了UnityEngine.
1994 0
|
缓存 Java 程序员
java文件下载功能代码(单文件下载、多文件批量打包下载)——普遍适用
版权声明:本文为博主原创文章,如需转载,请标明出处。 https://blog.csdn.net/alan_liuyue/article/details/72772502 一、前言   程序员在做web等项目的时候,往往都需要添加文件上传、下载、删除的功能,有时是单文件,有时多文件批量 操作,而这些功能的代码程序员可以自己收藏起来当成工具使用,这样,程序员在进行程序设计的时候就会事半功倍 了,那么接下来的博客将会介绍各个框架的文件上传和下载功能的使用方法。
3529 0
|
Web App开发 存储 JSON
.NetCore上传多文件的几种示例
本章和大家分享的是.NetCore的MVC框架上传文件的示例,主要讲的内容有:form方式提交上传,ajax上传,ajax提交+上传进度效果,Task并行处理+ajax提交+上传进度,相信当你读完文章内容后能后好的收获,如果可以不妨点个赞;由于昨天电脑没电了,快要写完的内容没有保存,今天早上提前来公...
1583 0