2015-06-24 37 views
0

需要一些幫助,我一直在這裏搜索相關的問題,但沒有任何東西似乎回答我的問題。好吧所以在這裏如何去如何從PHP中提取AJAX的響應部分

我有一個簡單的搜索功能,通過我的數據庫搜索,我用ajax傳遞數據,並得到迴應,我設法做到這一點,但我的問題是,我不能似乎以我想要的方式顯示響應。

這裏是我的Ajax

$.ajax({ 
    url: url, /// defined url 
    type: type, ///defined type 
    data: data, ///defined data 
    success: function(response){ 
    //here I want to display something like 
     $('#display').html(the name of the employee); 
    } 
}); 

這裏的Ajax響應

{ 
    "employee": [{ 
    "badgeno": "123    ", 
    "name": "John G. Doe", 
    "success": true 
}] 
} 
{ 
    "employee": [{ 
    "badgeno": "456    ", 
    "name": "Jane G. Doe", 
    "success": true 
} 

我想獲得員工的姓名在那裏,在我的頁面顯示出來。我究竟該怎麼做?

在此先感謝。我還是個新手BTW

這裏的PHP

$getEmp = $this->Employee_model->search_emp($employee); 
    $count = count($getEmp); 

    if($getEmp){ 
     for ($i=0; $i < $count; $i++) { 
      $data['employee'][$i] = array(
       'badgeno' => $getEmp[$i]->BADGENO, 
       'name' => $getEmp[$i]->NAME, 
       'success' => true 
      ); 
      echo json_encode($data); 
     } 
     print_r($data); 

     //$this->load->view('admin/home', $data); 
    } 
+0

事實是否真的'ajax'響應。我認爲它缺少一些閉合的花括號......或者我不知道....也許你可以編輯一下。 – Gideon

回答

1

嘗試:

employee_name= data.employee[0].name; 
$('#display').html(employee_name); 

鏈接fiffle: https://jsfiddle.net/fcz53htw/ 如果你有一個以上的名字,首先將它們添加到陣列,然後只打印數組的json_encode。 現在它不會工作,因爲你打印兩次。 試着改變你的PHP這樣的:

$getEmp = $this->Employee_model->search_emp($employee); 
$count = count($getEmp); 

if($getEmp){ 
    for ($i=0; $i < $count; $i++) { 
     $data['employee'][$i] = array(
      'badgeno' => $getEmp[$i]->BADGENO, 
      'name' => $getEmp[$i]->NAME, 
      'success' => true 
     ); 
     //echo json_encode($data); 
    } 
    echo json_encode($data); 

    //$this->load->view('admin/home', $data); 
} 
+0

抱歉響應 –

+0

檢查現在是未定義data.employee [0]。名稱; – BenB

+0

仍然不確定 –

0

關於PHP你寫的結果兩次刪除printr只使用json_encode