1

天,

我不熟悉 MySQL,这可能是一个简单的问题!

我正在尝试修改 Joomla 插件,并且正在使用适用于类似功能的代码:

$q="SELECT `".$naming."` AS naming FROM `#__users` WHERE `id`='".$jomsocial_event->creator."' ";
$db->setQuery($q);
$eventcreatorname = $db->loadResult();
$eventcreator = '<a href=\"'.CRoute::_('index.php?option=com_community&view=profile&userid='.$jomsocial_event->creator).'\">'.addslashes($eventcreatorname).'</a>';

我需要做的是id在表中查找字段community_groups并返回匹配的字段name。我所拥有的是(注意$jomsocial_event->contentid包含组 ID):

$q="SELECT `".$naming."` AS naming FROM `#__community_groups` WHERE `id`='".$jomsocial_event->contentid."' ";
$db->setQuery($q);
$eventgroupname = $db->loadResult();
$eventgroup = '<a href=\"'.CRoute::_('index.php?option=com_community&view=groups&task=viewgroup&groupid='.$jomsocial_event->contentid).'\">'.addslashes($eventcreatorname).'</a>';

由于查询错误,它不返回任何内容;我的用法应该是什么?

4

2 回答 2

0

我会从数据库向后工作。

即打开SQL 日志并查看实际到达数据库的内容。通过使用生成的 SQL 进行必要的调整,直到你得到你想要的(和期望的),然后在你的代码中实现它。

于 2012-09-14T06:21:40.553 回答
0

在 Joomla 的调试中查看您生成的查询。直接对mysql运行,看看哪里出错了。

另外,我会使用 JDatabaseQuery API,因为引用等错误的可能性要小得多。在我看来,您将 id 视为字符串而不是整数。

于 2012-09-14T13:48:39.460 回答