Joomla内のデータベース呼び出しに問題がありますが、その配列値のように一致する値がある場合、配列をループしてすべてのレコードをプルしています。
これが私のコードです:
$time = JRequest::getVar('time');
if($time == 'Morning') {
$times = array('07', '08', '09', '10', '11');
}
if($time == 'Afternoon') {
$times = array('12', '13', '14', '15', '16');
}
if($time == 'Evening') {
$times = array('17', '18', '19', '20', '21');
}
if(isset($times)) {
$first = array_shift($times);
$query->where('a.startTime LIKE "%'. $first .'%"');
foreach($times as $tim => $val) {
$query->or('a.startTime LIKE "%'. $val .'%"');
}
}
$query->order('a.weekday,a.startTime ASC');
return $query;
時間が「朝」に等しい場合、「朝」配列にある値を持つレコードのみを返すようにします。クエリの「または」の部分に問題があります。「$query->or」は有効な関数ではないと思いますか? クエリで「WHERE a.startTime LIKE arrayvalue1 OR LIKE arrayvalue2....etc」を実行したいのですが、Joomla データベース クエリを使用してこれを行う方法がわかりません。ありがとう