私のデータベースには、値を持つフィールドがあります
1 ブルーホワイト
2 白 青
3 青
4 ホワイト
すべてのIDに対して。
$color="White Blue" を宣言してモデルに渡すコントローラーがあります。私のモデルでは、'explode' を使用して 2 つの単語を分離し、for-each を使用して抽出します。
これが私のモデルです:
public function test($color){
$arry = explode(" ", $color);
foreach($arry as $colr){
$this->db->where("tags like '%$colr%' or
tags like '%$colr'or
tags like '$colr%' ");
}
$q=$this->db->get('test');
return $q;
}
ローカルホストで実行しようとすると、Call to a member function result() エラーが発生します。この種のエラーは、データベースからデータが取得されないことを意味します。クエリにエラーを入力しようとしたときに、最初の for-each の後に「OR」を使用すると、代わりに「AND」が使用されることがわかりました。どうすればこれを機能させることができるかについて何か考えがありますか?