Fckeditor 2.6.3 (ASP版)——添加上传文件大小限制

 Fckeditor的修改还是在8月份进行的,本人比较懒,拖到现在才写出来,嘿嘿。

    Fckeditor确实是一款强大的在线编辑器,设计比较人性化,兼容多个浏览器,如IE、firefox(我就测试了这两种哦)。对于FckEditor的修改,我主要进行了添加功能按钮、限制上传大小和过滤ASP木马三个方面的修改。今天先谈下对上传大小的限制的修改吧。

     对于上传大小的修改,主要是三个方面:

(1)定义其允许上传的最大值。

这个是在fckeditor\editor\filemanager\connectors\asp\config.asp中修改的。在文件的最后添加如下代码:

Dim LinkUploadLimit,ImageUploadLimit,FlashUploadLimit,AttachUploadLimit,MediaUploadLimit
Dim LinkUploadMaxsize,ImageUploadMaxsize,FlashUploadMaxsize,AttachUploadMaxsize,MediaUploadMaxsize
'链接文件大小限制
LinkUploadLimit = True
LinkUploadMaxsize = 102400
'图片上传大小限制
ImageUploadLimit = True
ImageUploadMaxsize = 2048
'flash上传大小限制
FlashUploadLimit = True
FlashUploadMaxsize = 2048
'多媒体文件上传大小限制
MediaUploadLimit = True
MediaUploadMaxsize = 204800
'附件上传大小限制
AttachUploadLimit = True
AttachUploadMaxsize = 20480

        FckEditor针对不同的上传方式将上传文件分为link,Image,Flash,Media等类型(Attach类型为我添加的),分别对应Fckeditor工具栏上各个按钮的上传,如link对应使用超链接按钮创建超链接时上传的文件。因此这里对每种类型定义了两个变量一个用来设定是否开启上传限制,一个是上传的最大值,单位为k。

(2)判断上传的文件是否超过限制。

这个是在fckeditor\editor\filemanager\connectors\asp\commands.asp中修改的。

在172行之后即语句sOriginalFileName = sFileName之后添加如下代码

    '此处添加对文件大小上传限制
    Dim dFileSize,UploadLimitMaxsize,IsUploadLimit,IsLimitOk
   
    '单位保持与设定值一致,设定值使用K   
    dFileSize=oUploader.File( "NewFile" ).Size/1024
    '根据上传的类别,取设定值,是否允许上传,允许上传的最大值
    select case sResourceType
    case "File"
     IsUpLoadLimit=LinkUploadLimit
     UploadLimitMaxsize=LinkUploadMaxsize
    case "Image"
     IsUpLoadLimit=ImageUploadLimit
     UploadLimitMaxsize=ImageUploadMaxsize
    case "Flash"
     IsUpLoadLimit=FlashUploadLimit
     UploadLimitMaxsize=FlashUploadMaxsize
    case "Media"
     IsUpLoadLimit=MediaUploadLimit
     UploadLimitMaxsize=MediaUploadMaxsize   
    case "Attach"
     IsUpLoadLimit=AttachUploadLimit
     UploadLimitMaxsize=AttachUploadMaxsize
    'case "Media"
    case else
     '默认设定限制上传,最大为1M
     IsUploadLimit=True
     UploadLimitMaxsize=102400
    end select

'-------------读取上传设定结束-----------------------
'判断上传文件是否超过设定值,通过IsLimitOk来判定IsLimitOk=true 则无法上传
    IsLimitOk=False
    if IsUploadLimit then    
     if dFileSize > UploadLimitMaxsize then
      IsLimitOk = True
      sErrorNumber = "204"  
     end if   
    end if

'--------------判断结束,如果上传文件超过设定值,则设定错误代码为204-----

修改172行后的 DO While ……loop语句

Do While ( True )改为 Do While ( not IsLimitOk )

(3)定义客户端的错误提示信息。

客户端错误提示信息在每一类上传(如 link、image)对应的文件夹中的js文件中修改。

link:在fckeditor\editor\dialog\fck_link\下的fck_link.js中修改

             修改函数function OnUploadCompleted( errorNumber, fileUrl, fileName, customMsg )中的switch …case 语句

            即下列语句之后

   case 203 :
    alert( "Security error. You probably don't have enough permissions to upload. Please check your server." ) ;
    return ;

添加如下代码:

           case 204 :
           alert( '文件大小超过设定值,不允许上传!' ) ;
          return ;

其他类型按照相同方式修改即可。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
1.下载最新的FCKEDITOR 2.解压缩到你的站点根文件夹中名为FCKEDITOR的文件夹中(名称必须为FCKEDITOR,因为配置文件中已经使用此名称来标示出FCKEDITOR的位置) 3.现在,编辑器就可以使用了,如果想要查看演示,可以按下面方法访问: http:///FCKeditor/_samples/default.html 注意:你可以将FCKEDITOR放置到任何文件夹,默认情况下,将其放入到FCKEDITOR文件夹是最为简单的方法.如果你放入的文件夹使用别的名称,请修改配置文件夹中编辑器BasePath参数,如下所示: oFckeditor.BasePath="/Components/fckeditor/"; 另外,FCKEDITOR文件夹中所有以下划线开头的文件夹及文件,都是可选的,可以安全的从你的发布中删除.它们并不是编辑器运行时必需的 如何将FCKEDITOR整合进我的页面? 由于目前的本提供的FCKEDITOR仅提供了JAVASCRIPT式的整合,因此,这里仅讲述如何应用JAVASCRIPT来整合FCKEDITOR到站点中,当然,其他各种语言的整合,你可以参考_samples文件夹中的例子来完成 1,假如编辑器已经安装在你的站点的/FCKEDITOR/文件夹下.那么,第一步我们需要做的就是在页面的HEAD段中放入SCRIPT标记以引入JAVASCRIPT整合模块.例如: 其中路径是可更改的 2,现在,FCKEDITOR类已经可以使用了.有两个方法在页面中建立一个FCKEDITOR编辑器: 方法1:内联方式(建议使用):在页面的FORM标记内需要插入编辑器的地方置入以下代码: script type="text/javascript"> var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ; oFCKeditor.Create() ; 方法2:TEXTAREA标记替换法(不建议使用):在页面的ONLOAD事件中,添加以下代码以替换一个已经存在的TEXTAREA标记 window.onload = function() { var oFCKeditor = new FCKeditor( 'MyTextarea' ) ; oFCKeditor.ReplaceTextarea() ; } This is the initial value. 3.现在,编辑器可以使用了 FCKEDITOR类参考: 下面是用来在页面中建立编辑器的FCKEDITOR类的说明 构造器: FCKeditor( instanceName[, width, height, toolbarSet, value] ) instanceName:编辑器的唯一名称(相当于ID) WIDTH:宽度 HEIGHT:高度 toolbarSet:工具条集合的名称 value:编辑器初始化内容 属性: instanceName:编辑器实例名 width:宽度,默认值为100% height:高度,默认值是200 ToolbarSet:工具集名称,参考FCKCONFIG.JS,默认值是Default value:初始化编辑器的HTML代码,默认值为空 BasePath:编辑器的基路径,默认为/Fckeditor/文件夹,注意,尽量不要使用相对路径.最好能用相对于站点根路径的表示方法,要以/结尾 CheckBrowser:是否在显示编辑器前检查浏览器兼容性,默认为true DisplayErrors:是否显示提示错误,默为true; 集合: Config[Key]=value; 这个集合用于更改配置中某一项的值,如 oFckeditor.Config["DefaultLanguage"]="pt-br"; 方法: Create() 建立并输出编辑器 RepaceTextArea(TextAreaName) 用编辑器来替换对应的文本框 如何配置FCKEDITOR? FCKEDITOR提供了一套用于定制其外观,特性及行为的设置集.主配置文件名为Fckconfig.js 你既可以编辑主配置文件,也可以自己定义单独的配置文件.配
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值