php - Summernote 和 img-upload.php 文件中的绝对路径
问题描述
我在后端使用summernote 作为文本编辑器。然后必须将存储的文本和图像显示在前端的页面中。编辑器和上传图像工作,但问题是由于路径恢复前端的图像。我需要在 img-upload.php 文件中使用绝对路径,但它似乎不接受它。
img-upload.php
if(empty($_FILES['file']))
{
exit();
}
$errorImgFile = "./img/img_upload_error.jpg";
$temp = explode(".", $_FILES["file"]["name"]);
$newfilename = round(microtime(true)) . '.' . end($temp);
$destinationFilePath = '../../images/img-uploads/'.$newfilename ;
if(!move_uploaded_file($_FILES['file']['tmp_name'], $destinationFilePath)){
echo $errorImgFile;
}
else{
echo $destinationFilePath;
}
相对路径有效:
$destinationFilePath = '../../images/img-uploads/'.$newfilename ;
但以这种方式不是:
$path = 'http://localhost/sites/my-site/';
$destinationFilePath = $path.'images/img-uploads/'.$newfilename ;
我没有看到任何错误。谢谢
解决方案
你现在可能已经想通了……
似乎 Summernote 不会从绝对路径渲染图像,但您可以获得的最接近的是从根路径指定文件,例如:
$path = '/sites/my-site/';
$destinationFilePath = $path.'images/img-uploads/'.$newfilename ;
结果类似于:'/sites/my-site/images/img-uploads/filename.jpg'
如果将其保存到数据库中,则可以使用文件的此根路径地址在站点上的任何位置呈现图像。
推荐阅读
- visual-studio - 如何计算 Visual Studio 2017 中选定(或找到)的字符和行?
- asp.net - 我想编写显示使用 FileUpload 的 ASP.NET 代码
- javascript - 如何等待来自订阅的异步数据
- php - Laravel 控制器和帮助文件:视图中未定义的变量
- asp.net - Web API 2 登录
- python - 使用 cx_Freeze 时出现“ImportError: DLL load failed: The specified module could not be found”,即使添加了 tcl86t.dll 和 tk86t.dll
- linux - pthread.h - 自愿 CPU 是否是调度另一个用户级线程的唯一触发器?
- node.js - 无法读取未定义的“get”属性,表示中间件
- google-app-engine - webapp2 会话:会话在概念上是如何工作的?
- visual-studio - 无法通过命令行编译 Visual Studio 项目。我究竟做错了什么?