laravel 图片上传

//后台轮播图上传
$("#img-upload").on('submit',function(e){
e.preventDefault();
var formData = new FormData($(".banner-upload"));
$.ajax({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
type: 'POST',
url: '/admin/banner/create' ,
data: formData ,
processData:false,
//mimeType:"multipart/form-data",
contentType: false,
cache: false,
success:function(data){
console.log(data);
if(data.status){
console.log(data.message);
}
},
error:function(err){
console.log(err);
}
});

  

form  表单方式

<form class="form-horizontal" action="{{ URL('/admin/banner/create') }}" method="POST" enctype="multipart/form-data" class="banner-upload">

      {{ csrf_field() }}

      <div class="box-body">
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">主题</label>
<div class="col-sm-10">
<input type="text" class="form-control" value="" name="theme" placeholder="设置轮播主题">
</div>
</div> <div class="form-group">
<label for="inputPassword3" class="col-sm-2 control-label">状态</label>
<div class="col-sm-10">
<input type="radio" value="1" name="status">启用
<input type="radio" value="0" name="status">禁用
</div>
</div> <div class="form-group">
<label for="inputPassword3" class="col-sm-2 control-label">上传图片</label>
<div class="col-sm-10">
<input type="file" name="photo" value="" placeholder=""> <div class="img-wrap">
<img src="" alt="">
</div>
</div>
</div> </div>
<!-- /.box-body -->
<div class="box-footer clearfix">
<button type="submit" class="btn btn-info pull-right" id="img-upload">提交</button>
</div>
</form>

  后台函数

public function BannerCreate(Request $request)
{
$file = $request->file('photo');//获取图片
$theme = $request->theme;//主题
$status = $request->status;//状态
$allowed_extensions = ["png", "jpg", "gif"];
if ($file->getClientOriginalExtension() && !in_array($file->getClientOriginalExtension(), $allowed_extensions)) {
return response()->json([
'status' => false,
'message' => '只能上传 png | jpg | gif格式的图片'
]);
} if ($request->hasFile('photo')) { } $destinationPath = 'storage/uploads/';
$extension = $file->getClientOriginalExtension();
$fileName = str_random(10).'.'.$extension;
$file->move($destinationPath, $fileName);
return Response()->json(
[
'status' => true,
'pic' => asset($destinationPath.$fileName),
'isMake' => $status,
'message' => '新增成功!'
]
);
}

  $destinationPath 'storage/uploads/';    后面必须要有 / 负责上传后路径访问有问题

<form class="form-horizontal" action="{{ URL('/admin/banner/create') }}" method="POST" enctype="multipart/form-data" class="banner-upload">

{{ csrf_field() }}

<div class="box-body">
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">主题</label>
<div class="col-sm-10">
<input type="text" class="form-control" value="" name="theme" placeholder="设置轮播主题">
</div>
</div>

<div class="form-group">
<label for="inputPassword3" class="col-sm-2 control-label">状态</label>
<div class="col-sm-10">
<input type="radio" value="1" name="status">启用
<input type="radio" value="0" name="status">禁用
</div>
</div>

<div class="form-group">
<label for="inputPassword3" class="col-sm-2 control-label">上传图片</label>
<div class="col-sm-10">
<input type="file" name="photo" value="" placeholder="">

<div class="img-wrap">
<img src="" alt="">
</div>
</div>
</div>

</div>
<!-- /.box-body -->
<div class="box-footer clearfix">
<button type="submit" class="btn btn-info pull-right" id="img-upload">提交</button>
</div>
</form>

  

最新文章

  1. fedora22切换用户windows分区不能自动挂载
  2. Hadoop入门进阶课程4--HDFS原理及操作
  3. Android下拉刷新底部操作栏的隐藏问题
  4. HDU--杭电--1195--Open the Lock--深搜
  5. [CODEVS1295]N皇后(位运算+搜索)
  6. Velocity 模板引擎介绍
  7. HDU 4121 Xiangqi
  8. MVAPI第一个版本架构图
  9. vue.js路由参数简单实例讲解------简单易懂
  10. lufylegend练习(1)帧速率
  11. SSM 框架 ---项目整合
  12. 【Java基础】求出1-100之间偶数和
  13. ARM中R0-R15寄存器的作用
  14. Elasticsearch6.13 升级6.24 单节点停机升级
  15. 51nod 1459 迷宫游戏 dijkstra模板
  16. allegro 基本步骤
  17. C# MemCached分布式缓存
  18. JavaScript判断是否全为中文,是否含有中文
  19. STL标准库-容器适配器
  20. 使用JSON实现分页

热门文章

  1. C++引用具体解释
  2. xc_domain_save.c
  3. XCODE5 真机測试
  4. ArcGIS 相同要素类的多Shp文件或多要素合并
  5. 第十二章:Linux中权限控制实例
  6. AssetsManager 在ios更新失败解决方案
  7. 《C++ Primer Plus》学习笔记 2.1.1 main()函数
  8. 动态规划——最长公共上升子序列LCIS
  9. linux系统安装jdk及配置环境变量
  10. [移动云计算开发 01] 解决 windows 7 安装设置 nginx 出现端口占用的问题