とにかく、私は過去3時間、いくつかのクエリ結果をJSONエンコードしようとしましたが、コードイグナイターで頻繁に実行しますが、機能しません。理由がわかりません。
私はCodeIgniter(最新バージョン)、PHP5を使用しています。
私の3つのファイル。
Material_modelモデル
public function get_types(){
return $this->db->query("SELECT * FROM material_types ORDER BY type_id")->result_array();
} // end function get_types
public function get_material($name){
return $this->db->query("SELECT T.name as 'type', M.* FROM material M, material_types T WHERE T.type_id = M.type_id and T.name = '".$name."' ORDER BY M.type_id and M.order")->result_array();
} // end function get_material_all
材料コントローラー
public function get_all(){
$json['response'] = array('types' => array());
$json['response']['types'] = $this->material_model->get_types();
foreach ($json['response']['types'] as $item){
$name = $item['name'];
$json['response'][$name] = $this->material_model->get_material($name);
}
$this->load->view('response', $json);
}
応答ビュー
$this->output->set_status_header(200);
$this->output->set_header('Content-type: application/json');
echo json_encode($response);
結果-> http://goethedev.com/iib_ci/index.php/material/get_all/
JSONページの検証に使用するもの-> http://jsonformatter.curiousconcept.com/
結果全体を表示しています。テスト目的で、row_arrayだけに絞り込もうとしました。これは、テーブルmaterial_typesのいくつかのフィールドだけですが、運が悪いので、これも作業中の新しいサーバーです。問題はありそうにありませんが、言及する価値があると思いました。
ありがとう。