i'm working on a E-commerce like project where users can upload multiple images of a particular product, i have a one-to-many relation where many images has one description and price. so on the homepage i need to call a single image out of the total uploaded and also fetch the descrition of the image, so when view button is clicked the user can see the rest of the image sliding.
upload Controller
public function store(Request $request)
{
$request->validate([
'farm_name'=> 'required',
'farmer_name'=>'required',
'min_order'=>'required',
'qty'=>'required',
'product_package'=>'required',
'descr'=>'required',
'images' => 'required',
'images.*' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:2048',
//'' => 'image|mimes:jpeg,png,jpg,gif,svg|max:6048',
]);
$input = new Product;
$input->farm_name = $request->farm_name;
//$input->user_id = Auth::user()->id;
$input->farmer_name = $request->farmer_name;
$input->tel = Auth::user()->tel;
$input->farm_adrs = Auth::user()->adrs;
$input->state = Auth::user()->state;
$input->email = $request->email;
$input->qty = $request->qty;
$input->descr = $request->descr;
$input->product_package = $request->product_package;
$input->catr = $request->catr;
$input->lga = $request->product_name;
$input->amount = $request->amount;
//$input->img = $request->images;
//dd($input);
$input->save();
foreach($request->file('images') as $imageFile){
$image = new Image;
$imageName = time().rand(1,99).'.'.$imageFile->extension();
$imageFile->move(public_path('images'), $imageName);
$image->images_id = $input->id;
$image->name = $imageName;
$image->save();
}
return back()
->with('success','Your Product is succesfully Uploaded.');
}
//show image this where i have problem
public function index(){
$products = Product::all();
foreach($products as $product){
$product_id = $product->id;
$images = Image::find($product_id);
}
return view('app.index', compact('products', 'images'));
}