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

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

本来的构造方法:

 /**
     * 构造函数
     * @param string $fileField 表单名称
     * @param array $config 配置项
     * @param bool $base64 是否解析base64编码,可省略。若开启,则$fileField代表的是base64编码的字符串表单名
     */
    public function __construct($fileField, $config, $type = "upload")
    {
        $this->fileField = $fileField;
        $this->config = $config;
        $this->type = $type;
        if ($type == "remote") {
            $this->saveRemote();
        } else if($type == "base64") {
            $this->upBase64();
        } else {
            $this->upFile();
        }

        $this->stateMap['ERROR_TYPE_NOT_ALLOWED'] = iconv('unicode', 'utf-8', $this->stateMap['ERROR_TYPE_NOT_ALLOWED']);
    }

替换成:

/**
     * 构造函数
     * @param string $fileField 表单名称
     * @param array $config  配置项
     * @param bool $base64  是否解析base64编码,可省略。若开启,则$fileField代表的是base64编码的字符串表单名
     */
    public function __construct()
    {
        
    }

    public function Init($fileField , $config , $base64 = false)
    {
        /*var_dump($fileField);
        var_dump($config);exit;*/
        $this->fileField = $fileField;
        $this->config = $config;
        $this->stateInfo = $this->stateMap[ 0 ];
        $this->upFile( $base64 );
    }


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

/*Ueditor_model*/
class Ueditor_model extends CI_Model {

		function __construct() {
			parent::__construct();
			$this->load->library("myuploader");
		}

		function upload_image(){
			$dir = 'source/uploads/images/ueditor_images/';
			if (!is_dir($dir)) {
				$res = mkdir($dir, 0755, true);
			}
			//上传配置
		    $config = array(
		        "savePath" => $dir ,             //存储文件夹
		        "maxSize" => 512,                   //允许的文件最大尺寸,单位KB
		        "allowFiles" => array( ".gif" , ".png" , ".jpg" , ".jpeg" , ".bmp" )  //允许的文件格式
		    );

		    $config[ "savePath" ] = $dir;
		    $this->myuploader->init("upfile", $config, $base=false);

		    $info = $this->myuploader->getFileInfo();

		    return $info;
		}
	}
/*controller*/
class Uploads_files extends CI_Controller {	
	function goods_edition_upload_img() {
		$info = $this -> ueditor_model -> upload_image();

		echo json_encode($info);
	}
}

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

 /**
     * 配置项主体。注意,此处所有涉及到路径的配置别遗漏URL变量。
     */
    window.UMEDITOR_CONFIG = {

        //为编辑器实例添加一个路径,这个不能被注释
        UMEDITOR_HOME_URL : URL

        //图片上传配置区
        ,imageUrl:URL + ""             			//图片上传提交地址
        ,imagePath:URL + ""                     	//图片修正地址,引用了fixedImagePath,如有特殊需求,可自行配置
        ,imageFieldName:"upfile"                   	//图片数据的key,若此处修改,需要在后台对应文件修改对应参数


你可能感兴趣的:(php)