Кабинети шахсӣ дар PHP
Кабинети шахсӣ ба маҳалле ишора мекунад, ки
корбар метавонад маълумоти профили худро
таҳрир кунад. Биёед саҳифаи account.php-ро созем,
ки ба он дохил шуда корбар шакли
таҳрири маълумоти профили худро
мебинад (ба истиснои логин ва рамз, онҳоро бояд
ба тарзи махсус коркард кард).
Бо диққат кунед, ки мо id-и корбарро
ба воситаи параметри GET намефиристем - мо
ба тавре месозем, ки ҳар як корбар дар
саҳифаи account.php маълумоти
профили худро бубинад, на дигареро.
Барои ин ҳангоми авторизатсияи корбар
мо бояд ба сессия id-и ин
корбарро нависем, ба ин тавр:
<?php
if (password_verify($_POST['password'], $hash)) {
$_SESSION['auth'] = true;
$_SESSION['id'] = $user['id'];
}
?>
Сипас ба саҳифаи account.php
дохил шудан, мо дархости SELECT-ро иҷро мекунем, ки
корбареро аз пойгоҳи дода бо id
аз сессия мегирад:
<?php
$id = $_SESSION['id'];
$query = "SELECT * FROM users WHERE id='$id'";
$res = mysqli_query($link, $query);
$user = mysqli_fetch_assoc($res);
?>
Маълумоти корбаро мо бояд дар шакли таҳрир намоем. Бигзор, масалан, онҳо ном ва насаби корбар бошанд:
<form action="" method="POST">
<input name="name" value="<?= $user['name'] ?>">
<input name="surname" value="<?= $user['surname'] ?>">
<input type="submit" name="submit">
</form>
Пас аз фиристодани форм, мо бояд дархости навсозии корбарро иҷро кунем:
<?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);
}
?>
Кабинети шахсии тавсифшударо татбиқ кунед.