0

所以我试图在 joomla 组件中显示一个简单查询的结果,

$db = JFactory::getDBO();
$query = 'SELECT r.number, r.date, q.id_category'.
         'FROM #__question AS q, #__reponse AS r'.
         'WHERE q.name = r.name'.
         'GROUP BY r.number';

$db->setQuery($query);                           
$result = $db->loadObjectList();
if(!$result)
    echo "no results found!";
else 
    echo "results found";

我得到的总是“找不到结果!”,通常相同的方法工作得很好..但现在不行了!

表不是空的,查询是正确的我直接在数据库中测试了它。

可能是什么问题呢 ?

4

2 回答 2

3

解决这些问题的关键是打印出查询。您的查询构造为:

     'SELECT r.number, r.date, q.id_category'.
     'FROM #__question AS q, #__reponse AS r'.
     'WHERE q.name = r.name'.
     'GROUP BY r.number;

查询将开始: 'SELECT r.number, r.date, q.id_categoryFROM 。. .'. 换句话说,它充满了语法错误。尝试明智地添加空格,如下所示:

     'SELECT r.number, r.date, q.id_category '.
     'FROM #__question AS q, #__reponse AS r '.
     'WHERE q.name = r.name '.
     'GROUP BY r.number;
于 2013-05-26T16:52:35.410 回答
2

在失败的 if 语句中,添加以下行:$db->getErrorMsg();。这将向您显示为您的查询返回的错误消息,并可以帮助您进行故障排除。

于 2013-05-26T17:08:37.243 回答