他们多幅图像我试图通过在控制器这样做是为了uplaod在数据库中的多个图像:upoad在数据库和表示Laravel
公共函数存储(请求$请求) {
$pictures=[];
$input=$request->all();
if($file=$request->file('images')) $pictures[]=$request->file('images');
if($file=$request->file('image1')) $pictures[]=$request->file('image1');
if($file=$request->file('image2')) $pictures[]=$request->file('image2');
if($file=$request->file('image3')) $pictures[]=$request->file('image3');
if($file=$request->file('image4')) $pictures[]=$request->file('image4');
if($file=$request->file('image5')) $pictures[]=$request->file('image5');
if($file=$request->file('image6')) $pictures[]=$request->file('image6');
foreach($pictures as $file)
for($name=0;$name<=7;$name++)
{
$name=$file->getClientOriginalName();
}
$file->move('image',$name);
$input['images']=$name;
$input['image1']=$name;
$input['image2']=$name;
$input['image3']=$name;
$input['image4']=$name;
$input['image5']=$name;
$input['image6']=$name;
Detail::create($input);
return redirect('/');
}
它从窗体中获取图像并将所选图像存储在公共/图像文件夹中,但在数据库中存储具有相同图像名称的所有图像。在显示的同时,它也会多次显示相同的图像。
我知道这里的人有解决这个问题,可能有更好的主意。所以请在这里帮助我。提前致谢。
上面做的方法是不适合我,所以我在我的控制器这样做
public function uploadSubmit(request $request)
{
// Coming soon...
$data=$request->all();
$imagename =[];
$i = 0;
$files =Input::file('images');
foreach($files as $file){
$extension = $file->getClientOriginalExtension();
$imagename[$i] = 'post'.str_random(10).'.jpg';
$destinationPath = 'assets/posts';
$file->move($destinationPath, $imagename[$i]);
$i++;
}
Detail::create($files);
return redirect('/');
}
而且在路线:
Route::resource('/details','DetailController');
现在我得到这样的错误:FatalThrowableError在DetailController .php第43行: 调用数组上的成员函数getClientOriginalName()。 任何人都可以在这里指出问题。谢谢。
Laravel的哪个版本是为你做的?将有助于提供适当的请求示例。您将使用相同的名称将所有图像作为数组发送到PHP。您是通过标准表单还是JavaScript发布到PHP? –
我正在使用laravel 5.4.12。 –