首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

laravel上传数据库图片的路径有误

是指在使用laravel框架进行图片上传时,图片的保存路径设置不正确导致的问题。下面是对该问题的完善且全面的答案:

在laravel框架中,通常使用文件系统来处理文件上传。当上传图片时,需要确保图片的保存路径正确,以便后续能够正确访问和展示图片。

首先,需要在laravel的配置文件中设置文件系统的驱动类型和根路径。可以在config/filesystems.php文件中进行配置。常用的文件系统驱动类型有local、public、s3等。其中,local表示将文件保存在本地磁盘,public表示将文件保存在public目录下,s3表示将文件保存在亚马逊S3云存储服务中。

例如,如果要将图片保存在public目录下,可以进行如下配置:

代码语言:txt
复制
'disks' => [
    'public' => [
        'driver' => 'local',
        'root' => public_path('uploads'), // 设置保存路径为public/uploads
        'url' => env('APP_URL').'/uploads', // 设置访问路径为http://your-domain.com/uploads
        'visibility' => 'public',
    ],
],

接下来,在控制器中处理图片上传的逻辑。可以使用laravel提供的Request对象来获取上传的文件,并使用store方法将文件保存到指定的文件系统中。

代码语言:txt
复制
public function uploadImage(Request $request)
{
    $path = $request->file('image')->store('images', 'public'); // 将上传的图片保存到public/uploads/images目录下

    // 将图片路径保存到数据库中
    $image = new Image;
    $image->path = $path;
    $image->save();

    // 返回图片的访问路径
    return asset('storage/'.$path);
}

在上述代码中,使用store方法将上传的图片保存到public/uploads/images目录下,并将图片路径保存到数据库中。最后,通过asset函数返回图片的访问路径。

需要注意的是,为了能够正确访问到保存在public目录下的图片,需要执行以下命令生成软链接:

代码语言:txt
复制
php artisan storage:link

这样,laravel将会在public目录下生成一个指向storage/app/public目录的符号链接,以便能够通过URL直接访问到保存在public目录下的文件。

推荐的腾讯云相关产品和产品介绍链接地址:

  • 腾讯云对象存储(COS):提供高可靠、低成本的云端存储服务,适用于图片、视频、音频等多媒体文件的存储和管理。详情请参考:腾讯云对象存储(COS)
  • 腾讯云云服务器(CVM):提供弹性计算能力,可用于部署和运行laravel应用程序。详情请参考:腾讯云云服务器(CVM)
  • 腾讯云数据库MySQL版(TencentDB for MySQL):提供高性能、可扩展的关系型数据库服务,适用于存储和管理应用程序的数据。详情请参考:腾讯云数据库MySQL版(TencentDB for MySQL)

请注意,以上推荐的腾讯云产品仅供参考,具体选择还需根据实际需求进行评估和决策。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

laravel 使用Postman上传图片

Postman Post请求上传文件 一、选择post请求方式,输入请求地址 二、填写Headers Key:Content-Type Value:multipart/form-data [{“key.../form-data”,”description”:””,”enabled”:true}] 如下图 三、填写body 选择form-data 然后选择文件file 点击添加文件,最后发送即可 在用Laravel...写就接口时候,不知道怎么测试怎用postmam测试多图上传,查找了很多资料都没明白,资料一般写都是上传单张图片示范,特此记录下来。...Laravel后台接口编写 写是一段上传相册到服务器代码,本人才疏学浅,如有错误请指正 /** * 上传相册到服务器,同时相关数据存入数据库 * @param Request $request...{ $images = $request->file('images'); $content = $request->input('content'); //适配单文件和多文件上传

1.4K10

laravel框架 laravel-admin上传图片到oss方法

/app.phpproviders下添加 JacobcylAliOSSAliOssServiceProvider::class, 第三步:在app/filesystems.php中disks里下添加...endpoint [OSS内网节点] 如:oss-cn-shenzhen-internal.aliyuncs.com>', // v2.0.4 新增配置属性,如果为空,则默认使用 endpoint 配置(由于内网上传有点小问题未解决...,请大家暂时不要使用内网节点上传,正在与阿里技术沟通中) 'cdnDomain' => '', // 如果isCName为true, getUrl会判断cdnDomain...则使用外部节点生成url 'debug' => ], ... ] 第四步:在app/filesystems.php修改 'default' => 'oss', 以上这篇laravel...框架 laravel-admin上传图片到oss方法就是小编分享给大家全部内容了,希望能给大家一个参考,也希望大家多多支持。

2.2K20

laravel框架 laravel-admin上传图片到oss方法

/app.phpproviders下添加 Jacobcyl\AliOSS\AliOssServiceProvider::class, 第三步:在app/filesystems.php中disks里下添加...endpoint [OSS内网节点] 如:oss-cn-shenzhen-internal.aliyuncs.com ', // v2.0.4 新增配置属性,如果为空,则默认使用 endpoint 配置(由于内网上传有点小问题未解决...,请大家暂时不要使用内网节点上传,正在与阿里技术沟通中) 'cdnDomain' = '<CDN domain, cdn域名 ', // 如果isCName为true, getUrl会判断cdnDomain...则使用外部节点生成url 'debug' = <true|false ], ... ] 第四步:在app/filesystems.php修改 'default' = 'oss', 以上这篇laravel...框架 laravel-admin上传图片到oss方法就是小编分享给大家全部内容了,希望能给大家一个参考。

2K21

laravel 多图上传图片存储例子

root’表示是文件最终存储目标路径是storage/app/public, ‘url’ 表示是文件url,’visibility’表示是可见性 2.创建软连接,在项目的根目录运行如下命令:...软连接创建意味着项目的 …/public/storage/ 路径直接指向了 …/storage/app/public/ 目录 3.接收图片并存储,返回存储图片url class UploadController.../storage/app/public/product/ 路径下 $path = $file- store('public/product'); $path = str_replace..., 'data'= $imgs ]); }else{ return response()- json([ 'info'= '没有图片...' ]); } //处理多图上传并返回数组 } } 以上这篇laravel 多图上传图片存储例子就是小编分享给大家全部内容了,希望能给大家一个参考。

1.3K21

Laravel+Layer 图片上传功能整理

图片上传功能 但是在 ajax(POST)提交请求时,一直显示 500 报错 ♪ 分析 ⒈ 问题所在 ?...>">--> 后端代码图片上传功能属于原生程序,可自行优化,建议使用流行框架所推荐集成方法。...⒉ move_uploaded_file() 补充 对于上述代码,需要注意一点 : move_uploaded_file()方法使用 如果图片上传目录不存在,很可能会报错,所以需要判断当前情况...is_dir($path)){mkdir($path,0777);} ⒊ Laravel处理 作为 PHP 开发流行框架,必然做了对文件上传功能集成,文件上传,可参考学习文档,以本人处理为例...可参考我之前一篇文章—— Laravel 文件上传功能实现,打开配置文件 config/filesystems.php ,向磁盘配置数组中添加一个 url 'upload' => [

1.9K20

PHP Laravel 上传图片、文件等类封装

今天把项目中上传功能封装成类,方便后面使用,简单封装了一下,感觉还不怎么好,后面继续优化。 具体代码如下: <?php /** Created by PhpStorm....' => 310241024, //上传文件大小限制 (0-不做限制) 'exts' => array('jpg','jpeg','gif','png','doc','docx','xls','xlsx...' => '/uploads/', //保存根路径 'savePath' => '', //保存路径 'thumb' => array(),//是裁剪压缩比例 ); public function __...$f->ext; / 保存文件 并记录保存成功文件 / if ($this->file->move($fileSavePath,$fileName)) { /图片按照宽高比例压缩/ Log...Laravel 上传图片、文件等类封装,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家

1.9K30

Laravel框架实现上传图片到七牛功能详解

本文实例讲述了Laravel框架实现上传图片到七牛功能。...下面给大家看一下七牛秘钥位置: 点击秘钥管理,就可与看到个人七牛秘钥了: 七牛在Laravel配置 上面已经介绍相关配置在哪儿,现在我们要将这些配置在Laravel中使用: 上传图片到七牛...简单用一个示例来演示前端上传图片到后台后,用七牛扩展上传图片 先在 resources\views 下新建 index.blade.php 视图 <!...$fileName); return '上传成功,图片url:'....》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》 希望本文所述对大家基于Laravel框架PHP程序设计有所帮助。

2K41

laravel 实现上传图片到本地和前台访问示例

在config下新建文件admin.php,定义上传文件路径 ‘upload_img_path’ = ‘app/public/img’,//本地上传图片路径 ‘upload_file_path’ =...‘app/public/files’//本地上传文件路径 在config/filesystems.php下定义 'disks' = [ 'uploadimg'= [ 'driver'= 'local...(); //获取文件类型 $type=$wenjian- getClientMimeType(); //获取文件绝对路径,但是获取到在本地不能打开 $path=$wenjian...$kuoname; //保存文件 配置文件存放文件名字 ,文件名,路径 $bool= Storage::disk('uploadimg')- put($filename,file_get_contents...以上这篇laravel 实现上传图片到本地和前台访问示例就是小编分享给大家全部内容了,希望能给大家一个参考。

1.3K51

laravel框架上传图片实现实时预览功能

laravel框架中上传图片并实时预览,其实并没有那么难,下面给大家展示一下; HTML代码: <img class="pic house-a" οnclick="houseImgOne(this)"...$newname; return $filepath; } 这里是把上传,封装成了一个方法,添加时候直接添加最后路径就可以了; js代码: var _btnId = ''; function...click(); $("#house_img_one1").change(function () { var objUrl = getObjectURL(this.files[0]); //获取图片路径...,该路径不是图片在本地路径 if (objUrl) { $("#" + _btnId).attr("src", objUrl); //将图片路径存入src中,显示出图片ai...以上这篇laravel框架上传图片实现实时预览功能就是小编分享给大家全部内容了,希望能给大家一个参考。

99531

Laravel5.8使用LayUI上传并显示图片操作

这个问题已经困扰好久了,唉 比较难受,本来学习laravel使用是Bootstrap,之后用是Uploadify进行上传图片,无奈,这个技术需要Flash支持,一直没有实现,后来思考再三,还是选择用...Layui后台框架进行设计,emm~~~毕竟用他组件可以实现和Uploadify一样无刷新上传图片效果,但是比较难受就是Laravel使用Layui进行回调函数显示图片时候,Laravel总是莫名增加了域名之外控制器及方法名称...Laravel路由设置 //用户图片管理设置 Route::get('pic', 'PicController@index'); Route::get('pic/create', 'PicController...@create'); //设置文件上传方法 Route::any('shangchuan', 'CommonController@upload'); 前台上传及展示效果页面 <div class="...,这样就可以避免<em>Laravel</em>自动对JSON返回值自动加前缀<em>的</em>BUG,虽然有点笨,但是解决了这个方法,以后有好<em>的</em>方法在继续更新!!!

2.5K30

laravel实现图片上传预览,及编辑时可更换图片,并实时变化例子

首先先看下效果图 这是添加时候 可以上传照片 ? 这是编辑时候 可以修改照片 ?...保存图片文件 ,存在Storage::disk('uploads') 目录下 * @var $file object 上传图片文件,具体是在 request 中 UploadedFile 类型对象...* @var $prefix_name string 可选保存文件名前缀 * @var $path string 文件路径 * @return bool/string 如果通过验证 则返回在新文件名.../is', $ext)) { return false; } //dd($file- getRealPath()); $realPath = $file- getRealPath(); //临时文件绝对路径...实现图片上传预览,及编辑时可更换图片,并实时变化例子就是小编分享给大家全部内容了,希望能给大家一个参考。

1.2K31

Laravel操作上传文件方法

1、获取上传文件 $file=$request->file('file'); 2、获取上传文件文件名(带后缀,如abc.png) $filename=$file->getClientOriginalName...(); 3、获取上传文件后缀(如abc.png,获取到为png) $fileextension=$file->getClientOriginalExtension(); 4、获取上传文件大小...$filesize=$file->getClientSize(); 5、获取缓存在tmp目录下文件名(带后缀,如php8933.tmp) $filaname=$file->getFilename()...; 6、获取上传文件缓存在tmp文件夹下绝对路径 $realpath=$file->getRealPath(); 7、将缓存在tmp目录下文件移到某个位置,返回是这个文件移动过后路径 $path...=$file->move(path,newname); move()方法有两个参数,第一个参数是文件移到哪个文件夹下路径,第二个参数是将上传文件重新命名文件名 8、检测上传文件是否合法,返回值为

1.5K10
领券