限制ckeditor上传图片文件大小的方法

  一种可以通过修改PHP.INI配置文件上传大小来限制,另一种方法只能手动修改Fckeditor源码,方法如下

  打开editor/filemanager/connectors/php目录下config.php,创建Config变量设置上传图片大小,这里以KB为单位

  1、$Config['MaxImageSize']= '1024';

  2、打开editor/filemanager/connectors/php目录下commands.php,找到

  

复制代码 代码如下:

  if ( isset( $Config['SecureImageUploads'] ) )

  {

  if ( ( $isImageValid = IsImageValid( $oFile['tmp_name'], $sExtension ) ) === false )

  {

  $sErrorNumber = '202' ;

  }

  //上传图片大小限制

  }

  在上传图片大小限制处,添加

  if ( isset( $Config['MaxImageSize'] ) )

  {

  $iFileSize = round( $oFile['size'] / 1024 );

  if($iFileSize > $Config['MaxImageSize'] )

  {

  $sErrorNumber = '204';

  }

  }

  说明:由于PHP计算上传图片大小以字节为单位,所以代码首先将上传的图片大小折算为KB,再来对比是否超出了规定的图片大小,如超出,则报错。

  注意最后将

  

复制代码 代码如下:

  if ( !$sErrorNumber && IsAllowedExt( $sExtension, $resourceType ) )

  {

  //Fckeditor上传图片功能

  }

  else

  $sErrorNumber = '202' ;

  代码块结尾处的else语句去除,否则实现不了限制Fckeditor上传图片文件大小的功能。

  3、打开editor/dialog/fck_image/fck_image.js,添加错误代码(errorNumber)信息,找到OnUploadCompleted函数,添加

  

复制代码 代码如下:

  case 204 :

  alert( "Security error. File size error." ) ;

  return ;

  至此限制Fckeditor上传图片文件大小配置就完成了,其他类型的上传文件大小限制也是这种思路。