Stappenplan
Route aanmaken
$route->post('items-destroy/{id}', 'controllers/items-destroy.php');
Controller items-destroy.php
<?php $request->validate([ 'id' => 'required' ]); $db = new Database(); $db->query("DELETE FROM items WHERE id = :id", [ 'id' => $_POST['id'] ]); flash("Item is verwijderd"); redirect("/items");
Verwijderen kan via een formulier
<form method="post" action="/items-destroy/<?= $item['id'] ?>"> <?= csrf(); ?> <input type="submit" value="Verwijderen" class="bg-red-600 text-white rounded py-1 px-2 hover:bg-red-400 cursor-pointer"> </form>
Uiteraard is het prettig als er voordat er een verwijder actie wordt gedaan een bevestiging wordt gevraagd.

Je zou dit bv kunnen realiseren door gebruik te maken van een view delete-button.view.php
We plaatsen deze view in parts, want deze zou overal in de applicatie gebruikt moeten kunnen worden. De view heeft één variabele nodig dat is de action. Eventueel zou je nog meer variabele kunnen toevoegen. Bijvoorbeeld de tekst die wordt getoond bij de bevestiging.
Code voor views/parts/delete-button.view.php (eenmalig)
Uiteraard kan je dit bestand bewerken en opmaken met de style die jij zelf wil.
Code voor de verwijder button ergens te plaatsen
<?php view('parts/delete-button', ['action' => "/items-destroy/".$item['id']]); ?>