我使用jQuery Ajax' get'将php导向注销功能。在注销功能时,重定向标题会破坏代码,并且在该点之后不会继续。没有Ajax响应。
无法弄清楚为什么会发生这种情况......之前我曾使用过重定向但是这个停止了我继续任何代码。
我做错了什么?
jQuery的:
$(document).ready(function()
{
$('#logout').on('mouseup', function (e)
{
logOut();
});
function logOut()
{
console.log('start');
$.get('php/function/active-user.php?logout=true', function(response)
{
//This never gets called when using 'header' line in php
console.log(response);
console.log('end');
});
}
}
PHP:
if(isset($_GET['logout']))
{
session_start();
include("../data/connection.php");
$db = connect();
logOut($_SESSION['active-user'], $db);
}
function logOut($user_id, $db)
{
echo 'logging-out!';
session_destroy();
header("Location: user-logout.php"); //header doesn't redirect and no code works after this point
logUser('out', $user_id, $db);
exit;
}
答案 0 :(得分:0)
function logOut(redirectPage)
{
console.log('start');
window.location = "php/function/active-user.php?logout=true";
}
您无需在此处进行AJAX调用,因为您无论如何都希望重定向用户,那么为什么不首先重定向用户。我也不能在这里看到任何安全问题。
答案 1 :(得分:-1)
第一步是在PHP中打开error reporting以查看错误
例如:
error_reporting(E_ALL);