0

有人可以帮我弄这个吗?我想从数据库中查询我的 joomla 2.5 模板的一些数据。

已知的mysql语法

$result = mysql_query("SELECT * FROM `jos_fieldsattach_values` WHERE value > NOW() and value < NOW() + INTERVAL 5 DAY");

像expexted一样工作,但如果我尝试用joomla db语法写这个查询失败

$db = JFactory::getDBO(); 
$query = $db->getQuery(true);
$db->setQuery($query);

$query
    ->select(array('*'))
    ->from('#__fieldsattach_values');           
    ->where('WHERE value > NOW() and value < NOW() + INTERVAL 5 DAY'); 

$result = $db->loadObjectList();
print_r($result);

where 子句似乎有问题?

谢谢你的回答,

托尼

4

1 回答 1

1

首先。当您使用 Joomla 开发任何东西时,您应该打开 FULL 错误报告(Configuration/Server/Error Reporting/Development)然后设置系统调试(Configuration/System/Debug System/Yes)。它将显示所有错误,来自系统的错误和来自 php/mysql 的错误。但请记住确保网站对其他用户不可见。现在,您的代码应该看起来更像这样:

$db = JFactory::getDBO(); 
$query = $db->getQuery(true);
$query->select("*")->from('#__fieldsattach_values')->where('value > NOW() AND value < DATE_ADD(NOW(),INTERVAL 5 DAY)'); 
$db->setQuery($query);
$result = $db->loadObjectList();
print_r($result);
于 2013-08-10T18:10:56.360 回答