У меня странная проблема с сессиями в PHP. По сути, когда пользователь отправляет контактную форму, сценарий обработки устанавливает сеанс по завершении ($_SESSION['action']='sent';
). Затем пользователь отправляется обратно на страницу, с которой он отправил форму, и отображается сообщение с использованием следующего кода:
$action = $_SESSION['action'];
if ( $action == 'sent' )
{
echo '<p>Thank you for contacting us, we will be in touch with you ASAP.</p>';
unset($_SESSION['action']);
}
Сеанс не установлен, поэтому, если они обновят страницу или уйдут и вернутся, сообщение больше не будет отображаться.
В основном проблема в том, что когда сеанс не установлен, он, кажется, сбрасывает его с самого начала сценария, чтобы сообщение не отображалось. Оператор if
явно выполняется, поскольку сеанс не установлен, но сообщение не отображается.
Я много раз использовал этот один и тот же скрипт, и он отлично работает на других сайтах (на том же сервере, с теми же настройками).
Буду признателен за любую помощь / совет!