我有一个AJAX脚本,在我的网站上放置了一个命令后,我正在使用它来执行某些数据库魔术。如何修复/调试间歇性地返回500错误的AJAX脚本
这是我如何引用它我的订单确认页面:
<script>
// I define my function
function voucherRedeem(str) {
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById("confirmation").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","redeemvoucher.php?order="+str,true);
xmlhttp.send();
}
// This grabs the order number in the confirmation field.
var finisher = jQuery('div.col-main p a:first').text();
// This executes the function.
voucherRedeem(finisher);
</script>
我有情况下,该脚本实际工作,但我看到500其他时候,我看到500,也没有结果。最终,我不希望有任何500.这是一个具有大量资源的登台服务器,所以我没有预见到网络或CPU问题。
我看到萤火虫的错误:
GET http://www.website.com/redeemvoucher.php?order=123456 500 Internal Server Error 1.33s
我可以设置延迟这个js函数或者一个的document.ready?再次,不确定发生了什么。
你为什么标签这个问题[jQuery的]如果你不打算使用它呢? http://api.jquery.com/category/ajax – Blazemonger 2014-09-26 17:59:33
我将删除标签,我在文档的末尾使用jQuery来选择元素的.text。 – sparecycle 2014-09-26 18:00:41
仍然没有解释为什么不使用'.get('redeemvoucher.php',{order:str},function(data){/ * success * /})''。 – Blazemonger 2014-09-26 18:01:41