当前位置: 代码迷 >> PHP >> thinkphp3.0 中的thinkeditor如何用
  详细解决方案

thinkphp3.0 中的thinkeditor如何用

热度:549   发布时间:2013-06-19 10:26:40.0
thinkphp3.0 中的thinkeditor怎么用
一直纠结于thinkphp中怎么加载编辑器,最新我看就thinkphp3.0中tool工具中带了一个thinkeditor。但是一直的不知道怎么配置,那个高手能给详细的给我配置下吗?谢谢了
thinkeditor? thinkphp 编辑器

------解决方案--------------------
他不是有说明文档吗?

首先,介绍下本编辑器:
  本编辑器是thinkphp(简称tp)官方2010年某位大侠所创架构、用jquery写的,后又经历成立夫之手完成,我只是写了标签库、及本日志,本人接手后,水平有限、又没 有时间,尚未搞懂它的具体流程,今后将由左家梓(网名麦当苗儿)这位曾经和kindeditor官方人员接触的js大侠完善,当然网友也可以贡献力量,提 出建议,和贡献插件。

其次,使用thinkeditor必须注意三个地方:
  1.本编辑器只适用于tp(上传的地方TP写法,其他框架使用自行修改)。js部分的引用写成了标签库。
  2.使用本编辑器的人都要有大无畏的冒险精神,爱折腾,因为本编辑器尚未完善,不能称的上专业。
  3.本编辑器只提供大部分网站基本的编辑器的功能,排版、文章中能显示图片flash;插入视频插件未开发。有待广大网友的鼎力帮助。

如何使用本编辑器?
  首先,下载整个编辑器的压缩包。
  然后,解压,将thinkeditor文件夹放入你的项目公共资源目录/Public下。
并将其中的标签TagLibTp.class.php放入项目的Lib\TagLib\下,并根据框架版本在配置中配置引入的插件路径。(2.2和3.0使用方式会有不同)。
  再然后,在模板引用的地方加上<taglib name="tp" />
在head位置加上
<tp:editor id="textContent" uploadURL="/Public/editor_up" width="600"></tp:editor>
这里先说几个参数id是你要替换的textarea的id,uploadURL是上传处理的方法,width是编辑器的宽,可以以px表示,也可以用百分表表示 如width = "100%",因此要单位,其他的参数不需要写单位的。
其他参数的话,参考标签库和说明文档。
然后给项目添加编辑器的上传方法。
如blog中的PublicAction.class.php中的写法
public function editor_up(){
        //$savePath 为项目下的上传目录名 如 uploads 会是 上传到__ROOR__/uploads下,为空则上传到__ROOT__/uploads/thinkeditor下 
// $saveRule为上传文件命名规则,例如可以是 time uniqid com_create_guid 等,例如可以是 time uniqid com_create_guid 等 默认为time参考tp的上传类
// 例如可以是 time uniqid com_create_guid 等
        $savePath = 'uploads';
        $saveRule = 'time';
        import("@.ORG.UploadFile");
        $savePath = ($savePath)? './'.$savePath : './Uploads/thinkeditor';
        $savePath = (substr($savePath,-1)!='/')?$savePath.'/':$savePath;
        $maxSize = ($_POST['temaxsize'])? $_POST['temaxsize'] : -1;
        $upload = new UploadFile($maxSize,'','',$savePath,$saveRule);
        
        //传给js的参数 $savepath是上传的文件的生成路径,$isupload是上传是否成功的布尔值
        $savepath = '';
        $isupload = 'false';
        if(strtolower($_SERVER['REQUEST_METHOD']) == 'post') {
            $info = $upload->uploadOne($_FILES['teupload']);
            if($info){
                $isupload = 'true';
                $savepath = $upload->savePath.$info[0]['savename'];
  相关解决方案