2013-05-26 2 views
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"; 

Что я получаю всегда «не найдено!», Как правило, одни и те же метод работы просто отлично .. но теперь это не так!

таблицы не пустые, и запрос правильный. Я проверил его непосредственно в БД.

В чем может быть проблема?

+1

Вы пробовали 'var_dump ($ result);' просто посмотреть, что возвращается, если вообще что-нибудь. – Vector

ответ

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; 
+0

Большое вам спасибо, это работает :) .. такая глупая ошибка! –

2

В вашем если заявления, где он выходит из строя, добавьте следующую строку: $db->getErrorMsg();. Это покажет вам сообщение об ошибке, которое возвращается для вашего запроса и может помочь вам устранить неполадки.

Смежные вопросы