1
<html><head><title>Loses</title></head><body>
<script language="javascript" type="text/javascript">
function ajaxFunction() {
var ajaxRequest;
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
alert("Your browser broke!");
return false;
}
}
}
// Receive data from the server to update div
ajaxRequest.onreadystatechange = function(){
if(ajaxRequest.readyState == 4){
var ajaxDisplay = document.getElementById('ajaxDiv');
ajaxDisplay.value = ajaxRequest.responseText;
}
}
// Get the value from user.
if (!target) target = document.getElementById("name");
var queryString = "?name=" + escape(target.value);
var url = "db.php" + queryString;
ajaxRequest.open("GET", url, true);
ajaxRequest.send(null);
}
</script>
<form name="myForm">
Victim: <input type="text" id="name" name="name"/> <br/>
<br/>
<input type="button" onclick="getLoses()" value="Show Loses"/>
</form>
<div id="ajaxDiv">Results:</div>
<br>
</body></html>
爲什麼這不做?爲什麼不這ajax腳本使用ajaxRequest.open調用後端php?
我試過在apache和lightpd下。我沒有收到任何抱怨或錯誤,但它沒有做任何事情。
如果我手動調用後端,db.php?name = Player1它工作。所以它不能在db.php中任何東西。上面的代碼有些問題,我只是不知道缺少什麼。誰能幫我?
哎呀,我試圖用其他的例子,我看到修復它,和我離開的函數名ajaxFunction,但即使改變之後回到getLoses(或改變onclick調用它ajaxFunction)並刪除if(!target),它仍然不起作用。 – admica
在服務器日誌中,我看到:「GET /db.php?name=Player1 HTTP/1.1」200 525「http://127.0.0.1/?name=Player1」 儘管GET有db.php ?,它沒有db.php後的網址。這是問題的一部分嗎? – admica
不,第二個url是引用者。你確定db.php位於DOCUMENT_ROOT嗎? –