CI框架中集成CKEditor编辑器的教程


Posted in PHP onJune 09, 2014

1、将fckeditor目录置入CI_PATH/system/plugins/

2、在CI_PATH/system/application/config/config.php中加入:

$config['fckeditor_basepath'] = "/system/plugins/fckeditor/";
$config['fckeditor_toolbarset_default'] = 'Default';

3、创建helper,在/system/application/helpers新建form_helper.php

<?php 
if (!defined('BASEPATH')) exit('No direct script access allowed');
include_once( BASEPATH . '/helpers/form_helper'.EXT);
function form_fckeditor($data = '', $value = '', $extra = '')
{
     $CI =& get_instance();
    $fckeditor_basepath = $CI->config->item('fckeditor_basepath');
     require_once( $_SERVER["DOCUMENT_ROOT"] . $fckeditor_basepath. 'fckeditor.php' );
    $instanceName = ( is_array($data) && isset($data['name'])   ) ? $data['name'] : $data;
    $fckeditor = new FCKeditor($instanceName);
     if( $fckeditor->IsCompatible() )
    {
         $fckeditor->Value = html_entity_decode($value);
        $fckeditor->BasePath = $fckeditor_basepath;
         if( $fckeditor_toolbarset = $CI->config->item('fckeditor_toolbarset_default'))
                $fckeditor->ToolbarSet = $fckeditor_toolbarset;
         if( is_array($data) )
        {
            if( isset($data['value']) )
                $fckeditor->Value = html_entity_decode($data['value']);
             if( isset($data['basepath']) )
                $fckeditor->BasePath = $data['basepath'];
             if( isset($data['toolbarset']) )
                $fckeditor->ToolbarSet = $data['toolbarset'];
             if( isset($data['width']) )
                $fckeditor->Width = $data['width'];
             if( isset($data['height']) )
                $fckeditor->Height = $data['height'];
        }
        return $fckeditor->CreateHtml();
    }
    else
    {
        return form_textarea( $data, $value, $extra );
    }
}
?>

4、在项目中使用fckeditor

<?php
$this->load->helper('form_helper');
$data = array(
    'name'        => 'newsContent',
    'id'          => 'newsContent',
    //'toolbarset'  => 'Advanced',
    'basepath'    => $this->config->item('fckeditor_basepath'),
    'width'       => '80%',
    'height'      => '200'
);
echo form_fckeditor( $data );
?>
PHP 相关文章推荐
通过html表格发电子邮件
Oct 09 PHP
php简单封装了一些常用JS操作
Feb 25 PHP
PHP面向对象分析设计的61条军规小结
Jul 17 PHP
zend framework多模块多布局配置
Feb 26 PHP
php通过数组实现多条件查询实现方法(字符串分割)
May 06 PHP
phpmyadmin配置文件现在需要绝密的短密码(blowfish_secret)的2种解决方法
May 07 PHP
PHP循环输出指定目录下的所有文件和文件夹路径例子(简单实用)
May 10 PHP
PHP设计模式之装饰者模式代码实例
May 11 PHP
mysql查找删除重复数据并只保留一条实例详解
Sep 24 PHP
PHP解耦的三重境界(浅谈服务容器)
Mar 13 PHP
PHP观察者模式原理与简单实现方法示例
Aug 25 PHP
原生JS实现Ajax通过GET方式与PHP进行交互操作示例
May 12 PHP
PHP小教程之实现链表
Jun 09 #PHP
浅谈Eclipse PDT调试PHP程序
Jun 09 #PHP
教你如何在CI框架中使用 .htaccess 隐藏url中index.php
Jun 09 #PHP
PHP、Nginx、Apache中禁止网页被iframe引用的方法
Oct 01 #PHP
PHP遍历目录并返回统计目录大小
Jun 09 #PHP
php中替换字符串中的空格为逗号','的方法
Jun 09 #PHP
使用php批量删除数据库下所有前缀为prefix_的表
Jun 09 #PHP
You might like
php中将一个对象保存到Session中的方法
2015/03/13 PHP
Smarty变量用法详解
2016/05/11 PHP
Laravel 5.3 学习笔记之 配置
2016/08/28 PHP
JS常用正则表达式总结
2013/11/12 Javascript
js验证电话号码与手机支持+86的正则表达式
2014/01/23 Javascript
JS实现div居中示例
2014/04/17 Javascript
Nodejs实现批量下载妹纸图
2015/05/28 NodeJs
Jquery实现弹性滑块滑动选择数值插件
2015/08/08 Javascript
JavaScript控制浏览器全屏及各种浏览器全屏模式的方法、属性和事件
2015/12/20 Javascript
jQuery+css实现的换页标签栏效果
2016/01/27 Javascript
创建一个类Person的简单实例
2016/05/17 Javascript
BootStrapValidator校验方式
2016/12/19 Javascript
微信小程序实现图片自适应(支持多图)
2017/01/25 Javascript
vue.js事件处理器是什么
2017/03/20 Javascript
详解Vue.js项目API、Router配置拆分实践
2018/03/16 Javascript
vue实现购物车功能(商品分类)
2020/04/20 Javascript
Element Collapse 折叠面板的使用方法
2020/07/26 Javascript
Vue利用localStorage本地缓存使页面刷新验证码不清零功能的实现
2020/09/04 Javascript
如何在 Vue 中使用 JSX
2021/02/14 Vue.js
Python学习之asyncore模块用法实例教程
2014/09/29 Python
python tkinter图形界面代码统计工具
2019/09/18 Python
Python笔记之观察者模式
2019/11/20 Python
如何在django中运行scrapy框架
2020/04/22 Python
PyCharm vs VSCode,作为python开发者,你更倾向哪种IDE呢?
2020/08/17 Python
html5版canvas自由拼图实例
2014/10/15 HTML / CSS
英国家喻户晓的高街品牌:River Island
2017/11/28 全球购物
巴塞罗那观光通票:Barcelona Pass
2019/10/30 全球购物
介绍一下Linux内核的排队自旋锁
2014/01/04 面试题
《植物妈妈有办法》教学反思
2014/02/25 职场文书
快递员岗位职责
2014/09/12 职场文书
小区门卫的岗位职责
2014/09/26 职场文书
优秀员工事迹材料
2014/12/20 职场文书
教学反思怎么写
2016/02/24 职场文书
vue判断按钮是否可以点击
2022/04/09 Vue.js
详解Flutter网络请求Dio库的使用及封装
2022/04/14 Java/Android
Vue ECharts实现机舱座位选择展示功能
2022/05/15 Vue.js