原谅我 - 几乎是一个Joomla / SQL新手,并尝试浏览我试图帮助我当地房主协会的一些任务。我正在寻找一种方法来构建我自己的包含多个自定义用户字段的用户列表。我当前的查询为每个用户提供了多条记录,因为每个用户都链接到“__fields_values”表中的多个字段。我只需要为每个用户创建一条记录,并将每个自定义字段作为此行中的单独值。一个简单的小组条款似乎并没有削减它。没关系实际的表格html,这只是为了立即进行测试。希望有人可以帮我看看光:)
现在我得到:
username1|field1|<blank>|email
username1|field2|<blank>|email
我的表应该是这样的:
username1|field1|field2|email
我当前的查询和输出:
$query = $db->getQuery(true);
$query
->select('*')
->from($db->quoteName('#__users', 'u'))
->join('INNER', $db->quoteName('#__user_usergroup_map', 'm') . ' ON (' . $db->quoteName('u.id') . ' = ' . $db->quoteName('m.user_id') . ')')
->join('INNER', $db->quoteName('#__fields_values', 'f') . ' ON (' . $db->quoteName('u.id') . ' = ' . $db->quoteName('f.item_id') . ')')
->where($db->quoteName('group_id') . ' = ' . $group_id)
->order($db->quoteName('u.username') . ' ASC')
$db->setQuery($query);
$users = $db->loadObjectList();
然后输出到此表:
<table style="width:100%">
<tr style="border-bottom:1pt solid black;text-align: left;">
<th>Name</th>
<th>CustomField1</th>
<th>CustomField2</th>
<th>Email</th>
</tr>
<?php
foreach($users AS $user)
{
?>
<tr>
<td><?php;
echo $user->name;
?></td>
</td>
<td><?php;
echo $user->value;
?></td>
<td><?php;
echo $user->NEED ANOTHER VALUE HERE;
?></td>
<td><?php;
echo $user->email;
}?>
</table>