Laravel上传产品图片Uploading img

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

composer require intervention/image

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

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

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

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,

if($request->hasFile('img'))
        {            
            $image = $request->file('img');         
            $filename = time() . '.' . $image->getClientOriginalExtension();
            $location = public_path('img/' . $filename);
            Image::make($image)->save($location);
            $item->img = url('img/' . $filename);
        }

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

@extends('layouts.app')

@if ($errors->any())
    <div class="alert alert-danger">
    	<strong>Errors:</strong>
        <ul>
            @foreach ($errors->all() as $error)
                <li>{{ $error }}</li>
            @endforeach
        </ul>
    </div>
@endif

@section('content')
	<div class="container">
		<div class="row">
			<div class="col-md-8 col-md-offset-2">
				<div class="card card-default">
					<div class="card-header">Create New Item</div>
					<div class="card-body">
						<form method="POST" action="/items" aria-label="Register" enctype="multipart/form-data">
							@csrf
							<div class="form-group row">
								<label for="name" class="col-md-4 col-form-label text-md-right">Name</label>
								<div class="col-md-6">
									<input id="name" type="text" name="name" value="" required="required" autofocus="autofocus" class="form-control">
								</div>
							</div>
							<div class="form-group row">
								<label for="email" class="col-md-4 col-form-label text-md-right">Price</label>
								<div class="col-md-6">
									<input id="email" type="text" name="price" value="" required="required" class="form-control">
								</div>
							</div>
							<div class="form-group row">
								<label for="password" class="col-md-4 col-form-label text-md-right">Img</label>
								<div class="col-md-6">
									<input type="file" name="img" >
								</div>
							</div>
							<div class="form-group row">
								<label for="password-confirm" class="col-md-4 col-form-label text-md-right">Description</label>
								<div class="col-md-6">
									<input id="password-confirm" type="text" name="description" required="required" class="form-control">
								</div>
							</div>
							<div class="form-group row mb-0">
								<div class="col-md-6 offset-md-4">
									<button type="submit" class="btn btn-primary">Save</button>
								</div>
							</div>
						</form>
					</div>
				</div>	
			</div>	
		</div>	
	</div>	
@endsection

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

使用Logwatch查看系统日志

Logwatch是一个日志解析程序,可以分析并生成有关系统活动的每日报告。Logwatch不提供实时警报,而是创建系统运行状态的摘要,以便于查看。更高级的用户还...

913
来自专栏difcareer的技术笔记

ODEX格式及生成过程

Apk在安装(installer)时,就会进行验证和优化,目的是为了校验代码合法性及优化代码执行速度,参见Dalvik Optimization and Ver...

872
来自专栏carven

xss总结记录

最近工作小组上,集中精力提高安全意识。而XSS作为全端安全中最常见的问题之一,我们也做了着重的学习。 XSS全称跨站脚本(Cross Site Scriptin...

1090
来自专栏菩提树下的杨过

eclipse: workspace出错导致无法启用的解决

通常我们会在eclipse中创建多个workspace,比如一个用于学习,一个用于工作... ,因为种种原因,时不时会发现eclipse切换workspace后...

7078
来自专栏Python小屋

Python批量Excel文件数据导入SQLite数据库的优化方案

说明:1)需要安装扩展库openpyxl;2)随着数据库的增大,导入速度可能会有所下降;3)本文只考虑Python代码优化,没有涉及数据库的优化;4)本文要点在...

4437
来自专栏优启梦

PHP配合javascript实现select快速设置默认值

今天在做一个select选中默认值的时候,不想用以前的老方法了,然后我就各种百度啊!

2086
来自专栏ytkah

如何让帝国CMS7.2搜索模板支持动态标签调用

  帝国cms站内搜索一般不支持动态标签调用,如果要调用如何实现呢?修改两个地方就可以实现了。打开 /e/search/result/index.php 文件,...

3314
来自专栏企鹅号快讯

T20天正V3.0软件安装教程

天正软件系列包括天正建筑、天正结构、天正给排水、天正暖通、天正电气、天正节能、天正日照分析、天正市政道路、天正市政管线、天正市政交通、天正土方计算、天正园林规划...

5719
来自专栏小白安全

安全扫描器Nmap渗透使用教程

介绍 nmap是用来探测计算机网络上的主机和服务的一种安全扫描器。为了绘制网络拓扑图Nmap的发送特制的数据包到目标主机然后对返回数据包进行分析。Nm...

4554
来自专栏树根的专栏

为 markdown 添加图床

本文介绍了使用腾讯云的 COS 来进行图片的存储,这样就可以随心地将图片存储在腾讯云上了,解决了markdown 文件过大的问题。

1.9K1

扫码关注云+社区

领取腾讯云代金券