Предлагаю вам перейти на сеансы PHP. Это просто, и вам не нужно иметь дело с куки-файлами по своему усмотрению.
Ниже приведен код, позволяющий по-настоящему уничтожить сеанс, скопированный с example, указанный в руководстве по PHP.
// Initialize the session.
// If you are using session_name("something"), don't forget it now!
session_start();
// Unset all of the session variables.
$_SESSION = array();
// If it's desired to kill the session, also delete the session cookie.
// Note: This will destroy the session, and not just the session data!
if (ini_get("session.use_cookies")) {
$params = session_get_cookie_params();
setcookie(session_name(), '', time() - 42000,
$params["path"], $params["domain"],
$params["secure"], $params["httponly"]
);
}
// Finally, destroy the session.
session_destroy();
О ваш вопрос:
Что лучше использовать, чтобы пользователь вошел, пока он не закроет свой браузер?
Существует нет отказоустойчивого способа определения, когда пользователь закрыл браузер. Один из подходов состоит в том, чтобы постоянно отправлять небольшие запросы AJAX на сервер. Если запросы не просматриваются в течение длительного периода времени, уничтожьте сеанс.
Другой подход заключается в прослушивании выгрузки окна DOM и отправке запроса на сервер для уничтожения сеанса.
Session фактически использует куки для хранения SID –
@AlvinWong Я знаю, но мой вопрос, что лучше использовать в PHP – treng