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 + "" <span style="white-space:pre"> </span>//图片上传提交地址
- ,imagePath:URL + "" <span style="white-space:pre"> </span>//图片修正地址,引用了fixedImagePath,如有特殊需求,可自行配置
- ,imageFieldName:"upfile" <span style="white-space:pre"> </span>//图片数据的key,若此处修改,需要在后台对应文件修改对应参数
转:http://blog.csdn.net/demon3182/article/details/41915283