程序员人生 网站导航

phpcms编辑器上传图片大小控制解决办法

栏目:随笔时间:2016-12-12 16:11:19

  phpcms编辑器上传图片大小控制解决办法,重要提示,本文讲的是phpcms编辑器的图片大小限制,而不时phpcms附件上传大小限制。

  首先还是给大家介绍下,phpcms附近上传大小限制的办法吧

  phpcms默认的上传单个文件大小限制是2M。所以超过2M的附件上传就会上传不了。提示信息如下所示

  phpcms编辑器上传图片大小控制解决办法

  有点同学觉得这个值太大了,或者太小,那么怎么修改呢

  设置方法:

  登陆phpcms后台–站点设置–修改–附件设置–允许附件大小,输入你想要的值,如下图

  phpcms编辑器上传图片大小控制解决办法

  以上方法,大家通过百度都能找到,下面程序员人生网站首席工程师为大家讲解的是,phpcms编辑器的图片上传大小控制解决办法,由于phpcms的编辑器是用ck二次开发的,里面很多功能是高度定制,又有很多bug(真的有很多bug,以后有时间和大家一起分析)

  默认phpcms编辑器上传图片大小是不限制的,如果网站带有会员系统,那就完蛋了,用户可以随意上传大小,耗费大量服务器资源

  phpcms编辑器上传图片大小控制解决办法

  解决办法如下:

  打开网站文件,根目录\phpcms\modules\attachment\attachments.php,大概在38行

  将以下代码


	  $site_allowext = $site_setting['upload_allowext'];$attachment = new attachment($module,$catid,$siteid);$attachment->set_userid($this->userid);$a = $attachment->upload('upload',$site_allowext);if($a){$filepath = $attachment->uploadedfiles[0]['filepath'];$fn = intval($_GET['CKEditorFuncNum']);$this->upload_json($a[0],$filepath,$attachment->uploadedfiles[0]['filename']);$attachment->mkhtml($fn,$this->upload_url.$filepath,'');}


  换成我这个代码


  
/*wlsh 20161212 新增编辑器图片上传大小控制*/
		$upload_maxsize= $site_setting['upload_maxsize'];	
		$upload_maxsize_2= $upload_maxsize *1024;//系统后台文件上传单位是KB,而upload单位为B
		$a = $attachment->upload('upload',$site_allowext,$upload_maxsize_2);
		if($a){
			$filepath = $attachment->uploadedfiles[0]['filepath'];
			$fn = intval($_GET['CKEditorFuncNum']);
			$this->upload_json($a[0],$filepath,$attachment->uploadedfiles[0]['filename']);
			$attachment->mkhtml($fn,$this->upload_url.$filepath,'');
		}else{
		    echo "";
		}


  这样替换之后,刚刚第一步设计的大小,在这里也可以用了,代码解释下,只要就是在upload里面加了一个upload_maxsize参数,然后做了一个判断

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐