ThinkPHP3.1.3 整合 UEditor百度编辑器 图片上传
第一步、前端模板实例化百度编辑器
<js file='__ROOT__/Data/UEditor/ueditor.config.js' />
<js file='__ROOT__/Data/UEditor/ueditor.all.min.js' />
<js file='__ROOT__/Data/UEditor/lang/zh-cn/zh-cn.js' />
<script type="text/javascript">
window.UEDITOR_HOME_URL = '__ROOT__/Data/UEditor/'; // 添加编辑器实例所在的路径
window.onload = function(){
window.UEDITOR_CONFIG.initialFrameWidth = 1000; // 设置编辑器宽度
window.UEDITOR_CONFIG.initialFrameHeight = 600; // 设置编辑器高度
window.UEDITOR_CONFIG.serverUrl = "{:U(GROUP_NAME . '/Blog/upload')}"; // 服务器统一请求接口路径
UE.getEditor('container'); // 实例化编辑器,container是要实例化的网页元素id
}
</script>
第二步、后台Tp处理图片上传
// 编辑器图片上传处理
public function upload(){
// 修正UE后台配置文件config.json的路径
$config = json_decode(preg_replace("/\/\*[\s\S]+?\*\//", "", file_get_contents("./Data/UEditor/php/config.json")), true);
$action = $_GET['action'];
switch ($action) {
case 'config':
$result = json_encode($config);
break;
case 'uploadimage':
case 'uploadscrawl':
case 'uploadvideo':
case 'uploadfile':
// 调用ThinkPHP的UploadFile类
import('ORG.Net.UploadFile');
$upload = new UploadFile($config);
$upload->autoSub = true; // 启用子目录存储
$upload->subType = 'date'; // 子目录存储名为日期
$upload->dateFormat = 'Ym'; // 日期格式:Ym,如:201701 if($upload->upload('./Uploads/')){
$info = $upload->getUploadFileInfo();
// 图片加水印
// import('Class.Image', APP_PATH);
// Image::water('./Uploads/' . $info[0]['savename'], './Data/logo.png'); // 编辑返回数据格式(参考UE源码文件夹下/php/action_upload.php文件)
echo json_encode(array(
'state' => 'SUCCESS', // 上传状态,上传成功时必须返回"SUCCESS"
'url' => __ROOT__ . '/Uploads/' . $info[0]['savename'], // 返回的地址
'title' => $info[0]['name'] , // 新文件名
'original' => $info[0]['name'], // 原文件名
'type' => $info[0]['type'], // 文件类型
'size' => $info[0]['size'] //文件大小
));
}else{
echo json_encode(array('state'=>$upload->getErrorMsg()));
}
break;
default:
$result = json_encode(array('state' => '请求地址出错'));
break;
}
/* 输出结果 */
if (isset($_GET["callback"])) {
if (preg_match("/^[\w_]+$/", $_GET["callback"])) {
echo htmlspecialchars($_GET["callback"]) . '(' . $result . ')';
}else {
echo json_encode(array('state' => 'callback参数不合法'));
}
}else {
echo $result;
}
}
ThinkPHP3.1.3 整合 UEditor百度编辑器 图片上传的更多相关文章
- ueditor 百度编辑器图片上传 接 node.js 及一些前端自定义
百度编辑器 用node.js 做服务端 demo 大神已整理的 记录一下 以作参考 https://github.com/netpi/ueditor 1. 前端图片工具栏上传input file在这里 ...
- Thinkphp整合阿里云OSS图片上传实例
Thinkphp3.2整合阿里云OSS图片上传实例,图片上传至OSS可减少服务器压力,节省宽带,安全又稳定,阿里云OSS对于做负载均衡非常方便,不用传到各个服务器了 首先引入阿里云OSS类库 < ...
- 【HTML5+MVC4】xhEditor网页编辑器图片上传
准备工作: 创建一个MVC项目中,添加好xhEditor插件 相关用法:http://www.cnblogs.com/xcsn/p/4701497.html 注意事项:xhEditor分为v1.1.1 ...
- UMEditor(Ueditor mini)修改图片上传路径
UMEditor(Ueditor mini)修改图片上传路径 imageUp.ashx string pathbase = "/UpLoad/images/"; //保存文件夹在网 ...
- SpringMVC:学习笔记(10)——整合Ckeditor且实现图片上传
SpringMVC:学习笔记(10)——整合Ckeditor且实现图片上传 配置CKEDITOR 精简文件 解压之后可以看到ckeditor/lang下面有很多语言的js,如果不需要那么多种语言的,可 ...
- SpringBoot整合Fastdfs,实现图片上传(IDEA)
我们部署Fastdfs,就是为了实现文件的上传. 现在使用idea整合Fastdfs,实现图片上传 部署环境:Centos7部署分布式文件存储(Fastdfs) 利用Java客户端调用FastDFS ...
- 百度开源富文本编辑器 UEditor配置:图片上传和文件上传独立使用方法
使用UEditor编辑器自带的插件实现图片上传和文件上传功能,这里通过配置UEditor单独使用其内置的第三方插件swfupload来实现图片和文件的上传,通过对UEditor配置轻松实现图片批量上传 ...
- DEDECMS:DEDE整合(UEditor)百度编辑器以后,栏目内容、单页无法保存内容的bug处理方法
已经整合过百度编辑器的站长们或许会发现,在编辑单页文档和栏目内容的时候,百度编辑器不能够保存新增或已修改数据,经过排查后发现问题出现在catalog_edit.htm.catalog_add.htm这 ...
- 关于富文本编辑器—UEditor(java版)的使用,以及如何将UEditor的文件/图片上传路径改成绝对路径
突然发现好久没写博客了,感觉变懒了,是要让自己养成经常写文章的习惯才行.既可以分享自己的所学,和所想,和大家一起讨论,发现自己的不足的问题. 大家可能经常会用到富文本编辑器,今天我要说的是UEdito ...
随机推荐
- RT-thread 设备驱动组件之IIC总线设备
本文主要介绍RT-thread中IIC总线设备驱动,涉及到的主要文件有:驱动框架文件(i2c_core.c,i2c_dev.c,i2c-bit-ops.c,i2c_dev.h,i2c.h):底层硬件驱 ...
- 同步锁(synchronized)使用三要素
1.代码被多个线程访问 2.代码中有共享的数据 3.共享数据被多个语句操作
- BZOJ5466 NOIP2018保卫王国(倍增+树形dp)
暴力dp非常显然,设f[i][0/1]表示i号点不选/选时i子树内的答案,则f[i][0]=Σf[son][1],f[i][1]=a[i]+Σmin(f[son][0],f[son][1]). 注意到 ...
- BZOJ4240 有趣的家庭菜园(贪心+树状数组)
显然相当于使序列变成单峰.给原序列每个数按位置标号,则要求重排后的序列原标号的逆序对数最少.考虑将数从大到小放进新序列,那么贪心的考虑放在左边还是右边即可,因为更小的数一定会在其两侧,与它自身放在哪无 ...
- RESTful Webservice
1,REST和RESTFUL是什么? REST ( REpresentational State Transfer ),State Transfer 为 "状态传输" 或 &quo ...
- 1040: [ZJOI2008]骑士
首先是因为想学仙人掌图才来先拿这题热热身,结果&……竟然调了一个晚上我的傻叉!(其中一大半的时候是在郁闷hzwer和Greens的代码画风不一样,后来才发现一个用拓扑一个用树dp23333,以 ...
- CodeForces - 158B.Taxi (贪心)
CodeForces - 158B.Taxi (贪心) 题意分析 首先对1234的个数分别统计,4人组的直接加上即可.然后让1和3成对处理,只有2种情况,第一种是1多,就让剩下的1和2组队处理,另外一 ...
- UVA.725 Division (暴力)
UVA.725 Division (暴力) 题意分析 找出abcdefghij分别是0-9(不得有重复),使得式子abcde/fghij = n. 如果分别枚举每个数字,就会有10^10,肯定爆炸,由 ...
- HDOJ(HDU).2602 Bone Collector (DP 01背包)
HDOJ(HDU).2602 Bone Collector (DP 01背包) 题意分析 01背包的裸题 #include <iostream> #include <cstdio&g ...
- 调整KVM虚拟机硬盘大小
KVM虚拟机的硬盘映像默认存放在“/var/lib/libvirt/images/”中,先查看你的硬盘映像格式是不是RAW格式: qemu-img info /var/lib/libvirt/imag ...