2013-07-09 5 views
0

iam необходимо получить данные из db, которые имеют одинаковое имя. I используя массив json для получения результата.json array в 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; 
}