CI框架+Umeditor上传图片配置信息

Umeditor提供了一个上传文件通用的类Uploader.class.php, 首先将Uploader.class.php类放入CI框架的libraries目录下更名为Myuploader.php然后将该类提供的构造方法替换掉

本来的构造方法:

[php] view plain copy
 
  1. /** 
  2.     * 构造函数 
  3.     * @param string $fileField 表单名称 
  4.     * @param array $config 配置项 
  5.     * @param bool $base64 是否解析base64编码,可省略。若开启,则$fileField代表的是base64编码的字符串表单名 
  6.     */  
  7.    public function __construct($fileField, $config, $type = "upload")  
  8.    {  
  9.        $this->fileField = $fileField;  
  10.        $this->config = $config;  
  11.        $this->type = $type;  
  12.        if ($type == "remote") {  
  13.            $this->saveRemote();  
  14.        } else if($type == "base64") {  
  15.            $this->upBase64();  
  16.        } else {  
  17.            $this->upFile();  
  18.        }  
  19.   
  20.        $this->stateMap['ERROR_TYPE_NOT_ALLOWED'] = iconv('unicode', 'utf-8', $this->stateMap['ERROR_TYPE_NOT_ALLOWED']);  
  21.    }  

 

替换成:

[php] view plain copy
 
  1. /** 
  2.      * 构造函数 
  3.      * @param string $fileField 表单名称 
  4.      * @param array $config  配置项 
  5.      * @param bool $base64  是否解析base64编码,可省略。若开启,则$fileField代表的是base64编码的字符串表单名 
  6.      */  
  7.     public function __construct()  
  8.     {  
  9.           
  10.     }  
  11.   
  12.     public function Init($fileField , $config , $base64 = false)  
  13.     {  
  14.         /*var_dump($fileField); 
  15.         var_dump($config);exit;*/  
  16.         $this->fileField = $fileField;  
  17.         $this->config = $config;  
  18.         $this->stateInfo = $this->stateMap[ 0 ];  
  19.         $this->upFile( $base64 );  
  20.     }  



 

然后创建上传文件的方法:

 

[php] view plain copy
 
  1. /*Ueditor_model*/  
  2. class Ueditor_model extends CI_Model {  
  3.   
  4.         function __construct() {  
  5.             parent::__construct();  
  6.             $this->load->library("myuploader");  
  7.         }  
  8.   
  9.         function upload_image(){  
  10.             $dir = 'source/uploads/images/ueditor_images/';  
  11.             if (!is_dir($dir)) {  
  12.                 $res = mkdir($dir, 0755, true);  
  13.             }  
  14.             //上传配置  
  15.             $config = array(  
  16.                 "savePath" => $dir ,             //存储文件夹  
  17.                 "maxSize" => 512,                   //允许的文件最大尺寸,单位KB  
  18.                 "allowFiles" => array( ".gif" , ".png" , ".jpg" , ".jpeg" , ".bmp" )  //允许的文件格式  
  19.             );  
  20.   
  21.             $config[ "savePath" ] = $dir;  
  22.             $this->myuploader->init("upfile", $config, $base=false);  
  23.   
  24.             $info = $this->myuploader->getFileInfo();  
  25.   
  26.             return $info;  
  27.         }  
  28.     }  
  29. /*controller*/  
  30. class Uploads_files extends CI_Controller {   
  31.     function goods_edition_upload_img() {  
  32.         $info = $this -> ueditor_model -> upload_image();  
  33.   
  34.         echo json_encode($info);  
  35.     }  
  36. }  

最后一步到umeditor.config.js中修改上传文件方法

 

[javascript] view plain copy
 
    1. /** 
    2.     * 配置项主体。注意,此处所有涉及到路径的配置别遗漏URL变量。 
    3.     */  
    4.    window.UMEDITOR_CONFIG = {  
    5.   
    6.        //为编辑器实例添加一个路径,这个不能被注释  
    7.        UMEDITOR_HOME_URL : URL  
    8.   
    9.        //图片上传配置区  
    10.        ,imageUrl:URL + ""             <span style="white-space:pre">          </span>//图片上传提交地址  
    11.        ,imagePath:URL + ""                     <span style="white-space:pre"> </span>//图片修正地址,引用了fixedImagePath,如有特殊需求,可自行配置  
    12.        ,imageFieldName:"upfile"                   <span style="white-space:pre">  </span>//图片数据的key,若此处修改,需要在后台对应文件修改对应参数  

 

转:http://blog.csdn.net/demon3182/article/details/41915283

posted @ 2017-11-02 09:41  谦信君  阅读(140)  评论(0编辑  收藏