ThinkPHP整合百度Ueditor图文教程

ThinkPHP整合百度Ueditor图文教程 

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.οnlοad=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。如果上传失败就把上传失败的信息直接返回!

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

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

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

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

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

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

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

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

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

Win10最新版官方下载/Win10安装图文教程

转载于:https://www.cnblogs.com/lovezbs/p/4518082.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/405816.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php 支付加密,关于支付时rsa加密解密的函数

//加密function _checkPadding($padding, $type) {if ($type en) {switch ($padding) {case OPENSSL_PKCS1_PADDING :$ret true;break;default :$ret false;}} else {switch ($padding) {case OPENSSL_PKCS1_PADDING :case OPENSSL_NO_PADDING :$ret true;break;default :$…

电脑延迟关机命令Shutdown详解

From: http://www.ccw.com.cn/college/soft/b2c/os/htm2010/20101208_904968.shtml 目前实现自动关机的方法主要是使用第三方软件,比较麻烦!其实,Windows自身就具备自动关机功能,它是由系统内部的 "Shutdown.exe"升序来控制的,位于"C:/windows/System32"文…

树莓派Raspberry 操作GPIO--LED

一、 安装 wiringPi &#xff1a; sudo apt-get install wiringPi 二、查看安装版本 三、查看端口 四、创建源文件 touch myled.c 五、编写源代码 vi myled.c 使用cat myled.c 查看 六、编译和链接wiringPi库 七、运行

SQL逗号分隔的字段统计(摘自网络)

前言&#xff1a;由于很多业务表因为历史原因或者性能原因&#xff0c;都使用了违反第一范式的设计模式。即同一个列中存储了多个属性值&#xff08;具体结构见下表&#xff09;。这种模式下&#xff0c;应用常常需要将这个列依据分隔符进行分割&#xff0c;并得到列转行的结果…

缺少using namespace std;

错误现象&#xff1a; error C2143: syntax error : missing ; before < error C2501: list : missing storage-class or type specifiers error C2059: syntax error : < error C2039: iterator : is not a member of global namespace error C2238: unexpected token(s…

php json传输被过滤,php-the_content过滤器,用于将自定义字段添加到JSON响应

我对这个用于显示JSON API中的自定义字段的the_content过滤器感到绝望.我正在使用此插件http://wordpress.org/plugins/json-rest-api/从自定义帖子类型获得JSON响应.这些自定义帖子类型具有我必须在移动应用程序中显示的自定义字段.为了实现这一点,我编写了以下代码,该代码使用…

Ubuntu 和 Centos 的一点差别

1、 centos使用yum的方式&#xff0c;而Ubuntu使用apt-get 方式&#xff08;Raspberry也是&#xff09; 2、centos支持rpm包&#xff0c;但Ubuntu不支持 3、Ubuntu桌面系统比Centos好看&#xff0c;二者都有桌面系统和服务器系统 4、Ubuntu普通用户可以采用sudo执行root命令…

飞凌开发板 cramfs 镜像文件修改

From: http://blog.csdn.net/ex_net/article/details/7247111 CRAMFS文件系统是专门针对闪存设计的只读压缩的文件系统,其容量上限为256M,采用zlib压缩,文件系统类型可以是EXT2或EXT3.    如果使用RAMDISK方式来使用文件系统,那么在系统运行之后,首先得把flash上的映像文件全…

Linux下的signal信号机制

在Linux中&#xff0c;要发送一个信号相当容易。程序员需要知道两个信息&#xff1a;要发送哪个信号&#xff0c;将这个信号发送给哪个进程。可以用 man 7 signal 找到一个可以利用的信号的列表。用户可以只将信号发送给用户自己的进程&#xff0c;也可以以root身份运行从而将信…

React开发(200):三种截取字符串的方法

JS提供三个截取字符串的方法,分别是:slice(),substring()和substr(),它们都可以接受一个或两个参数: var stmp "rcinn.cn"; 使用一个参数 alert(stmp.slice(3));//从第4个字符开始,截取到最后个字符;返回"nn.cn" alert(stmp.substring(3));//从第4个字…

oracle scn与数据恢复,[Oracle] SCN与数据恢复的关系

Oracle内部主要存在以下四种SCN1.系统检查点(system checkpoint)SCN每当一个检查点完成时&#xff0c;Oracle就把该检查点对应的SCN记录到控制文件中&#xff0c;可以用以下语句查看当前数据库的检查点SCN&#xff1a;select CHECKPOINT_CHANGE# from v$database;CHECKPOINT_CH…

js Date 生成某年某月的天数

$(function () {//构造一个日期对象&#xff1a;var day new Date(2014, 2, 0);//获取天数&#xff1a;var daycount day.getDate();alert(daycount);}) 省去了判断 闰年平年 转载于:https://www.cnblogs.com/dragon-L/p/4522144.html

romfs, cramfs和ramdisk

From:http://blog.csdn.net/at91rm9200/article/details/550074 文章来源 &#xff08;http://publishblog.blogchina.com/blog/tb.b?diaryID3226065&#xff09; cramfs和romfs只是一个文件系统类型&#xff0c;ramdisk相当于一块硬盘空间&#xff0c;可以理解为在内存中虚拟…

Qt中利用QProcess调用外部cmd.exe执行程序

1、#include "mainwindow.h"中 添加头文件&#xff1a; #include <QProcess> 添加成员&#xff1a; QProcess *myprocess; 添加槽函数声明&#xff1a; void showCMDResult(); void showCMDState(QProcess::ProcessState state); void showCMDError(); vo…

html 后# 号的作用,及html 如何传参

2019独角兽企业重金招聘Python工程师标准>>> 经常在 网上看到一些静态网页后加着 #XXX 如http://www.family168.com/tutorial/springsecurity3/html/introduction.html#spring-security-core 这种形式。这个#spring-security-core 起的作用就是在 introduction 中定…

oracle10g生成awr报告,awr报告生成位置.docx

awr报告生成位置/u01/app/oracle/product//dbhome_1/rdbms/admin/脚本生成awr报告  在SQL环境执行&#xff1a;SQL>/u01/app/oracle/product//dbhome_1/rdbms/admin/  输入报告类型&#xff1a;html或text  输入要生成报告的天数&#xff0c;缺省是7天  列出最近7天…

Codeforces Round #304 (Div. 2)

这次打得较差&#xff0c;差点就绿了。。。 B题&#xff0c;这B题竟然WA了&#xff0c;再看看就发现一个很严重的错误。。--! #include <iostream> #include <cstdio> #include <algorithm> #include <cstring>using namespace std;int num[3050];int …

Qt 设置应用程序开机自启动

要实现开机自启动&#xff0c;主要是将应用程序添加到注册表中。 一、首先定义注册表 #define AUTO_RUN "HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Run" 二、编写开机自启动设置函数 //开机自启动&#xff0c;采用QSetting的方式将其写…