사용자가 페이지에서 벗어날 때 PHP 스크립트를 실행하려고합니다. 그것은 ajaxRequest 객체의 open 함수를 호출하는 것처럼 방화 광 통해언로드시 Ajax를 통해 PHP 실행
function unload(){
var ajaxRequest; // The variable that makes Ajax possible!
try{
// Opera 8.0+, Firefox, Safari
ajaxRequest = new XMLHttpRequest();
} catch (e){
// Internet Explorer Browsers
try{
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try{
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e){
// Something went wrong
window.location = "unsupported.html";
return false;
}
}
}
ajaxRequest.open("GET", "ajax/cancelMatch.php", true);
ajaxRequest.send(null);
}
, 그것은 보이는,하지만 PHP가 실행되지 않습니다 : 이것은 내가 현재 사용하고 무엇인가! 이것은 페이지의 언로드에서 호출하는 것과 관련이 있습니까?
또한 onbeforeunload라는 이벤트를 찾았지만 여전히 사용할 수있는 경우 작동 방법을 파악할 수 없습니다.
오케이. ignore_user_abort()가 true로 설정된 경우에도 사용자가 계속 페이지를 떠날 수 있습니까? 아니면 모두 함께 멈추고 그것들을 지키겠습니까? 그리고 왜 PHP를 이미지 src를 삽입하여 실행할 수 있다면 Ajax를 사용하고 있습니까? 정확히 같은 방식으로 작동합니까, 아니면 Ajax에 혜택이 있습니까? 감사합니다. – GuyNoir
오, ignore_user_abort()에 대한 질문을 무시하십시오. PHP가 아니라 JS 플래그라고 가정했습니다. – GuyNoir
XMLHttp 메서드의 유일한 이점은 결과를 다시 얻을 수 있다는 것입니다.이 경우 결과가 필요하지 않습니다. 그래서, 당신은 단지 이미지를 주입 할 수 있습니다. 그리고 예, ignore_user_abort()는 사용자가 연결을 닫으면 실행을 중단하지 않도록 PHP에 알려줍니다. – Tyson