# Личный кабинет на 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); } ?>`

Реализуйте описанный личный кабинет.

← →
↑