Persönlicher Bereich in PHP

Unter einem persönlichen Bereich versteht man einen Ort, an dem der Benutzer die Daten seines Profils bearbeiten kann. Lassen Sie uns eine Seite account.php erstellen, auf der der Benutzer ein Formular zur Bearbeitung der Daten seines Profils sieht (außer Login und Passwort, diese sollten auf besondere Weise behandelt werden).

Beachten Sie, dass wir die id des Benutzers nicht als GET-Parameter übergeben - wir werden es so einrichten, dass jeder Benutzer auf der Seite account.php die Daten seines eigenen Profils sieht und nicht die eines anderen.

Dazu müssen wir bei der Autorisierung des Benutzers die id dieses Benutzers in der Session speichern, etwa so:

html<?php
  if (password_verify($_POST['password'], $hash)) {
    $_SESSION['auth'] = true;
    $_SESSION['id'] = $user['id'];
  }
?>

Danach werden wir beim Aufruf der Seite account.php eine SELECT-Abfrage durchführen, die den Benutzer mit der id aus der Session aus der Datenbank holt:

html<?php
  $id = $_SESSION['id'];
  $query = "SELECT * FROM users WHERE id='$id'";
  
  $res = mysqli_query($link, $query);
  $user = mysqli_fetch_assoc($res);
?>

Die Daten des Benutzers müssen wir in dem Formular zur Bearbeitung anzeigen. Nehmen wir an, dies wären beispielsweise der Vor- und Nachname des Benutzers:

html<form action="" method="POST">
  <input name="name" value="<?= $user['name'] ?>">
  <input name="surname" value="<?= $user['surname'] ?>">
  <input type="submit" name="submit">
</form>

Nach dem Klick auf den Senden-Button der Form müssen wir eine Aktualisierungsabfrage für den Benutzer durchführen:

php<?php
  if (!empty($_POST['submit'])) {
    $name = $_POST['name'];
    $surname = $_POST['surname'];
    
    $query = "UPDATE users SET name='$name', surname='$surname' WHERE id=$id";
    mysqli_query($link, $query);
  }
?>
Задание 1

Implementieren Sie den beschriebenen persönlichen Bereich.