用户
 找回密码
 入住 CI 中国社区
搜索
查看: 11267|回复: 18
收起左侧

[插件 Plugin] 纠正一下论坛里关于FCK的文章

[复制链接]
发表于 2009-1-28 16:08:06 | 显示全部楼层 |阅读模式
用了CI没多少天,因为要开始做一个项目,发布产品急需用到FCK,后来在论坛上找关于CI集成FCK的文章,有很多,但绝大部分的文章都是复制——粘贴别人的文章,可谓一字不漏。当我尝试的时候试了一个通宵,直到年初三早上6点半,没一个能调用出来的,当时郁闷的很,很讨厌这些不负责任的粘贴行为。后来睡醒觉,在看到新浪一篇文章,本论坛上也有很多人发表fck复制的文章,(http://blog.sina.com.cn/s/blog_4b93170a0100b1e4.html)尝试了下,不行,再修改,结果行了!现在我把这篇文章修改后成功的代码发出来:

1. 下载解压FCKeditor 2.6,我是放在system/application/plugins/fckeditor/ 下。

2.根据你的php版本,将fckeditor_php4.php或fckeditor_php5.php复制到 /system/application/libraries/ 下,并更名为 fckeditor.php

3. 打开此文件,将类名更改为 Fckeditor,并修改你的构造器
$this->BasePath 定义为你的fckeditor的目录,我的是$this->BasePath = base_url().'system/application/plugins/fckeditor/'  ;
PHP复制代码
// PHP 5
    function __construct( $instanceName )
     {
        $this->InstanceName    = $InstanceName['name'];
        $this->BasePath        = base_url().'system/application/plugins/fckeditor/' ;
        $this->Width        = $InstanceName['width'] ;
        $this->Height        = $InstanceName['height'] ;
        $this->ToolbarSet    = 'Default' ;
        $this->Value        = '' ;
        $this->Config        = array() ;
    }
复制代码


4. 打开 ./system/application/libraries/下的 fckeditor.php,复制FCKeditor_IsCompatibleBrowser()函数里的所有内容,替换到IsCompatible()函数里的所有内容

5.如果你使用了.htaccess文件,需要做如下修改

RewriteCond $1 !^(index\.php|images|system/application/plugins/fckeditor)


6. 基本设置完毕,在控制器中调用直接输出测试:
PHP复制代码
  $this->load->helper('url');
  $info = array('name' => 'product','width'=>600,'height'=>200);
  $this->load->library('fckeditor',$info);
  $this->fckeditor->Value='测试成功';
  $this->fckeditor->Create();
复制代码


      大家与原文对比一下,当在控制器初始化类库时,第二个参数必须为变量,如果是字符串会报错为未定义的变量。附上已经集成FCK的CI给大家下载参考,希望能给正在为集成FCK的朋友们节省时间和精力。另外本人对本论坛上所有粘贴复制CI集成FCK文章的网友很不满意!

Fck for ci.rar

726.23 KB, 下载次数: 227

集成FCK的CI

发表于 2009-1-28 17:33:33 | 显示全部楼层
本帖最后由 sam 于 2009-1-28 17:36 编辑

以前经过测试,1.6.x版本不曾出过楼主的问题,只有1.7.0有点Bug
发表于 2009-1-29 14:58:38 | 显示全部楼层
本人对楼主认真负责的态度表示敬佩,也希望大家不要简单的粘贴复制,为社区创造良好的交流氛围,谢谢大家!
发表于 2009-2-1 15:50:14 | 显示全部楼层
不错,我上次也试了很多次都没有集成。搜的帖子还都是一样的
发表于 2009-2-1 17:21:22 | 显示全部楼层
不错,我上次也试了很多次都没有集成。搜的帖子还都是一样的
qhlhlj 发表于 2009-2-1 15:50


可否把不成功的原因或者错误提示共享出来?
发表于 2009-2-8 21:06:36 | 显示全部楼层
本帖最后由 ztkx 于 2009-2-8 21:14 编辑

有些问题还是没弄明白

打开此文件,将类名更改为 Fckeditor

这一步有什么用意,lz给出的打包文件也并没有这么做

我试过了,lz的方法在1.7.0里是可行的,但是貌似FCk不同的版本也会有问题,我下了新的2.6.4,就没办法跑起来,总是告诉我没有权限访问fckeditor.html,fckconfig.js 里似乎也没有什么可疑的

fckeditor.7z

262.22 KB, 下载次数: 0

fckeditor .zip

1.17 MB, 下载次数: 0

发表于 2009-2-8 21:16:00 | 显示全部楼层
有些问题还是没弄明白


这一步有什么用意,lz给出的打包文件也并没有这么做

我试过了,lz的方法在1.7.0里是可行的,但是貌似FCk不同的版本也会有问题,我下了新的2.6.4,就没办法跑起来,总是告诉我没有权限访问fckedit ...
ztkx 发表于 2009-2-8 21:06


为了跟CI规则保持一致,CI类名首字母大写
发表于 2009-2-8 23:09:42 | 显示全部楼层
想把它放在form里,但是总是置顶,脱离form,不知道是什么原因
发表于 2009-2-9 02:09:06 | 显示全部楼层
想把它放在form里,但是总是置顶,脱离form,不知道是什么原因
ztkx 发表于 2009-2-8 23:09


正常情况下,编辑器跟着form走,说明你html和php代码可能有问题
发表于 2009-2-9 15:48:15 | 显示全部楼层
controller里是按例子走的,
view里

<?php form_open(..) ?>
<?php form_input($1) ?>
<?php form_input($2) ?>
<?php form_input($3) ?>
<?php echo $fckeditor ?>
</form>

btw, 觉得最后这个</form>很奇怪,不应该这样的,至少也该封装一下

本版积分规则