因为单纯喜欢 UEditor 的界面,于是把项目中原先的编辑器进行的替换,但在后续操作中发现一些问题,就是远程图片上传。
远程图片上传是个很有意思的东西,比如你从别的网站复制一段文件,如果文字中带有图片,编辑器会自动将图片提取出来,进行上传,从而不用担心远程图片失效后,自己本地也无法浏览。
通过检查,发现远程图片上传的操作页面是:getRemoteImage.php 。打开后我们先配置 savePath ,因为不同用户使用,需要存放到不同的目录,以免混乱,也方便管理
修改后代码:
?
//远程抓取图片配置
if(isset($_SESSION['admin'])){
$myPath = 'http://www.cnblogs.com/../dofiles/ueditorUpload/admin/'.$_SESSION['admin']['id'].'/';
}else if(isset($_SESSION['user'])){
$myPath = 'http://www.cnblogs.com/../dofiles/ueditorUpload/user/'.$_SESSION['user']['id'].'/';
}else{
$myPath = 'http://www.cnblogs.com/../dofiles/ueditorUpload/unkonw/';
}
$config = array(
"savePath" => $myPath , //保存路径
"allowFiles" => array( ".gif" , ".png" , ".jpg" , ".jpeg" , ".bmp" ) , //文件允许格式
"maxSize" => 3000 //文件大小限制,单位KB
);
然后问题就来了,UEditor 里,文件、图片上传都是通过 Uploader.class.php 这个php类操作的,但远程图片上传则不是。
我在85行发现,创建路径的时候,单纯的使用了mkdir进行来创建,因为mkdir不能创建带有层级的路径,所以导致在路径如果不存在的情况下,复制远程图片上传失败。
知道问题处理起来就容易了,我先写一个循环创建文件目录的函数(因为之前写过,这里就直接拿来用了):
?
//连续创建带层级的文件夹
function recursive_mkdir($folder){
$folder = preg_split( "/[\\\\\/]/" , $folder );
$mkfolder = '';
for($i=0; isset($folder[$i]); $i++){
if(!strlen(trim($folder[$i]))){
continue;
}
$mkfolder .= $folder[$i];
if(!is_dir($mkfolder)){
mkdir("$mkfolder",0777);
}
$mkfolder .= DIRECTORY_SEPARATOR;
}
}
然后修改85行:
?
//创建保存位置
$savePath = $config[ 'savePath' ];
if ( !file_exists( $savePath ) ) {
recursive_mkdir($savePath);
//mkdir( "$savePath" , 0777 );
}
这样一来,就没有问题了。
这问题也已经提交给百度官方,希望修正。
测试UEditor版本为1.2.3.0,如果之前版本也有相关问题,按照修改思路去修改应该也可以解决。
分享到:
相关推荐
百度控件ueditor图片上传到远程服务器解决方案 一、搭建ueditor环境 二、修改源码 三、重新编译源码 四、使用说明
本篇文章将深入探讨如何解决ueditor上传图片时的跨域问题以及如何自定义图片上传插件。 首先,我们要理解什么是跨域(CORS)。跨域是指一个域下的文档或脚本尝试请求另一个域下的资源时,如果两个域不相同,则...
在本文中,我们将深入探讨当UEditor编辑器遇到远程图片上传失败的问题时,如何进行解决。 首先,远程图片上传是UEditor的一个重要特性,它允许用户复制包含远程图片的文本并自动抓取图片,以便在本地存储,确保即使...
总的来说,这个项目提供了一个完整且可直接运行的ueditor图片上传解决方案,适合对SpringBoot有一定了解,并希望快速搭建具备图片上传功能的编辑器的开发者。通过学习和研究这个项目,开发者可以深入理解ueditor与...
ueditor跨域图片上传ueditor跨域图片上传ueditor跨域图片上传ueditor跨域图片上传ueditor跨域图片上传ueditor跨域图片上传ueditor跨域图片上传
【标题】"ueditor jsp 图片上传demo"是一个基于Ueditor编辑器的Java Web应用程序示例,展示了如何在jsp页面上实现图片上传功能。Ueditor是一款强大的富文本编辑器,广泛应用于网页内容编辑,支持多种语言,包括...
具体使用方法参考下文 https://blog.csdn.net/china574512989/article/details/76260172
- 确保修改后的路径是可写的,否则图片上传会失败。 - 如果服务器有权限控制,需要确保 UEditor 运行的用户有足够的权限访问和写入指定路径。 - 路径中可以包含动态变量,如日期、时间戳等,以便更好地组织和管理...
以上就是 Ueditor 图片上传、回显及在线管理的配置方法。记得在实际操作中根据你的项目结构进行相应的调整,确保每个路径都指向正确的位置。如果有项目代码可供参考,将更有利于理解与实施这些配置步骤。
本文将详细介绍如何自定义Ueditor的图片上传接口以及解决单图片上传的跨域问题。 首先,理解什么是跨域。在浏览器的安全策略中,同一源策略规定,一个网页上的脚本只能访问与该网页同源(协议、域名、端口都相同)...
总之,解决UEditor上传图片时报错“未找到上传数据”的问题,需要从服务器端配置、URL设置、后端代码、权限以及返回数据格式等方面进行排查。同时,熟悉和利用好提供的库文件,可以更高效地实现文件上传功能。
虽然编辑器实例被隐藏,我们仍可以使用ueditor提供的API手动触发图片上传,例如调用`UE.Editor.prototype.execCommand('insertimage', imgUrls)`,其中`imgUrls`是图片URL的数组。 6. **安全性与权限控制**: 在...
然而,根据描述中的信息,有办法实现上传图片后保持原文件名的功能,这通常需要对uEditor的配置或后端处理逻辑进行定制。 以下是实现这一功能的关键知识点: 1. **uEditor配置**:uEditor允许通过配置项来调整其...
详细说明了ueditor上传失败的问题及解决方案 贴有源码
本文将详细讲解如何使用ueditor这款流行的富文本编辑器将图片上传到阿里云对象存储服务(OSS)。 ueditor是一款功能强大的在线富文本编辑器,它支持多种富文本编辑功能,包括图片、视频、表格等多媒体元素的插入。...
### Ueditor上传图片不显示问题解析与解决方法 #### 一、问题背景 在使用Ueditor编辑器的过程中,用户可能会遇到上传图片后无法正常显示的问题。这种情况通常表现为:上传后的图片仅显示一个小图标在旋转加载状态...
2. 错误处理:如果上传失败,UEditor会显示错误提示。开发者可以自定义错误处理函数,根据服务器返回的状态码和错误信息给出友好的提示。 五、安全与性能优化 1. 图片格式与大小限制:为了防止恶意上传大文件或不...
本代码我已经改进,编辑器已加宽,2.7.3可用。UEditor是由百度web前端研发部开发所见即所得文本web编辑器,具有轻量,可定制,注重用户体验等特点。...Ueditor支持word图片转存,再也不要一次次导出再上传了;
1. **百度UEditor使用日志.doc**:这份文档可能记录了UEditor在实际使用过程中的操作步骤、遇到的问题、解决方法以及优化建议,对于理解UEditor的工作原理和调试问题有极大帮助。 2. **ueditor1_4_3-utf8-jsp.zip**...
以上就是解决Vue使用UEditor上传图片服务配置问题的基本步骤。记得在实际应用中,根据项目需求调整配置,并确保后端接口能够正确处理图片上传请求。通过Vue-UEditor组件,你可以在Vue项目中轻松集成并定制UEditor,...