运行通过Ajax一个PHP我想,当用户导航离开该页面有一个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);
}
通过萤火,它看起来是调用ajaxRequest对象的开放的功能,但是PHP不运行!这是否与它在卸载页面时调用它有关?
此外,我发现一个名为onbeforeunload的事件,但我无法弄清楚如何使它工作,如果它仍然可用。
好的。如果ignore_user_abort()设置为true,它是否仍然允许用户继续离开页面?或者会将它们全部阻止并保持在上面? 我为什么要使用Ajax,如果我可以通过注入图片src运行PHP的赫克?它是否以完全相同的方式工作,或者对Ajax有益处? 谢谢。 – GuyNoir 2009-08-19 04:27:48
呵呵,忽略关于ignore_user_abort()的问题。我认为这是一个JS标志而不是PHP。 – GuyNoir 2009-08-19 04:28:42
XMLHttp方法的唯一好处是可以返回结果 - 在这种情况下,您不需要任何结果。所以,你可以注入一个图像。是的,如果用户关闭连接,ignore_user_abort()会告诉PHP不会中止执行。 – Tyson 2009-08-19 05:02:10