ThinkPHP整合百度Ueditor图文教程


Posted in PHP onOctober 21, 2014

ThinkPHP整合百度Ueditor,基于黄永成老师的视频说明的
申明:最好大家都能写绝对路径的都写好绝对路径比如:window.UEDITOR_HOME_URL

他在教程里面已经说了的,我就不再次说了啊,就一笔带过,好了不废话!

在调用编辑器的时候首先先初始化一些值:

<script type="text/javascript" charset="utf-8">
  window.UEDITOR_HOME_URL = "/Public/ueditor/"; //UEDITOR_HOME_URL、config、all这三个顺序不能改变
  window.onload=function(){
    window.UEDITOR_CONFIG.initialFrameHeight=300;//编辑器的高度
    window.UEDITOR_CONFIG.imageUrl="{:U('admin/Category/checkPic')}";     //图片上传提交地址
    window.UEDITOR_CONFIG.imagePath=' /Uploads/thumb/';//编辑器调用图片的地址
    UE.getEditor('contents');//里面的contents是我的textarea的id值
    
    }
 
</script>

然后再引入2个js文件,分别是:1、ueditor.all.min.js 2、ueditor.config.js
在这里申明一下 我以上说的调用方式,顺序绝对不能乱,乱了就会出问题了,所以你就按照我的按部就班的做吧!

因为我重写了编辑器的图片提交地址,所以我还得在控制器里面写一个对图片处理的方法。

代码如下:

//改变Ueditor 默认图片上传路径
    public function checkPic(){
      import('ORG.Net.UploadFile');
       $upload = new UploadFile();// 实例化上传类
       $upload->allowExts = array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型
       $upload->autoSub =true ;
       $upload->subType ='date' ;
       $upload->dateFormat ='ym' ;
       $upload->savePath = './Uploads/thumb/';// 设置附件上传目录
       if($upload->upload()){
         $info = $upload->getUploadFileInfo();
         echo json_encode(array(
          'url'=>$info[0]['savename'],
          'title'=>htmlspecialchars($_POST['pictitle'], ENT_QUOTES),
          'original'=>$info[0]['name'],
          'state'=>'SUCCESS'
         ));
       }else{
         echo json_encode(array(
         'state'=>$upload->getErrorMsg()
         ));
           }
 
      }

我首先给大家看看代码先,在继续说明,

1、引入tp官方的文件上传处理类,然后初始化一些配置,这些都不介绍了啊!

2、判断他是否上传成功了,如果上传成功了,就先获取他的上传成功的信息,然后把数组转成json,用phpjson_encode。如果上传失败就把上传失败的信息直接返回!

以上都是在黄永成老师教程里面已经说明了的!就不详细说明了,不懂的就去看视频!

在整合好了上传后,发现上传的图片路径被转义了,一直显示不出来如图:

ThinkPHP整合百度Ueditor图文教程

我就在显示出数据的哪里用反转义函数,进行操作了一下{$article.content|stripslashes}这样就是把转义的字符串进行反转义,这样数据就能正常显示了
如图:ThinkPHP整合百度Ueditor图文教程

然后在前台模版显示数据的时候不仅要反转义还要去掉html实体化,{$article.content|htmlspecialchars_decode|stripslashes}这样就能正常显示了!

还有哟个问题,百度编辑器当里面的内容增长时,他的高度也是增长的,如图:

ThinkPHP整合百度Ueditor图文教程

解决方案就是在Ueditor的配置文件ueditor.config.js,里面的第428行打开注释,改成true,还有430行注释打开把他改成你初始化的的高度对应就好了。如图:

ThinkPHP整合百度Ueditor图文教程

这样编辑器就不会撑高了!如图:

ThinkPHP整合百度Ueditor图文教程

完结!!! 说的不好的大神勿喷~~这个只是分享交流,如果说错了 指出来就行了 谢谢~~~

补充说明:关于Ueditor在ie7下面调用不出来的bug问题解决办法,这个是前天逛官网的时候,发现一个人的这个问题的,因为我只有人见人爱的ie6,也都没有去测试,所以还是别人提醒,现在更正一下ie7的bug解决方案~感谢这位大湿啊~
如图:

ThinkPHP整合百度Ueditor图文教程

PHP 相关文章推荐
php中获取主机名、协议及IP地址的方法
Nov 18 PHP
php通过array_push()函数添加多个变量到数组末尾的方法
Mar 18 PHP
Laravel 5框架学习之Eloquent 关系
Apr 09 PHP
php实现只保留mysql中最新1000条记录
Jun 18 PHP
解析WordPress中的post_class与get_post_class函数
Jan 04 PHP
PHP中Array相关函数简介
Jul 03 PHP
php字符串操作针对负值的判断分析
Jul 28 PHP
php、java、android、ios通用的3des方法(推荐)
Sep 09 PHP
thinkPHP5框架中widget的功能与用法详解
Jun 11 PHP
PHP将英文数字转换为阿拉伯数字实例讲解
Jan 28 PHP
php服务器的系统详解
Oct 12 PHP
php设计模式之原型模式分析【星际争霸游戏案例】
Mar 23 PHP
浅谈PHP正则表达式中修饰符/i, /is, /s, /isU
Oct 21 #PHP
php读取目录及子目录下所有文件名的方法
Oct 20 #PHP
php中的字符编码转换函数用法示例
Oct 20 #PHP
PHP实现通过中文字符比率来判断垃圾评论的方法
Oct 20 #PHP
php的ZipArchive类用法实例
Oct 20 #PHP
php自定义apk安装包实例
Oct 20 #PHP
php防止站外远程提交表单的方法
Oct 20 #PHP
You might like
AJAX的跨域访问-两种有效的解决方法介绍
2013/06/22 PHP
php setcookie(name, value, expires, path, domain, secure) 参数详解
2013/06/28 PHP
深入分析PHP引用(&amp;)
2014/09/04 PHP
jquery 可排列的表实现代码
2009/11/13 Javascript
IE的有条件注释判定IE版本详解(附实例代码)
2012/01/04 Javascript
点击A元素触发B元素的事件在IE8下会识别成A元素
2014/09/04 Javascript
javascript的BOM汇总
2015/07/16 Javascript
js实现div拖动动画运行轨迹效果代码分享
2015/08/27 Javascript
详解打造 Vue.js 可复用组件
2017/03/24 Javascript
在vue中获取dom元素内容的方法
2017/07/10 Javascript
vue.js模仿京东省市区三级联动的选择组件实例代码
2017/11/22 Javascript
Vue 换肤的示例实践
2018/01/23 Javascript
微信小程序实现九宫格抽奖
2020/04/15 Javascript
Echarts动态加载多条折线图的实现代码
2019/05/24 Javascript
vue拖拽组件 vuedraggable API options实现盒子之间相互拖拽排序
2019/07/08 Javascript
15分钟学会vue项目改造成SSR(小白教程)
2019/12/17 Javascript
原生JavaScript创建不可变对象的方法简单示例
2020/05/07 Javascript
JS实现时间校验的代码
2020/05/25 Javascript
ES6 Symbol在对象中的作用实例分析
2020/06/06 Javascript
vue 数据操作相关总结
2020/12/17 Vue.js
js实现鼠标切换图片(无定时器)
2021/01/27 Javascript
[02:07]2017国际邀请赛中国区预选赛直邀战队前瞻
2017/06/23 DOTA
[47:38]Optic vs VGJ.S 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
[52:05]EG vs OG 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
使用python进行文本预处理和提取特征的实例
2018/06/05 Python
Python3内置模块之json编解码方法小结【推荐】
2020/12/09 Python
Python多版本开发环境管理工具介绍
2019/07/03 Python
Python While循环语句实例演示及原理解析
2020/01/03 Python
Tensorflow训练模型越来越慢的2种解决方案
2020/02/07 Python
如何在mac下配置python虚拟环境
2020/07/06 Python
python脚本使用阿里云slb对恶意攻击进行封堵的实现
2021/02/04 Python
美国休闲服装品牌:Express
2016/09/24 全球购物
安全横幅标语
2014/06/09 职场文书
2014年教师学期工作总结
2014/11/08 职场文书
企业爱心捐款倡议书
2015/04/27 职场文书
书法社团活动总结
2015/05/07 职场文书