У меня проблема с удалением сеанса. Он хранится в файлах cookie, и всякий раз, когда я нажимаю кнопку выхода, ничего не происходит.
HTML
<input id = "log_out_button" onclick = "logout()" type = "button" value = "Log Out">
AJAX
function logout() {
// Create request object
var request = new XMLHttpRequest();
// Create event handler that specifies what should happen when server responds
request.onload = function() {
// Check HTTP status code
if (request.status == 200) {
document.getElementById("error_messages").innerHTML = "";
}
else
alert("Error communicating with server: " + request.status);
}
// Set up request with HTTP method and URL
request.open("GET", "php/log_out.php");
//Send request
request.send();
}
PHP
<?php
//Start session management
session_start();
//Remove all session variables
session_unset();
//Destroy the session
session_destroy();
?>
В журнале ошибок консоли ничего не отображается
Но вы ничего не делаете с responseData, и со стороны php ничего не возвращается.
Я удалил его, но по-прежнему ничего не происходит
попробуйте перенаправить на другую страницу в случае успеха
Я тоже пробовал это, но по-прежнему ничего не происходит
попробуйте var_dump($_SESSION) между каждой командой сеанса
что вы ожидаете? вплоть до вашего кода, если сеанс успешно уничтожен, вы теперь это знаете.
@ User786 есть ли после утверждения точка с запятой?
Undefined variable: _SESSION появляется






session_start() creates a session or resumes the current one based on a session identifier passed via a GET or POST request, or passed via a cookie.
поэтому, если вы хотите закрыть сеанс пользователя, вам также необходимо очистить файлы cookie
setcookie(session_name(), false, -1, '/');
http://php.net/manual/en/function.setcookie.php
http://php.net/manual/en/function.session-start.php
он говорит, что сеанс, хранящийся на сервере, не удаляется
Сеанс @ User786 будет восстановлен, если куки не будут удалены. поэтому вам нужно очистить его, если вы хотите закрыть сеанс
Что-нибудь в журнале ошибок консоли? Выполняется ли когда-нибудь функция logout ()?