[問題] request.send到php的query,如何取回結果
利用JavaScript可以建立XMLHttpRequest然後利用open、send的方法傳送資料(GET或POST)。
我現在的目的是要從client端發出request到一個php,然後透過這個php執行query(mysql),最後「回傳給client的js顯示在一個div之中」。
我已經確定Request是沒有問題的。
我的client端程式碼是這樣的:
function previousChange() {
var ajaxReq = new AjaxRequest(); //從另一個js匯入的
var type = document.getElementById("cpt").innerHTML;
var phase = document.getElementById("cpp").innerHTML;
var serialNumber = parseInt(document.getElementById("csn").innerHTML);
if(serialNumber <= 1) alert("已經是第一項");
else{
serialNumber--;
document.getElementById('csn').innerHTML = serialNumber ;
}
ajaxReq.send(
"POST",
"query.php",
handleRequest,
"application/x-www-form-urlencoded; charset=UTF-8",
"type=" + type + "&phase=" + phase + "&serialNumber=" + serialNumber
);
document.getElementById("pointerContent").innerHTML = ajaxReq.getResponseText;
}
另外,php的程式碼是這樣的:
require '../database/db_con.php';
mysql_select_db("pointer_detail",$dbc)or die("無法選取資料庫");
$sql = "SELECT content FROM pointers WHERE type='" . $_REQUEST['type'] ."' AND phase='" . $_REQUEST['phase'] . "' AND serial_number='" . $_REQUEST['serialNumber'] . "'";
$result = mysql_query($sql,$dbc)or die("錯誤");
if($result==0)echo "bye";
while($row = mysql_fetch_array($result)){
echo $row['content'];
}
mysql_free_result($result);
mysql_close($dbc);
這個php程式碼我直接執行是沒有問題的。
我想請問為什麼沒辦法回傳(在指定的div中一直出現undefined)?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.35.79.148
→
08/09 18:14, , 1F
08/09 18:14, 1F
→
08/09 18:14, , 2F
08/09 18:14, 2F
→
08/09 18:15, , 3F
08/09 18:15, 3F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):
Ajax 近期熱門文章
PTT數位生活區 即時熱門文章