Мои значения сеанса PHP не обновляются автоматически - PullRequest
0 голосов
/ 18 апреля 2020

Я только что создал систему входа в систему и обновления профиля в PHP:

while ($row = mysqli_fetch_assoc($result_login_process)) {
    $db_user_name       = $row['user_name'];
    $db_user_first_name = $row['user_firstname'];
    $db_user_last_name  = $row['user_lastname'];
    $db_user_email      = $row['user_email'];
    $db_user_password   = $row['user_password'];
    $db_user_content    = $row['user_content'];
    $db_user_role       = $row['user_role'];
}

if($user_email === $db_user_email && $user_password === $db_user_password && $db_user_role = "Admin") {
    $_SESSION['user_name']      = $db_user_name;
    $_SESSION['user_firstname'] = $db_user_first_name;
    $_SESSION['user_lastname']  = $db_user_last_name;
    $_SESSION['user_email']     = $db_user_email;
    $_SESSION['user_role']      = $db_user_role;
    header("Location: admin/");
}

В приведенном выше коде я получил данные из базы данных и сохранил их в переменных $_SESSION для дальнейшего использования. Если пользователь обновляет свой профиль, все данные переменных сеанса должны быть обновлены для соответствия.

После успешного обновления своего профиля он также обновится в базе данных. Но ранее я хранил переменные типа username и email в переменных сеанса, и они не обновляются с новыми данными из базы данных, они остаются старыми значениями.

if(isset($_SESSION['user_name'])) {
    $user_letter = strtoupper($_SESSION['user_name']);
    $user_name   = $_SESSION['user_name'];
    $user_email  = $_SESSION['user_email'];
}

Как я могу обновить переменные сеанса после обновления изменений в базе данных?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...