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中查询SQL Server或Sybase时TEXT字段被截断的解决方法
Mar 10 PHP
PHP的博客ping服务代码
Feb 04 PHP
PHP中的插件机制原理和实例
Jul 08 PHP
php实现上传图片保存到数据库的方法
Feb 11 PHP
php查看当前Session的ID实例
Mar 16 PHP
PHP实现GIF图片验证码
Nov 04 PHP
学习php设计模式 php实现命令模式(command)
Dec 08 PHP
PHP输入流php://input实例讲解
Dec 22 PHP
利用php输出不同的心形图案
Apr 22 PHP
详解Yii2 之 生成 URL 的方法
Jun 16 PHP
PHP date()格式MySQL中插入datetime方法
Jan 29 PHP
关于laravel框架中的常用目录路径函数
Oct 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
浅析iis7.5安装配置php环境
2015/05/10 PHP
再Docker中架设完整的WordPress站点全攻略
2015/07/29 PHP
PHP商品秒杀问题解决方案实例详解【mysql与redis】
2019/07/22 PHP
node.js中的querystring.unescape方法使用说明
2014/12/10 Javascript
jQuery实现多级联动下拉列表查询框
2016/01/18 Javascript
js编写一个简单的产品放大效果代码
2016/06/27 Javascript
Bootstrap3 datetimepicker控件使用实例
2016/12/13 Javascript
jQuery+C#实现参数RSA加密传输功能【附jsencrypt.js下载】
2017/06/26 jQuery
详解webpack require.ensure与require AMD的区别
2017/12/13 Javascript
基于vue-video-player自定义播放器的方法
2018/03/21 Javascript
Angular如何在应用初始化时运行代码详解
2018/06/11 Javascript
微信小程序仿微信运动步数排行(交互)
2018/07/13 Javascript
vue router 通过路由来实现切换头部标题功能
2019/04/24 Javascript
浅谈JS的原型和继承
2019/05/08 Javascript
如何在Angular8.0下使用ngx-translate进行国际化配置
2019/07/24 Javascript
VUE实现密码验证与提示功能
2019/10/18 Javascript
vue 解决异步数据更新问题
2019/10/29 Javascript
vue利用全局导航守卫作登录后跳转到未登录前指定页面的实例代码
2020/05/19 Javascript
[03:17]DOTA2英雄基础教程 剧毒术士
2013/12/12 DOTA
[01:02:53]DOTA2上海特级锦标赛主赛事日 - 5 总决赛Liquid VS Secret第二局
2016/03/06 DOTA
linux平台使用Python制作BT种子并获取BT种子信息的方法
2017/01/20 Python
python下os模块强大的重命名方法renames详解
2017/03/07 Python
Python简单获取二维数组行列数的方法示例
2018/12/21 Python
基于python解线性矩阵方程(numpy中的matrix类)
2019/10/21 Python
解决Python pip 自动更新升级失败的问题
2020/02/21 Python
Python中flatten( ),matrix.A用法说明
2020/07/05 Python
JupyterNotebook 输出窗口的显示效果调整实现
2020/09/22 Python
Html5饼图绘制实现统计图的方法
2020/08/05 HTML / CSS
智能家居、吸尘器、滑板车、电动自行车网上购物:Geekmaxi
2021/01/18 全球购物
意大利在线高尔夫商店:Online Golf
2021/03/09 全球购物
sealed修饰符是干什么的
2012/10/23 面试题
食品安全工作实施方案
2014/03/26 职场文书
反洗钱宣传活动总结
2014/08/26 职场文书
基层党员群众路线整改措施及努力方向
2014/10/28 职场文书
小学四年级学生评语
2014/12/26 职场文书
会计岗位职责范本
2015/04/02 职场文书