2 回答

TA貢獻1829條經驗 獲得超4個贊
當您運行 ajax 調用時,URL 字段應該引用您嘗試運行的 PHP 腳本,例如:
url: "localhost/test/orderinfo/Controller.php",
接下來,確保 PHP 腳本在某個時刻調用 orderinfo() 函數。如果您在較大的腳本中包含此函數,并且沒有任何調用它的邏輯,我建議將該函數放入較小的 PHP 文件中,其唯一目的是返回該查詢的輸出。例如:
//Whatever you need to import to make your query calls
//Whatever variables you need to initialize for your query calls
$temporary_id = "ABC123";
public function orderinfo($id){
$orderInfo = $this->adminsModel->getOrderInfo($id);
$data=['orderInfo'=>$orderInfo];
$this->view('admin/orderinfo',$data);
}
return orderinfo($temporary_id);
如果您可以提供有關您要返回的對象的任何信息以及該控制臺日志的輸出,那將非常有幫助。
編輯:剛剛注意到評論,您可以將 id 值作為數據傳遞:
url: "localhost/test/orderinfo/Controller.php",
data: {'id':id_variable},
然后在 PHP 中,使用 獲取 id 值$_SESSION['id'];?;蛘?,您可以將其作為 URL 參數傳遞:
url: "localhost/test/orderinfo/Controller.php?id=ABC123",
data: {'id':id_variable},
并使用以下命令進入 PHP:
$id = $_GET['id'];
ID 的值應作為 ABC123 存儲在該 PHP 變量中。希望這可以幫助。

TA貢獻1863條經驗 獲得超2個贊
將數據從 PHP 發送到 JS 的最佳方法是使用json_encode將它們編碼為 JSON 對象。
?public function orderinfo($id){
? ? ?$orderInfo = $this->adminsModel->getOrderInfo($id);
? ? ?$data=['orderInfo'=>$orderInfo];
? ? ?$this->view('admin/orderinfo',json_encode($data));
?}
所以在你的JS中你可以使用parseJSON來解碼它,就像
<script>
? function showDetails(a) {
? ? $.ajax({
? ? url: "/test/orderinfo/280",
? ? ? ? method: "GET",
? ? ? ? datatype: JSON,
? ? ? ? success: function(response){
? ? ? ? ? ? var obj = jQuery.parseJSON(response);
? ? ? ? ? ? console.log(obj);
? ? ? ? }
? ? });
}
</script>
請注意,您不需要返回此對象中的整個 $data,并且出于性能和安全原因,您甚至可能不應該這樣做。
相反,只需準備僅包含 JS 所需數據的對象并按所示發送它們即可。
- 2 回答
- 0 關注
- 152 瀏覽
添加回答
舉報