Osebni račun v PHP
Z osebnim računom razumemo mesto, kjer
uporabnik lahko ureja podatke svojega
profila. Naredimo stran account.php,
ob obisku katere bo uporabnik videl obrazec
za urejanje podatkov svojega profila
(razen prijavnega imena in gesla, ta je treba obravnavati
na poseben način).
Bodite pozorni na to, da id uporabnika
ne prenašamo z GET parametrom -
naredili bomo tako, da bo vsak uporabnik na
strani account.php videl podatke
svojega profila, ne tujega.
Za to moramo ob avtentikaciji uporabnika
v sejo zapisati id tega
uporabnika, takole:
<?php
if (password_verify($_POST['password'], $hash)) {
$_SESSION['auth'] = true;
$_SESSION['id'] = $user['id'];
}
?>
Nato ob obisku strani account.php
bomo naredili SELECT poizvedbo, ki
bo iz baze podatkov pridobila uporabnika z id
iz seje:
<?php
$id = $_SESSION['id'];
$query = "SELECT * FROM users WHERE id='$id'";
$res = mysqli_query($link, $query);
$user = mysqli_fetch_assoc($res);
?>
Podatke uporabnika moramo prikazati v obrazcu za urejanje. Naj bodo to na primer ime in priimek uporabnika:
<form action="" method="POST">
<input name="name" value="<?= $user['name'] ?>">
<input name="surname" value="<?= $user['surname'] ?>">
<input type="submit" name="submit">
</form>
Po pritisku na gumb za pošiljanje obrazca moramo narediti poizvedbo za posodobitev uporabnika:
<?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);
}
?>
Implementirajte opisani osebni račun.