というコードネームを使用してラジオ(または/)ボタンを選択すると、AND &に基づいて複数のフィールドの検索クエリを実行します。私は2つのラジオボタンを1つのAND OPERATOR(両方の基準に一致)と他のOR OPERATOR(基準の1つ)に配置しました。AND演算子は機能していますが、OR演算子が機能していない場合は、
ここで私の問題はAND演算子は正常に実行されていますが、OR演算子は実行中ではありません。
私は以下のコードを書いた:
モデル:あなたがここで何をしているか
// Variables treatise
$lnameFilter=$this->input->post('lnameFilter');
$id=$this->input->post('id');
$firstname= $this->input->post('fname');
$opt=$this->input->post('and');
$strWhere="id_photo LIKE "."'%".$id."%'";
// $lnamefilter treatise
if(!empty($lnameFilter)) {
// AND OPERATOR (ON SELECTING RADIO BUTTON)
if($opt==1) {
if($strWhere != "") {
$strWhere=$this->db->where("($strWhere"." AND lastname LIKE "."'%".$lnameFilter."%')");
}
else {
$strWhere=$this->db->where("(lastname LIKE "."'%".$lnameFilter."%')");
}
}
// OR OPERATOR (ON SELECTING RADIO BUTTON)
if($opt==2) {
if($strWhere != "") {
$strWhere=$this->db->where("($strWhere"." OR lastname LIKE "."'%".$lnameFilter."%')");
}
else {
$strWhere=$this->db->where("(lastname LIKE "."'%".$lnameFilter."%')");
}
}
}
// $firstname treatise
if(!empty($firstname)) {
if($opt==1) {
if($strWhere != "") {
$strWhere=$this->db->where("($strWhere"." AND firstname LIKE "."'%".$firstname."%')");
}
else {
$strWhere=$this->db->where("(firstname LIKE "."'%".$firstname."%')");
}
}
if($opt==2) {
if($strWhere != "") {
$strWhere=$this->db->where("($strWhere"." OR firstname LIKE "."'%".$firstname."%')");
}
else {
$strWhere=$this->db->where("(firstname LIKE "."'%".$firstname."%')");
}
}
}
あなたは私たちに '$ strWhere' – Hackerman