MYSQL Joomla数据库调用无法正常运行

时间:2012-12-06 14:26:52

标签: php mysql joomla

我在Joomla中遇到数据库调用问题,而我循环使用数组来拉取所有记录,如果匹配值LIKE该数组值。

这是我的代码:

$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;

如果时间等于'Morning',我只希望它返回具有'Morning'数组中值的记录。 我的查询的'或'部分存在问题。我不认为'$ query->或'是一个有效的函数? 我希望查询执行“WHERE a.startTime LIKE arrayvalue1 OR LIKE arrayvalue2 .... etc.”但我不确定如何使用Joomla数据库查询执行此操作。 感谢

1 个答案:

答案 0 :(得分:1)

您忘记在开头的查询中添加以下行:

$query = $db->getQuery(true);
$query->select('*');

有关详细信息,请访问此链接: JDatabaseQuery