웹 페이지에 로그인하려면이 Jquery Ajax 함수가 있어야합니다.
url="<?php echo Yii::app()->createUrl("security/login") ?>"
$.ajax({
type:"POST",
url:url,
data:{},
success: function (jsonResponse) {
var json=JSON.parse(jsonResponse);
if(json.result == "SUCCESS")
{
<?php $_SESSION['LOGGED_USER']="USER"; ?>
}
},
error: function (jqXHR, textStatus, errorThrown) {
console.log(errorThrown);
}
});
그리고 내보기에
내가 그것은 "LOGGED NOT"를 인쇄 페이지 처음으로 입력하지만 때 있도록 자동으로 세션을 설정하는 것 같습니다 때 나는이session_start();
if(isset($_SESSION['LOGGED_USER']))
{
print_r("LOGGED");
}
else
{
print_r("NOT LOGGED");
}
이 레이아웃 페이지를 새로 고침하여 "LOGGED"를 인쇄합니다.
내 AJAX 요청에 세션을 올바르게 설정하려면 어떻게해야합니까?
은 대단히 감사합니다 :)
주'그 경우 (json.result == "SUCCESS") { }'$ _SESSION [ 'LOGGED_USER']를 설정하면 그 전에는 아약스 요청을 성공할 수 없습니다. 따라서 처음에는 "NOT LOGGED"가 표시되지만 로그인하면 $ _SESSION [ 'LOGGED_USER']이 (가) 설정됩니다. 그런 다음 페이지를 새로 고치고 "LOGGED"를 봅니다. 희망은 지금 이유가 분명하다 :) –
Fallen
@MuhammedHedayet : Umm ... 아니. 서버 구성 방법과 스크립트 위치에 따라 PHP 부분에서 구문 오류가 발생하거나 스크립트가로드되는 즉시 실행됩니다. – cHao
답장을 보내 주셔서 감사합니다. 내 스크립트가 내 컨트롤러가 세션 변수를 설정하고 완벽하게 작동합니다. :) –