Как при неправильно введённом тексте остаться на странице, в котором будет показано сообщение?

Многие видели подобную вещь на разных сайтах.
Делаю форму обратной связи на php.

Хотел сделать так, чтобы при неправильно введённой капче не происходила отправка письма, а вместо этого обновлялась страница через header, и на сайте появлялось сообщение типа "Неправильно введённый код".
Нужна переменная чтоб она удалялась после перезагрузки сайта.

Пробовал:
- Через сессии, но столкнулся с проблемой удаления сообщения после перезагрузки страницы.
- Делать всё в одном файле, а в form поставить action=""

Как я могу реализовать это?

Надеюсь на быстрое решение проблемы.

вот картинка чтоб понятнее было:
634c55636a87f695223645.png
  • Вопрос задан
  • 53 просмотра
Пригласить эксперта
Ответы на вопрос 2
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
Нужна переменная чтоб она удалялась после перезагрузки сайта.

- Через сессии, но столкнулся с проблемой удаления сообщения после перезагрузки страницы.
Как бы... удаление должно быть не после перезагрузки, а сразу при загрузке. То есть - если в сессии лежит какое-то сообщение, которое мы туде положили при обработке формы и редиректе - сохраняем его в локальную переменную, и этот ключ в сессии удаляем.
Ответ написан
Комментировать
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
Допустим у вас есть файл send.php, который выводит форму.

Тогда этом-же файле пишем код проверки введённых данных, если данные существуют.
Если данные некорректны - в файле уже есть показывание формы, просто даём этому коду отработать (с выводом ошибки, пользователь поймёт и исправит).

Если всё правильно, и нужно отправить сообщение - отправляем и делаем exit(), ну или переход на какую-нибудь основную страницу.

Зачем где-то что-то хранить и откуда-то что-то удалять? Тут всего 2 шага, показать форму и отреагировать на данные формы...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
18 апр. 2024, в 21:56
2000 руб./за проект
18 апр. 2024, в 21:00
150 руб./за проект