2015-08-18 5 views
1

У меня есть форма AJAX, которая выполняет некоторую аутентификацию данных. Если сеанс отключен, я хочу перенаправить на страницу входа в систему. Как я могу это достичь? Вот мой упрощенный код на стороне сервера:AJAX вызывать временную сессию PHP

function doExecute(Request $request){ 
    if (isset($_SESSION["user_id"])){ 
     $user = New User($_SESSION["user_id"]); 
     $returnData["cashBack"] = $user->getAvailCashBack(); 
     echo json_encode($returnData); 

    } 
} 

вот мой JQuery код Ajax вызова:

$.post('index.php?cmd=hx_cash',function(data){ 
     var cashBack= data["cashBack"]; 
     //somecode; 
} 

Что мне нужно добавить либо на стороне сервера или на стороне браузера кода для достижения переадресации на страницу входа в систему, если время ожидания сеанса?

+1

Возможный дубликат http://stackoverflow.com/questions/3068744/php-session-timeout –

ответ

1
function doExecute(Request $request){ 
    if (isset($_SESSION["user_id"])){ 
     $user = New User($_SESSION["user_id"]); 
     $returnData["cashBack"] = $user->getAvailCashBack(); 
     echo json_encode($returnData); 

    }else echo "{\"logout\":\"<login url>\"}"; 
} 
$.post('index.php?cmd=hx_cash',function(data){ 
    if(data.logout){ 
     location.href = data.logout; 
     return; 
    }  
    var cashBack= data["cashBack"]; 
    //somecode; 
} 

В вашем PHP код отправить URL, где вы хотите, чтобы пользователь только если сеанс не установлен, и перед каждым вызовом можно перенаправить на страницу входа, если сеанс не установлен до обработка вашей бизнес-логики ajax

Смежные вопросы