Als Folgemaßnahme zum Erstellen neuer Notizen mithilfe von Formularen und Anforderungsmethoden werden wir nun untersuchen, wie vorhandene Notizen in der Datenbank mithilfe der PATCH-Anforderungsmethode bearbeitet und aktualisiert werden.
Wenn ein Benutzer eine Notiz bearbeiten möchte, müssen wir ihm eine Möglichkeit bieten, auf den Bearbeitungsbildschirm zuzugreifen. Hier kommt die Schaltfläche „Bearbeiten“ ins Spiel.
Zuerst müssen wir eine Bearbeitungsschaltfläche unter der Notiz auf dem Einzelnotizbildschirm in show.view.php hinzufügen, indem wir den Löschschaltflächencode aus der Datei entfernen. Mit dieser Schaltfläche gelangen Sie zum Bearbeitungsbildschirm.
Die Schaltfläche „Bearbeiten“ befindet sich im Fußzeilenbereich der Notizanzeigeseite. Wenn darauf geklickt wird, wird der Benutzer zum Bearbeitungsbildschirm weitergeleitet und die Notiz-ID als Parameter in der URL übergeben.
Die Datei edit.php steuert den Bearbeitungsprozess. Es ruft die Notiz aus der Datenbank ab und autorisiert den Benutzer, die Notiz zu bearbeiten. Wenn der Benutzer berechtigt ist, wird der Bearbeitungsbildschirm angezeigt, in dem der Benutzer Änderungen an der Notiz vornehmen kann.
query('select * from notes where id = :id', [ 'id' => $_GET['id'] ])->findOrFail(); authorize($note['user_id'] === $currentUserId); view("notes/edit.view.php", [ 'heading' => 'Edit Note', 'errors' => [], 'note' => $note ]);
Die Datei edit.php verwendet die Database-Klasse, um die Notiz aus der Datenbank abzurufen. Anschließend wird überprüft, ob der Benutzer berechtigt ist, die Notiz zu bearbeiten, indem die Benutzer-ID mit der aktuellen Benutzer-ID verglichen wird. Bei entsprechender Berechtigung wird der Bearbeitungsbildschirm angezeigt.
Die Datei edit.view.php enthält den Code zum Anzeigen des Notiztexts zur Bearbeitung mit zwei Schaltflächen: Aktualisieren und Abbrechen.
Schaltfläche „Aktualisieren“: Sendet die aktualisierte Notiz an den Server und speichert sie in der Datenbank
Schaltfläche „Abbrechen“: Bricht den Bearbeitungsvorgang ab und leitet den Benutzer zurück zum Notizenbildschirm.
= $errors['body'] ?>
In der Ansicht „Notiz bearbeiten“ wird der Notiztext in einem Textbereich angezeigt, sodass der Benutzer Änderungen vornehmen kann. Die Schaltfläche „Aktualisieren“ sendet die aktualisierte Notiz an den Server und speichert sie in der Datenbank.
Um eine Notiz zu aktualisieren, müssen wir eine neue Datei namens update.php erstellen, die die Validierung der Notiz und auch die Autorisierung des Benutzers überprüft. Mit dieser Datei können nur autorisierte Benutzer Notizen anzeigen und bearbeiten, die bereits in der Datenbank vorhanden sind.
query('select * from notes where id = :id', [ 'id' => $_POST['id'] ])->findOrFail(); // Check authorization authorize($note['user_id'] === $currentUserId); // Check validation $errors = []; if (!Validator::string($_POST['body'], 1, 100000)) { $errors['body'] = 'A body of no more than 1,000 characters is required.'; } // if no validation errors, then update if (count($errors)) { return view('notes/edit.view.php', [ 'heading' => 'Edit Note', 'errors' => $errors, 'note' => $note ]); } $db->query('update notes set body = :body where id = :id', [ 'id' => $_POST['id'], 'body' => $_POST['body'] ]); // redirect the user header('location: /notes'); die();
Um das Bearbeiten und Aktualisieren von Notizen zu ermöglichen, müssen wir die folgenden Routen in route.php hinzufügen:
$router->get('/note/edit', 'controllers/notes/edit.php'); $router->patch('/note', 'controllers/notes/update.php');
Diese Routen ermöglichen die Bearbeitung und Aktualisierung von Notizen mithilfe der PATCH-Anfragemethode.
Wenn ein Benutzer eine Notiz bearbeiten möchte, wird er zum Bearbeitungsbildschirm weitergeleitet, wo er Änderungen an der Notiz vornehmen kann. Wenn ein Benutzer Änderungen übermittelt, wird die Datei update.php aufgerufen. Diese Datei prüft, ob der Benutzer zum Bearbeiten der Notiz berechtigt ist und ob die Validierung der Notiz korrekt ist. Wenn beide Prüfungen erfolgreich sind, wird die Notiz in der Datenbank aktualisiert und der Benutzer wird zurück zum Notizenbildschirm weitergeleitet. Wenn eine der Prüfungen fehlschlägt, wird der Benutzer mit Fehlermeldungen zurück zum Bearbeitungsbildschirm weitergeleitet.
Durch Befolgen dieser Schritte kann ein Benutzer die Notiz einfach mit der PATCH-Anfragemethode bearbeiten und aktualisieren.
Ich hoffe, dass Sie es klar verstanden haben.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3