Personīgais kabinets PHP
Personīgais kabinets tiek saprasts kā vieta, kur
lietotājs var rediģēt sava profila datus.
Izveidosim lapu account.php,
kurā ielāpisies, lietotājs redzēs veidlapu
sava profila datu rediģēšanai
(izņemot lietotājvārdu un paroli, tās jāapstrādā
īpašā veidā).
Ievērojiet, ka lietotāja id
mēs nepārraidām kā GET parametru - mēs
to darīsim tā, lai katrs lietotājs
lapā account.php redzētu savu
profila datus, nevis kāda cita.
Lai to izdarītu, lietotāja autentificēšanas laikā
mums sesijā jāieraksta šī lietotāja
id, šādi:
<?php
if (password_verify($_POST['password'], $hash)) {
$_SESSION['auth'] = true;
$_SESSION['id'] = $user['id'];
}
?>
Pēc tam, ielaižoties lapā account.php,
mēs veiksim SELECT vaicājumu, kas
no datu bāzes izņems lietotāju ar id
no sesijas:
<?php
$id = $_SESSION['id'];
$query = "SELECT * FROM users WHERE id='$id'";
$res = mysqli_query($link, $query);
$user = mysqli_fetch_assoc($res);
?>
Lietotāja datus mums jāparāda veidlapā rediģēšanai. Pieņemsim, ka, piemēram, tie ir lietotāja vārds un uzvārds:
<form action="" method="POST">
<input name="name" value="<?= $user['name'] ?>">
<input name="surname" value="<?= $user['surname'] ?>">
<input type="submit" name="submit">
</form>
Pēc pogas nospiešanas nosūtīšanas veidlapu mēs jāveic vaicājums lietotāja atjaunināšanai:
<?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);
}
?>
Ieviesiet aprakstīto personīgo kabinetu.