php ci ck editor,CI框架集成CkEditor编辑器

1.先下载CKEditor编缉器(官网:

http://ckeditor.com/download

)。

2.把解压后的CKEditor复制到CI的根目录下。

3.把ckeditor目录下的ckeditor_php5.php文件复制到CI的application/libraries/下并重命名为ckeditor.php。

4.这些准备工作做完后就可以在CI的控制器中调用CKEditor编缉器了,如下:

###测试ckeditor###

function ckeditor(){

$this->load->helper('url');

###载入ckeditor###

$this->load->library('ckeditor');

$this->ckeditor->basePath=base_url().'ckeditor/';  ###配置CKEditor所在的目录

$this->ckeditor->returnOutput=true;

$contentAuto='这里默认显示的内容';

###应该放到视图里显示的,测试所在直接显示

echo $this->ckeditor->editor('contents',$contentAuto);

}

这样就可测试到CKEditor没问题了,但是还没有集成上传图片功能,

首先为CKEditor指定图片上传处理文件,在你的CKEditor文件夹下的config.js文件里添加如下代码:

CKEDITOR.editorConfig = function( config )

{

config.filebrowserImageUploadUrl ='http://localhost/CI/index.php/ckeditorUpload/upload/img';

config.filebrowserFlashUploadUrl = 'http://localhost/CI/index.php/ckeditorUpload/upload/flash';

};

特别说明,CKEditor中传来的文件是$_FILES['upload'],看到这里,相信各位就可以自己为CKEditor写个处理上传

再给出CodeIgniter下的处理文件给大家参考:

/***

* -------------------------------------------------------------------------------------------------------------------

* ###ckeditorUpload.php###

* ###测试ckeditor集成自定义上传处理测试###

* ###问题:没有判断真实的文件类型而分类文件夹 ,  中文文件名乱码    ###

* ###Dirt→(尘灰)    QQ:287074118   2012-07-14###

* -------------------------------------------------------------------------------------------------------------------

* ***/

class CkeditorUpload extends CI_Controller{

###测试输出ckeditor编缉器###

function index(){

$this->load->helper('url');

###载入ckeditor###

$this->load->library('ckeditor');

$this->ckeditor->basePath=base_url().'ckeditor/';  ###配置CKEditor所在的目录

$this->ckeditor->returnOutput=true;

/***

###载入ckfinder###

$this->load->library('ckfinder');

$this->ckfinder->basePath=base_url().'ckfinder/';  ###ckfinder目录所在

$this->ckfinder->SetupCKEditorObject($this->ckeditor);   ###让ckeditor和ckfinder结合起来

***/

$contentAuto='这里CKEditor默认显示的内容';

echo $this->ckeditor->editor('contents',$contentAuto);  ###应该放到视图里显示的,测试所在直接显示

}

###添加ckeditor上传图片自定义###

function upload($type=''){

/***

*ckedit上传扩展

*调用JS回调

* $fn=2,$file不为空,时为成功,$message是提示消息

****/

$this->load->helper('url');

$config['upload_path']='./uploads/'.$type;        ###配置上传路径

$config['allowed_types']='gif|jpg|png|swf';       ###允许上传的文件类型

$config['max_size']='3000';                       ###允许上传的文件大小

###$config['encrypt_name']=TRUE;   ###上传文件随机重命名

$this->load->library('upload',$config);     ###加载上传类,并初始化配置

$fn=$this->input->get('CKEditorFuncNum');   ###接收回调参数###

###判断是否需要建立目录###

if(!is_dir($config['upload_path'])){

if(!mkdir($config['upload_path'],0777,TRUE)){

$message='是否有权限追寻目录上传';

$str="";

exit($str);

}

}

###判断是否上传成功###

if(!$this->upload->do_upload('upload')){

###做回调显示失败处理

$message='是否有权限上传';

$str="";

exit($str);

}else{

$message='Upload successful(上传成功)';

$updata=$this->upload->data(); ###返回上传文件的相关信息

###这里手动处理重命名文件,原文件名+当前时间###

$rename=$updata['raw_name'].date("_Y_m_d_h").$updata['file_ext'];

$renamepath=$updata['file_path'].$rename;

###重命名文件###

if(!rename($updata['full_path'],$renamepath )){

###做回调显示失败处理

$message='重命名失败';

$str="";

exit($str);

}

###如需要可以做文件信息写入数据库处理###

###$filename=base_url().'uploads/'.$rename; ###当前上传的文件,也可以../uploads/6_2012_07_13_11.jpg

$filename='.'.$config['upload_path'].'/'.$rename;

###回调###

$str="";  ###关键$filename这里记得加上'',不然会出错

exit($str);

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值