Чтобы закрыть сессию при уходе со страницы в PHP, можно использовать функцию session_set_cookie_params() для установки времени жизни сессии в 0. Это означает, что куки будут удаляться при закрытии браузера, что приведет к закрытию сессии. Например:
session_set_cookie_params(0); session_start();
Если требуется, чтобы сессия закрылась только при уходе со страницы, можно использовать JavaScript, чтобы установить обработчик событий на закрытие окна или уход со страницы. В этом случае JavaScript будет отправлять запрос на сервер, который закроет сессию. Например:
$(window).on('beforeunload', function(){ // отправляем ajax запрос на закрытие сессии });
Также можно использовать событие unload для отправки запроса закрытия сессии при уходе со страницы. Например:
$(window).on('unload', function(){ // отправляем ajax запрос на закрытие сессии });
В любом случае, для того чтобы сессия была закрыта, необходимо вызвать функцию session_destroy() при закрытии сессии, что может произойти как в результате ухода со страницы, так и в других случаях. Например:
session_destroy();
Уроки PHP 7 - Сессии в php. Как работать с сессиями.
Авторизация на PHP 🔓🐘
Сессии в PHP - Базовый курс PHP-7
Чат на PHP - 8 - Сессии и простейший механизм аутентификации
PHP для начинающих. Урок #13 - Авторизация на PHP, сессии в PHP, работа с COOKIE в PHP
How to Apply Session in Login Page in PHP - How to display a page after login in PHP - PHP login
Редирект PHP. Перенаправление пользователя на другую страницу посредством PHP