2017-06-04 7 views
0

私は現在航空会社の予約を行っています。 2つのラジオボタン(片道、往復)、2つのドロップダウン(From、To :)、1つのテキストフィールドがあるフィールド/ラジオボタン/ドロップダウンです。複数の条件でゼロの結果を返すcodeigniter

これらのフィールドに入力して「検索開始」をクリックしようとしました。結果は返されません。

注:フライトテーブルの私の列は:flight_name、flight_destination、flight_departです。私はまた、/ var_dump私のsearch_resultの両方のモデルとコントローラ内の変数を印刷しようとしました。値は正しい/正しいです。

私は$ table(私の飛行テーブルを得る)、$ testing - $ testing2と$ testing3も正しいですが、私は$ queryを出力しようとしたときにNULLです/ 0の結果を返します。

モデル

public function search($table, $flight_from, $flight_to, $depart) 
{ 
    $this->db->select('*'); 
    $table = $this->db->from($table); 
    $testing = $this->db->where('flight_name',$flight_from) 
    $testing2 = $this->db->where('flight_destination',$flight_to) 
    $testing3 = $this->db->where('flight_depart',$depart); 

    $query = $this->db->get(); 
    return $query->result(); 



} 

コントローラ

public function search() 
    { 
     $this->form_validation->set_error_delimiters('<div class="alert alert-danger" role="alert">', '</div>'); 
     $this->form_validation->set_rules('flight_from', 'Select depature', 'required|trim'); 
     $this->form_validation->set_rules('flight_to', 'Select Destination', 'required|trim'); 
     $this->form_validation->set_rules('depart', 'Date', 'required|trim'); 


     if ($this->form_validation->run() == FALSE) 
     { 
      $this->index(); 

     } 
     else 
     { 
     $search_result = array(
      $flight_from = $_POST['flight_from'], 
      $flight_to = $_POST['flight_to'], 
      $depart = $_POST['depart'] 
     ); 
     $data['search_result'] = $this->CrudModel->search('flight',$flight_from,$flight_to,$depart); 

     $this->load->view('result',$data); 
     } 
    } 

質問:どのようにそれはゼロ結果を返すのですか?既存のデータがあるにもかかわらず。私の質問は間違っていますか?

答えて

0

POST変数の値を確認しましたか?彼らはあなたが期待していたものですか?または、実行されているSQL文をダンプして、SQLクライアントから実行した結果があるかどうかを調べることができます。手動で実行されている場合

+0

はい、私はすでにあなたがどんな結果を得るか、Imは取得した値がどのようなSQLクエリステートメントについて – Angel

+0

も正しい..です番目の時間のためにそれを確認しますか?私は$ this-> db-> get() - > getSQL()をダンプすることを意味します。 – BDS

+0

それでこのようになりますか? $ query = $ this-> db-> get() - > getSQL();?はい、それは私にエラーが表示されます。メッセージ:未定義のメソッドを呼び出すCI_DB_mysqli_result :: getSQL() – Angel

0
public function search($table, $flight_from, $flight_to, $depart) 
{ 
    $this->db->select('*'); 
    $this->db->from($table); 
    $this->db->where('flight_name',$flight_from) 
    $this->db->where('flight_destination',$flight_to) 
    $this->db->where('flight_depart',$depart); 
    $query = $this->db->get(); 
    return $query->result(); 
}