`
yn2010
  • 浏览: 23573 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

关于UEditor远程图片上传失败的解决办法

 
阅读更多
 因为单纯喜欢 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环境 二、修改源码 三、重新编译源码 四、使用说明

    ueditor自定义图片上传

    本篇文章将深入探讨如何解决ueditor上传图片时的跨域问题以及如何自定义图片上传插件。 首先,我们要理解什么是跨域(CORS)。跨域是指一个域下的文档或脚本尝试请求另一个域下的资源时,如果两个域不相同,则...

    关于UEditor编辑器远程图片上传失败的解决办法

    在本文中,我们将深入探讨当UEditor编辑器遇到远程图片上传失败的问题时,如何进行解决。 首先,远程图片上传是UEditor的一个重要特性,它允许用户复制包含远程图片的文本并自动抓取图片,以便在本地存储,确保即使...

    ueditor上传图片配置

    总的来说,这个项目提供了一个完整且可直接运行的ueditor图片上传解决方案,适合对SpringBoot有一定了解,并希望快速搭建具备图片上传功能的编辑器的开发者。通过学习和研究这个项目,开发者可以深入理解ueditor与...

    ueditor跨域图片上传

    ueditor跨域图片上传ueditor跨域图片上传ueditor跨域图片上传ueditor跨域图片上传ueditor跨域图片上传ueditor跨域图片上传ueditor跨域图片上传

    ueditor jsp 图片上传demo

    【标题】"ueditor jsp 图片上传demo"是一个基于Ueditor编辑器的Java Web应用程序示例,展示了如何在jsp页面上实现图片上传功能。Ueditor是一款强大的富文本编辑器,广泛应用于网页内容编辑,支持多种语言,包括...

    ueditor实现图片上传到项目外

    具体使用方法参考下文 https://blog.csdn.net/china574512989/article/details/76260172

    百度的UEditor修改图片上传路径版

    - 确保修改后的路径是可写的,否则图片上传会失败。 - 如果服务器有权限控制,需要确保 UEditor 运行的用户有足够的权限访问和写入指定路径。 - 路径中可以包含动态变量,如日期、时间戳等,以便更好地组织和管理...

    百度富文本框(Ueditor)自定义上传接口,并解决单图片上传的跨域问题

    本文将详细介绍如何自定义Ueditor的图片上传接口以及解决单图片上传的跨域问题。 首先,理解什么是跨域。在浏览器的安全策略中,同一源策略规定,一个网页上的脚本只能访问与该网页同源(协议、域名、端口都相同)...

    Ueditor上传图片+图片回显+图片在线管理配置说明

    以上就是 Ueditor 图片上传、回显及在线管理的配置方法。记得在实际操作中根据你的项目结构进行相应的调整,确保每个路径都指向正确的位置。如果有项目代码可供参考,将更有利于理解与实施这些配置步骤。

    uEditor上传图片并保存为原文件名

    然而,根据描述中的信息,有办法实现上传图片后保持原文件名的功能,这通常需要对uEditor的配置或后端处理逻辑进行定制。 以下是实现这一功能的关键知识点: 1. **uEditor配置**:uEditor允许通过配置项来调整其...

    UEditor(五)——解决上传图片时报错:未找到上传数据

    总之,解决UEditor上传图片时报错“未找到上传数据”的问题,需要从服务器端配置、URL设置、后端代码、权限以及返回数据格式等方面进行排查。同时,熟悉和利用好提供的库文件,可以更高效地实现文件上传功能。

    ueditor(单独使用上传图片)

    虽然编辑器实例被隐藏,我们仍可以使用ueditor提供的API手动触发图片上传,例如调用`UE.Editor.prototype.execCommand('insertimage', imgUrls)`,其中`imgUrls`是图片URL的数组。 6. **安全性与权限控制**: 在...

    ueditor本地上传图片失败

    详细说明了ueditor上传失败的问题及解决方案 贴有源码

    ueditor上传图片到阿里云oss服务器

    本文将详细讲解如何使用ueditor这款流行的富文本编辑器将图片上传到阿里云对象存储服务(OSS)。 ueditor是一款功能强大的在线富文本编辑器,它支持多种富文本编辑功能,包括图片、视频、表格等多媒体元素的插入。...

    UEditor图片上传到后台

    2. 错误处理:如果上传失败,UEditor会显示错误提示。开发者可以自定义错误处理函数,根据服务器返回的状态码和错误信息给出友好的提示。 五、安全与性能优化 1. 图片格式与大小限制:为了防止恶意上传大文件或不...

    ECshop编辑器更换成百度编辑器UEditor,远程图片可本地化

    本代码我已经改进,编辑器已加宽,2.7.3可用。UEditor是由百度web前端研发部开发所见即所得文本web编辑器,具有轻量,可定制,注重用户体验等特点。...Ueditor支持word图片转存,再也不要一次次导出再上传了;

    UEditor上传图片测试项目

    1. **百度UEditor使用日志.doc**:这份文档可能记录了UEditor在实际使用过程中的操作步骤、遇到的问题、解决方法以及优化建议,对于理解UEditor的工作原理和调试问题有极大帮助。 2. **ueditor1_4_3-utf8-jsp.zip**...

    ueditor可运行上传图片Javaweb项目

    【标题】"ueditor可运行上传图片Javaweb项目"揭示了这个压缩包文件包含了一个集成ueditor的JavaWeb应用程序,它允许用户在网页上编辑内容并上传图片。ueditor是一款广泛使用的富文本编辑器,它提供了丰富的文本格式...

    Ueditor1.4.3 独立上传图片使用方法

    Ueditor1.4.3 独立上传图片使用方法,自从Ueditor1升级后监听事件失效的解决办法

Global site tag (gtag.js) - Google Analytics