【问题标题】:Image does not go in database with file name only tmp name saved? [closed]图像没有进入数据库,文件名仅保存 tmp 名称? [关闭]
【发布时间】:2016-03-19 21:22:54
【问题描述】:

我是 laravel 5.1 中的新手,当我上传图片时,它们会转到文件夹中,但在数据库中实际名称未保存。数据库名称如下:C:\wamp\tmp\phpCA22.tmp

【问题讨论】:

  • 你能展示你的代码吗?
  • 我的控制器代码是public function uploadImage(Request $request) { if($request->hasFile('image')){ $destinationPath=public_path().'/images/'; $file = $request->file('image'); $filename=$file->getClientOriginalName(); $request->file('image')->move($destinationPath,$filename); } $inputs = $request->file('image'); $users = Upload::create($inputs); return redirect('user/upload'); }
  • 我的查看码是{!! Form::open(array('url' => 'user/uploadImage','files'=>true, 'method'=>'post')) !!} {!! Form::label('file','File') !!} {!! Form::file('image') !!} {!! Form::submit('Upload') !!} {!! Form::open() !!}
  • 酷。回答你;)

标签: image laravel upload


【解决方案1】:

由于 OP 没有透露代码。

我给出了一般的工作方法

第 1 步: 如果你得到输入文件

if(Input::file())
{
//Your stuff here
}

第 2 步:获取文件名

$image = Input::file('image');
$filename = $image->getClientOriginalExtension();

注意:

  1. 别忘了在表单中添加multipart/form-data

  2. 将图片名称设为image

更新:

这是您需要的更新代码

public function uploadImage(Request $request) 
{
 if($request->hasFile('image'))
 { 
 $destinationPath=public_path().'/images/';
 $file = $request->file('image');
 $filename=$file->getClientOriginalName();
 $request->file('image')->move($destinationPath,$filename);
 } 
 $inputs['filename'] =  $request->file('image'); 
 #$inputs['yourkey'] = 'yourdata';
 $users = Upload::create($inputs); 
 return redirect('user/upload'); 
 }

$inputs 是数组。您应该在模型的可填充项中包含 filename 并确保 filename 存在于您的表中

更新 2: OP 给出了列名

public function uploadImage(Request $request) 
{
 if($request->hasFile('image'))
 { 
 $destinationPath=public_path().'/images/';
 $file = $request->file('image');
 $filename=$file->getClientOriginalName();
 $request->file('image')->move($destinationPath,$filename);
 } 
 $inputs['image'] =  $request->file('image'); 
 $users = Upload::create($inputs); 
 return redirect('user/upload'); 
 }

【讨论】:

  • 不,如果我按照此代码操作它不起作用,那么图像名称不会进入数据库表..
  • 你应该把$filename改成$inputs['filename']
  • 我会更新你的整个代码,请稍等
  • 好的,谢谢先生提前..
  • 已更新。如果您在代码中发现任何问题,请告知
猜你喜欢
  • 2013-11-26
  • 1970-01-01
  • 2013-09-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-05
  • 1970-01-01
相关资源
最近更新 更多