第一步、前端模板实例化百度编辑器

<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.2.3整合最新百度Ueditor1.4.3编辑器

ThinkPHP3.1.3 整合 UEditor百度编辑器 图片上传的更多相关文章

  1. ueditor 百度编辑器图片上传 接 node.js 及一些前端自定义

    百度编辑器 用node.js 做服务端 demo 大神已整理的 记录一下 以作参考 https://github.com/netpi/ueditor 1. 前端图片工具栏上传input file在这里 ...

  2. Thinkphp整合阿里云OSS图片上传实例

    Thinkphp3.2整合阿里云OSS图片上传实例,图片上传至OSS可减少服务器压力,节省宽带,安全又稳定,阿里云OSS对于做负载均衡非常方便,不用传到各个服务器了 首先引入阿里云OSS类库 < ...

  3. 【HTML5+MVC4】xhEditor网页编辑器图片上传

    准备工作: 创建一个MVC项目中,添加好xhEditor插件 相关用法:http://www.cnblogs.com/xcsn/p/4701497.html 注意事项:xhEditor分为v1.1.1 ...

  4. UMEditor(Ueditor mini)修改图片上传路径

    UMEditor(Ueditor mini)修改图片上传路径 imageUp.ashx string pathbase = "/UpLoad/images/"; //保存文件夹在网 ...

  5. SpringMVC:学习笔记(10)——整合Ckeditor且实现图片上传

    SpringMVC:学习笔记(10)——整合Ckeditor且实现图片上传 配置CKEDITOR 精简文件 解压之后可以看到ckeditor/lang下面有很多语言的js,如果不需要那么多种语言的,可 ...

  6. SpringBoot整合Fastdfs,实现图片上传(IDEA)

    我们部署Fastdfs,就是为了实现文件的上传. 现在使用idea整合Fastdfs,实现图片上传 部署环境:Centos7部署分布式文件存储(Fastdfs) 利用Java客户端调用FastDFS ...

  7. 百度开源富文本编辑器 UEditor配置:图片上传和文件上传独立使用方法

    使用UEditor编辑器自带的插件实现图片上传和文件上传功能,这里通过配置UEditor单独使用其内置的第三方插件swfupload来实现图片和文件的上传,通过对UEditor配置轻松实现图片批量上传 ...

  8. DEDECMS:DEDE整合(UEditor)百度编辑器以后,栏目内容、单页无法保存内容的bug处理方法

    已经整合过百度编辑器的站长们或许会发现,在编辑单页文档和栏目内容的时候,百度编辑器不能够保存新增或已修改数据,经过排查后发现问题出现在catalog_edit.htm.catalog_add.htm这 ...

  9. 关于富文本编辑器—UEditor(java版)的使用,以及如何将UEditor的文件/图片上传路径改成绝对路径

    突然发现好久没写博客了,感觉变懒了,是要让自己养成经常写文章的习惯才行.既可以分享自己的所学,和所想,和大家一起讨论,发现自己的不足的问题. 大家可能经常会用到富文本编辑器,今天我要说的是UEdito ...

随机推荐

  1. matlab imwrite

    函数功能:将图像数据写入到图像文件中,存储在磁盘上. 调用格式:imwrite(A,filename,fmt) A是图像数据,filename是目标图像名字,fmt是要生成的图片的格式. 图片格式有: ...

  2. BZOJ 1004 Cards(Burnside引理+DP)

    因为有着色数的限制,故使用Burnside引理. 添加一个元置换(1,2,,,n)形成m+1种置换,对于每个置换求出循环节的个数, 每个循环节的长度. 则ans=sigma(f(i))/(m+1) % ...

  3. 【bzoj4922】[Lydsy六月月赛]Karp-de-Chant Number 贪心+背包dp

    题目描述 给出 $n$ 个括号序列,从中选出任意个并将它们按照任意顺序连接起来,求以这种方式得到匹配括号序列的最大长度. 输入 第一行包含一个正整数n(1<=n<=300),表示括号序列的 ...

  4. [Leetcode] valid sudoku 有效数独

    Determine if a Sudoku is valid, according to: Sudoku Puzzles - The Rules. The Sudoku board could be ...

  5. webpack开发模式和生产模式设置及不同环境脚本执行

    1. webpack设置开发模式和生产模式 (1). DefinePlugin插件设置 new webpack.DefinePlugin({ 'process.env': { NODE_ENV: '& ...

  6. 【简单算法】22.删除链表的倒数第N个节点

    题目: 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点. 示例: 给定一个链表: ->->->->, 和 n = . 当删除了倒数第二个节点后,链表变为 -& ...

  7. Linux 环境下用Tomcat 发布项目

    1.前提条件: a.安装远程连接Linux软件:F-Secure SSH File Transfer Trial[简写为:FSSH]: b.打开FSSH,远程连接Linux[单击“Quick Conn ...

  8. angularJs $resource自定义方法(待完善)

    配置CompanyService var services = angular.module('liaoyuan.services'); services.factory('CompanyServic ...

  9. 【Android】Android之Copy and Paste

    Android为复制粘贴提供了一个强大的基于剪切板的框架,它支持简单和复杂的数据类型,包括纯文本,复杂的数据结构,二进制流,甚至app资源文件.简单的文本数据直接存储在剪切板中,而复杂的数据则存储的是 ...

  10. vijos 1426 背包+hash

    背景 北京奥运会开幕了,这是中国人的骄傲和自豪,中国健儿在运动场上已经创造了一个又一个辉煌,super pig也不例外……………… 描述 虽然兴奋剂是奥运会及其他重要比赛的禁药,是禁止服用的.但是运动 ...