Wat ga je maken?
Bij het aanmaken of bewerken van een artikel upload je een afbeelding. Die wordt opgeslagen en getoond op het overzicht en de detailpagina — precies zoals in het voorbeeldontwerp.
Waarom is dit nuttig?
Elke klant wil zelf plaatjes kunnen aanpassen. En uploads zijn een klassiek beveiligingslek, dus dit is een goede plek om te leren waar het mis kan gaan.
enctype="multipart/form-data" op je formulier. Zonder dit komt je bestand niet aan. Test dat bewust een keer.$request->file('image')->store('posts', 'public'). Bewaar alleen het pad in de database, niet het bestand zelf.php artisan storage:link zodat de map publiek bereikbaar wordt. Zonder deze stap krijg je een 404 op je plaatje.asset('storage/' . $post->image).$request->validate([
'image' => ['nullable', 'image', 'mimes:jpg,jpeg,png,webp', 'max:2048'], // 2048 KB = 2 MB
]);
if ($request->hasFile('image')) {
Storage::disk('public')->delete($post->image ?? '');
$data['image'] = $request->file('image')->store('posts', 'public');
}
php artisan storage:link
Imagefacade van recente Laravel-versies; check eerst de docs van jouw versie: https://laravel.com/docs/13.x/filesystem