Im trying to upload an image in my Laravel app. but have an error:
array_key_exists(): The first argument should be either a string or an integer
Im using the enctype: <form method="POST" action="/producto" enctype="multipart/form-data">
This is my controller:
public function CrearProducto(Request $data)
{
$data->validate(
[
'nombre_producto'=>'required | min:1 | max:250',
'precio_producto'=>'required | min:1 | max:250',
'stock_producto'=>'required | min:1 | max:250',
'igv_producto'=>'required | min:1 | max:250',
'producto_categoria'=>'required | min:1 | max:250',
'imagen_producto'=>'mimes:jpeg,bmp,png,jpg',
]
);
$producto = new Producto();
$producto->nombre_producto = $data["nombre_producto"];
$producto->precio_producto = $data["precio_producto"];
$producto->stock_producto = $data["stock_producto"];
$producto->igv_producto = $data["igv_producto"];
$producto->producto_categoria = $data["producto_categoria"];
if($data["imagen_producto"==""]){
$producto->imagen_producto = $data["imagen_producto"];
}else{
$imagen = $data["imagen_producto"];
$nombre_img_prod = time()."_".$imagen->getClientOriginalName();
\Storage::disk('public')->put($nombre_img_prod, \File::get($imagen));
$producto->imagen_producto = $nombre_img_prod;
}
//$producto->imagen_producto = "-";
$producto->tipo_afectacion_producto = "-";
$producto->estado_producto = "Activo";
$producto->save();
return redirect()->route('producto');
}