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 处理图片的类实现代码
Oct 23 PHP
三个类概括PHP的五种设计模式
Sep 05 PHP
解析PHP中的内存管理,PHP动态分配和释放内存
Jun 28 PHP
PHP 使用pcntl和libevent 实现Timer功能
Oct 27 PHP
PHP URL参数获取方式的四种例子
Feb 28 PHP
php中rename函数用法分析
Nov 15 PHP
php遍历目录方法小结
Mar 10 PHP
WordPress中用于创建以及获取侧边栏的PHP函数讲解
Dec 29 PHP
PHP汉字转换拼音的函数代码
Dec 30 PHP
Yii数据模型中rules类验证器用法分析
Jul 15 PHP
PHP实现的最大正向匹配算法示例
Dec 19 PHP
PHP设计模式之工厂模式(Factory Pattern)的讲解
Mar 21 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
php中http_build_query 的一个问题
2012/03/25 PHP
处理单名多值表单的详解
2013/06/08 PHP
PHP的反射类ReflectionClass、ReflectionMethod使用实例
2014/08/05 PHP
PHP多线程编程之管道通信实例分析
2015/03/07 PHP
php session的锁和并发
2016/01/22 PHP
Laravel中批量赋值Mass-Assignment的真正含义详解
2017/09/29 PHP
JavaScript EasyPager 分页函数
2011/05/25 Javascript
ExtJS DOM元素操作经验分享
2013/08/28 Javascript
动态加载dtree.js树treeview(示例代码)
2013/12/17 Javascript
javascript获取当前鼠标坐标的方法
2015/01/10 Javascript
BootStrap实现鼠标悬停下拉列表功能
2017/02/17 Javascript
Node.js安装配置图文教程
2017/05/10 Javascript
JavaScript实现选中文字提示新浪微博分享效果
2017/06/15 Javascript
JS实现常见的查找、排序、去重算法示例
2018/05/21 Javascript
webpack+vue-cil中proxyTable处理跨域的方法
2018/07/20 Javascript
微信小程序实现授权登录
2019/05/15 Javascript
详解 微信小程序开发框架(MINA)
2019/05/17 Javascript
JS检索下拉列表框中被选项目的索引号(selectedIndex)
2019/12/17 Javascript
原生js 实现表单验证功能
2021/02/08 Javascript
python共享引用(多个变量引用)示例代码
2013/12/04 Python
Python实现八大排序算法
2016/08/13 Python
Python读取系统文件夹内所有文件并统计数量的方法
2018/10/23 Python
Python实现的大数据分析操作系统日志功能示例
2019/02/11 Python
Python中print和return的作用及区别解析
2019/05/05 Python
Python函数的定义方式与函数参数问题实例分析
2019/12/26 Python
pycharm中import呈现灰色原因的解决方法
2020/03/04 Python
Python count函数使用方法实例解析
2020/03/23 Python
10款最佳Python开发工具推荐,每一款都是神器
2020/10/15 Python
瑞典度假品牌:OAS
2019/05/28 全球购物
三星法国官方网站:Samsung法国
2019/10/31 全球购物
香港士多网上超级市场:Ztore
2021/01/09 全球购物
新浪网技术部笔试题
2016/08/26 面试题
化学专业自荐信
2014/05/28 职场文书
2014年幼儿园班级工作总结
2014/12/17 职场文书
vue route新窗口跳转页面并且携带与接收参数
2022/04/10 Vue.js
css3手动实现pc端横向滚动
2022/06/21 HTML / CSS