我有一個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