Передача сообщения об ошибке через сессии

Форма авторизации и сам скрипт авторизации на сайте, находятся на разных страницах. Для обработки данных формы использую метод POST. Как правильно будет передать сообщение об ошибке, на страницу с формой, в случае если пользователь ввел не правильные данные от аккаунта? Будет ли хорошим тоном использовать для этого сессии и после вывода ошибки, использовать на ключ сессии - unset()?

Пробовал присваить куки в скрипте, а затем проверять на форме присвоена ли куки и выводить, но в таком случае, куки всегда пуста.

Пример скрипта:

<?php
 
 $validation; // Если при обработке данные пользователя не совпадут с бд, присвоится false

 /* Логика */

 if ($validation == false) {
   setcookie("LoginError", 'Неправильный логин или пароль');
   header('Location: /loginform');
 }

?>

Пример страницы с формой:

<form method="POST" action="/LoginScript">
  <?php
      if (isset($_COOKIE['LoginError'])) {
         echo $_COOKIE['LoginError'];
      }
  ?>
  <!-- Тут инпуты -->
</form>

Также пробовал присваить куки время жизни, но результат не изменился.


Ответы (1 шт):

Автор решения: Тимур

Довольно удобно передавать ошибку в GET запросе

Header('Location: domain.com/auth.php?error=' . $error_text);

Ну и потом в форме уже проверяете

<form method="POST" action="/LoginScript">
  <?php
      if (isset($_GET['error'])) {
         echo $_GET['error'];
      }
  ?>
  <!-- Тут инпуты -->
</form>
→ Ссылка