图片上传 Laravel 5.2 : 尝试获取 属性 的非对象
Image Uploading Laravel 5.2 : Trying to get property of non-object
我正在尝试使用移动临时文件的方法上传图片,并仅在我的索引页面上显示路径。
这是问题所在:
ErrorException in ProductController.php line 69: Trying to get property of non-object
在我的控制器中包含错误行:
public function store(Request $request)
{
$product=Request::all();
Product::create($product);
$imageName = $product->id_prod . '.' .
$request->file('images')->getClientOriginalExtension();
$request->file('images')->move(
base_path() . '/public/images/catalog/', $imageName
);
return redirect('product');
}
这里是数据库,文件已经上传到临时文件夹,但是文件移动失败。我正在使用 Laravel 5.2,这是我第一次上传文件。谁能给我解释一下为什么这个会出错。
抱歉我的语法不好。
你可以这样试试:
public function store(Request $request)
{
$product = $request->all();
$picture = '';
if ($request->hasFile('images')) {
$file = $request->file('images');
$filename = $file->getClientOriginalName();
$extension = $file->getClientOriginalExtension();
$picture = $product['id_prod'] . '.' . $extension;
$destinationPath = base_path() . '/public/images/catalog/';
$request->file('images')->move($destinationPath, $picture);
}
if (!empty($product['images'])) {
$product['images'] = $picture;
} else {
unset($product['images']);
}
Product::create($product);
return redirect('/product');
}
我正在尝试使用移动临时文件的方法上传图片,并仅在我的索引页面上显示路径。
这是问题所在:
ErrorException in ProductController.php line 69: Trying to get property of non-object
在我的控制器中包含错误行:
public function store(Request $request)
{
$product=Request::all();
Product::create($product);
$imageName = $product->id_prod . '.' .
$request->file('images')->getClientOriginalExtension();
$request->file('images')->move(
base_path() . '/public/images/catalog/', $imageName
);
return redirect('product');
}
这里是数据库,文件已经上传到临时文件夹,但是文件移动失败。我正在使用 Laravel 5.2,这是我第一次上传文件。谁能给我解释一下为什么这个会出错。
抱歉我的语法不好。
你可以这样试试:
public function store(Request $request)
{
$product = $request->all();
$picture = '';
if ($request->hasFile('images')) {
$file = $request->file('images');
$filename = $file->getClientOriginalName();
$extension = $file->getClientOriginalExtension();
$picture = $product['id_prod'] . '.' . $extension;
$destinationPath = base_path() . '/public/images/catalog/';
$request->file('images')->move($destinationPath, $picture);
}
if (!empty($product['images'])) {
$product['images'] = $picture;
} else {
unset($product['images']);
}
Product::create($product);
return redirect('/product');
}