Mar 19, 2021
0
Level 1
Image Stored as .tmp file in database. [Laravel]
I am trying to upload my images in Laravel. The image files successfully get uploaded in the desired location but the filename in database is stored as C:\xampp\tmp\php1A3F.tmp.
Code:
if ($request->hasFile('image_url')) {
$i = 0;
foreach ($request->file('image_url') as $image_url) {
$fileName = Str::slug($request->title). time(). $i .'.'.$image_url->extension();
$fileNameWithUpload = 'uploads/activities/'.$fileName;
$image_url->move(public_path('uploads/activities'),$fileName);
$request->merge([
'image_url' => $fileNameWithUpload
]);
$i++;
}
}
And contuning:
$activity = new Activity;
$activity->title = $request->title;
$activity->company_name = $request->company_name;
$activity->price = $request->price;
$activity->description = $request->description;
$activity->save();
if ($activity->save() === true) {
$data = [];
foreach ($request->image_url as $key => $value) {
$data[] = [
'activity_id' => $activity->id,
'image' => $value,
'video' => $request->video_url[$key] ?? null,
'created_at' => now()
];
}
if (! empty($data)) {
ActivityAsset::insert($data);
}
}
return redirect()->route('activities.index');
}
What can i do?
Please or to participate in this conversation.