这节我们讲Laravel产品图片上传,有很多方式可以实现,这里我们用intervention/image插件来进行。首先安装intervention/image插件,在命令行输入

  1. composer require intervention/image

  安装完成后要修改config/app.php文件

  1. //在$providers中添加一行
  2. Intervention\Image\ImageServiceProvider::class,
  3. //在$aliases中添加一行
  4. 'Image' => Intervention\Image\Facades\Image::class,

  发布配置,在命令行中输入

  1. php artisan vendor:publish --provider="Intervention\Image\ImageServiceProviderLaravel5"

  这时弹出Copied File [/vendor/intervention/image/src/config/config.php] To [/config/image.php]提示已经复制配置文件到config/image.php,你可以在这里进行设置。

  修改controller配置,文件在/app/Http/Controllers/ItemController.php,

  1. if($request->hasFile('img'))
  2. {
  3. $image = $request->file('img');
  4. $filename = time() . '.' . $image->getClientOriginalExtension();
  5. $location = public_path('img/' . $filename);
  6. Image::make($image)->save($location);
  7. $item->img = url('img/' . $filename);
  8. }

  修改create.blade.php文件,表格form要加一个参数enctype="multipart/form-data",选择图片改为<input type="file" name="img" >

  1. @extends('layouts.app')
  2.  
  3. @if ($errors->any())
  4. <div class="alert alert-danger">
  5. <strong>Errors:</strong>
  6. <ul>
  7. @foreach ($errors->all() as $error)
  8. <li>{{ $error }}</li>
  9. @endforeach
  10. </ul>
  11. </div>
  12. @endif
  13.  
  14. @section('content')
  15. <div class="container">
  16. <div class="row">
  17. <div class="col-md-8 col-md-offset-2">
  18. <div class="card card-default">
  19. <div class="card-header">Create New Item</div>
  20. <div class="card-body">
  21. <form method="POST" action="/items" aria-label="Register" enctype="multipart/form-data">
  22. @csrf
  23. <div class="form-group row">
  24. <label for="name" class="col-md-4 col-form-label text-md-right">Name</label>
  25. <div class="col-md-6">
  26. <input id="name" type="text" name="name" value="" required="required" autofocus="autofocus" class="form-control">
  27. </div>
  28. </div>
  29. <div class="form-group row">
  30. <label for="email" class="col-md-4 col-form-label text-md-right">Price</label>
  31. <div class="col-md-6">
  32. <input id="email" type="text" name="price" value="" required="required" class="form-control">
  33. </div>
  34. </div>
  35. <div class="form-group row">
  36. <label for="password" class="col-md-4 col-form-label text-md-right">Img</label>
  37. <div class="col-md-6">
  38. <input type="file" name="img" >
  39. </div>
  40. </div>
  41. <div class="form-group row">
  42. <label for="password-confirm" class="col-md-4 col-form-label text-md-right">Description</label>
  43. <div class="col-md-6">
  44. <input id="password-confirm" type="text" name="description" required="required" class="form-control">
  45. </div>
  46. </div>
  47. <div class="form-group row mb-0">
  48. <div class="col-md-6 offset-md-4">
  49. <button type="submit" class="btn btn-primary">Save</button>
  50. </div>
  51. </div>
  52. </form>
  53. </div>
  54. </div>
  55. </div>
  56. </div>
  57. </div>
  58. @endsection

  

Laravel上传产品图片Uploading img的更多相关文章

  1. 基于spring-boot的web应用,ckeditor上传文件图片文件

    说来惭愧,这个应用调试,折腾了我一整天,google了很多帖子,才算整明白,今天在这里做个记录和分享吧,也作为自己后续的参考! 第一步,ckeditor(本博文论及的ckeditor版本4.5.6)的 ...

  2. laravel上传文件到七牛云存储

    背景 最近在用PHP和laravel框架做一个图片网站,需要将图片存贮到云端,搜索下了对比了下功能,发现七牛云存储不错(主要小流量免费),便选择使用七牛作为图片存储空间. 要实现的功能很简单,选择本地 ...

  3. Laravel上传文件(单文件,多文件)

    为了方便,先修改一个配置文件,再laravel框架中config配置中找到  filesystems.php 文件 修改代码如下 'local' => [ 'driver' => 'loc ...

  4. PHP 多图上传,图片批量上传插件,webuploader.js,百度文件上传插件

    PHP  多图上传,图片批量上传插件,webuploader.js,百度文件上传插件(案例教程) WebUploader作用:http://fex.baidu.com/webuploader/gett ...

  5. thinkphp 3.2.3整合ueditor 1.4,给上传的图片加水印

    今天分享一下thinkphp 3.2.3整合ueditor 1.4,给上传的图片加水印.博主是新手,在这里卡住了很久(>_<) thinkphp 3.2.3整合ueditor 1.4 下载 ...

  6. ASP.NET、JAVA跨服务器远程上传文件(图片)的相关解决方案整合

    一.图片提交例: A端--提交图片 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { string u ...

  7. 如何预览将要上传的图片-使用H5的FileAPI

    这篇将要说的东西已经不新鲜了. 参考资料: Reading files in JavaScript using the File APIs (鉴于作者在美国, 我姑且认为作者母语是英语, 当然链接中有 ...

  8. js上传压缩图片

    原文链接:http://blog.csdn.net/iefreer/article/details/53039848 手机用户拍的照片通常会有2M以上,这对服务器带宽产生较大压力. 因此在某些应用下( ...

  9. php 实现接收客户端上传的图片

    今天,遇到一个服务端接收客户端上传图片的需求,经过学习.我写了个简单的demo 以备下次学习. 首先服务器接收的发送图片的请求一定要是post请求,而且请求一定要加上 enctype="mu ...

随机推荐

  1. asp.net mvc 3.0 知识点整理 ----- (2).Controller中几种Action返回类型对比

    通过学习,我们可以发现,在Controller中提供了很多不同的Action返回类型.那么具体他们是有什么作用呢?它们的用法和区别是什么呢?通过资料书上的介绍和网上资料的查询,这里就来给大家列举和大致 ...

  2. SpringBoot Druid整合,SpringBoot 集成Druid

    SpringBoot Druid整合,SpringBoot 集成Druid ================================ ©Copyright 蕃薯耀 2018年4月8日 http ...

  3. Markdown 标题

    用 Markdown 书写时,只需要在文本前面加上 # 即可创建标题,Markdown 支持六级标题,语法及效果如下 # 一级标题 ## 二级标题 ### 三级标题 #### 四级标题 ##### 五 ...

  4. Python判断字符集

    Python利用第三方库chardet可以判断字符集. https://chardet.readthedocs.io >>> import urllib >>> r ...

  5. css3整理--background-size

    background-size语法: /*Mozilla*/ -moz-background-size: auto || <length> || <percentage> || ...

  6. 60款很酷的 jQuery 幻灯片演示和下载【转】

    jQuery 是一个非常优秀的 JavaScript 框架,使用简单灵活,同时还有许多成熟的插件可供选择,它可以帮助你在项目中加入漂亮的效果,其中之一就是幻灯片效果的实现,这是一种在有限的网页空间内展 ...

  7. mysql迁移sqlserver

    数据迁移的工具有很多,基本SSMA团队已经考虑到其他数据库到SQL Server迁移的需求了,所以已经开发了相关的迁移工具来支持. 此博客主要介绍MySQL到SQL Server数据迁移的工具:SQL ...

  8. python爬虫+使用cookie登录豆瓣

    2017-10-09 19:06:22 版权声明:本文为博主原创文章,未经博主允许不得转载. 前言: 先获得cookie,然后自动登录豆瓣和新浪微博 系统环境: 64位win10系统,同时装pytho ...

  9. CSS3实战开发: 折角效果实战开发

    <!DOCTYPE html> <html> <head> <meta charset="utf-9"> <meta name ...

  10. JavaScript 引入方式 语言规范 语言基础 数据类型 常用方法 数组 if_else 比较运算符 for while 函数 函数的全局变量和局部变量 {Javascript学习}

    Javascript学习 JavaScript概述 ECMAScript和JavaScript的关系 1996年11月,JavaScript的创造者--Netscape公司,决定将JavaScript ...