1

我的 SQL 查询有问题。

我尝试弹出这些查询,结果什么都没有。

$query =$db->getQuery(true);
$query->select($db->quoteName('name'));
$query->from($db->quoteName('#__restaurant'));
$query->where($db->quote(constant("$vector[0]")) . '=' . $db->quote($v[$vector[0]]));
$db->setQuery($query);
$column=$db->loadObjectList();

…………

$query= $db->getQuery(true);
$query->select($db->quoteName('name'));
$query->from($db->quoteName('#__restaurant'));
$query->where($db->quoteName('zone'). '=' . $db->quoteName('atocha'));
$db->setQuery($query);
$column=$db->loadObjectList();

数据库不是空的,但是我为什么没有结果。任何的想法!!!

谢谢

谢谢大家我执行这个

$query= "SELECT *
FROM ".$db->nameQuote('#__restaurantes')."
WHERE ".$db->nameQuote('tipe')."=".$db->quote($v[$vector[0]]).";";
$db->setQuery($query);
$column=$db->loadObjectList();

并获得这个

SELECT * FROM #__restaurantesWHERE tipe='';sol

任何的想法

谢谢

4

2 回答 2

2

我认为你的 quote() 和 quoteName() 函数有点落伍了。

试试这个:

$query= $db->getQuery(true);
$query->select('name');
$query->from('#__restaurant');
$query->where('zone = "atocha"');
$db->setQuery($query);
$column = $db->loadObjectList();

另外,如果这不起作用,请发布生成的 SQL。您可以通过以下方式获得:

echo $db->getQuery();
于 2012-07-23T09:52:29.577 回答
-1

非常感谢大家!

我有正确的查询,我把这里放给有同样问题的人。

$db=& JFactory::getDBO();

$query= "SELECT *
FROM ".$db->nameQuote('#__restaurant')."
WHERE ".$db->nameQuote(constant("$vector[0]"))."=".$db->quote($v[$vector[0]]).";";
$db->setQuery($query);
$column=$db->loadObjectList();

return $column;
于 2012-07-23T13:18:25.137 回答