2013-07-09 30 views
0

iam需要從數據庫中獲取數據具有相同name.i使用json數組來獲得輸出。json數組在codeigniter

function search_review($input, $serviceName){ 
     $data = array(); 
     $ipJson = json_encode($input); 
     $this->db->select('*'); 
     $this->db->from('reviews'); 
     $this->db->where('reviewee_name', $input['reviewee_name']); 
     $query = $this->db->get(); 
     $result = $query->result(); 
     if (!empty($result)) { 
     foreach ($query->result() as $row) 
     { 
      $data[]['reviewer_id'] = $row->reviewer_id; 
      $data[]['reviewee_name'] = $row->reviewee_name; 
      $data[]['tournament_played_c_s'] = $row->tournament_played_c_s; 
     } 

      $data['message'] = 'Review details retrieved successfully.'; 
      $status = $this->clamo_lib->return_status('success', $serviceName, $data, $ipJson); 
     } else { 
      $data['message'] = 'Unable to retrieve review details.'; 
      $status = $this->clamo_lib->return_status('error', $serviceName, $data, $ipJson); 
     } 
     return $status; 

    } 

0utput:

我需要讓我的輸出

<data> 
     <_0/> 
     <message>Review details retrieved successfully.</message> 
     <reviewee_name>deepi</reviewee_name> 
     <reviewer_id>4</reviewer_id> 
     <tournament_played_c_s>karnataka,bangalore</tournament_played_c_s> 
    </data> 
<data> 
     <_1/> 
     <message>Review details retrieved successfully.</message> 
     <reviewee_name>deepi</reviewee_name> 
     <reviewer_id>5</reviewer_id> 
     <tournament_played_c_s>kerala</tournament_played_c_s> 
    </data> 

我在這個改變?

+0

<_0> 3 <_1> deepi <_2> 奈,TN <_3> 4 <_4> deepi <_5> 卡納,班加羅爾 評分細節成功檢索。 sangee

+0

現在我正在得到這樣的輸出? – sangee

+0

什麼是$ this-> clamo_lib?我們可以看到它的代碼嗎?這看起來像XML不JSON ... – Jon

回答

0

這是行不通的?

function search_review($input, $serviceName){ 
    $data = array(); 
    $ipJson = json_encode($input); 
    $this->db->select('*'); 
    $this->db->from('reviews'); 
    $this->db->where('reviewee_name', $input['reviewee_name']); 
    $query = $this->db->get(); 
    // Check if query succeeded 
    if ($query !== false) { 
     $row_counter = 0; 
     // Loop through all results returned 
     while ($row = $query->result()) 
     { 
      $data[$row_counter]['reviewer_id'] = $row->reviewer_id; 
      $data[$row_counter]['reviewee_name'] = $row->reviewee_name; 
      $data[$row_counter]['tournament_played_c_s'] = $row->tournament_played_c_s; 
      $data[$row_counter]['message'] = 'Review details retrieved successfully.'; 
      $row_counter++; 
     } 
     $status = $this->clamo_lib->return_status('success', $serviceName, $data, $ipJson); 
    } else { 
     $data[]['message'] = 'Unable to retrieve review details.'; 
     $status = $this->clamo_lib->return_status('error', $serviceName, $data, $ipJson); 
    } 
    return $status; 
}