我的代码机制:
我的代码执行一个SQL查询,该查询选择USERNAME列包含当前登录到我网站的用户名的所有行。
我想要实现的目标?
我想将这些行显示为HTML表格,但我希望它们是动态的。我的意思是,如果仅针对登录用户找到了1行,则只应创建1行的HTML表格。如果找到针对登录用户的5行,则应创建5行的HTML表。
这是我的代码:
$query = $db->getQuery(true);
$query->select('*');
$query->from($db->quoteName('#__report'));
$query->where($db->quoteName('username') . " = ". $db->quote($user->username));
$db->setQuery($query);
$row = $db->loadRow();
echo "<table>
<tr>
<th> Article Name </th>
<th> Report Data </th>
<tr>
<tr>
<td> #name_of_the_article </td>
<td> #report_data_of_the_article </td>
</tr>
</table>";
我需要在代码中添加/编辑什么才能实现此目的..?
答案 0 :(得分:1)
这应该让你开始。根据我在JSE上写的答案,但是使用你的代码。
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select('*')
->from($db->quoteName('#__report'))
->where($db->quoteName('username') . " = ". $db->quote($user->username));
$db->setQuery($query);
$rows = $db->loadObjectList();
echo '<table>';
echo '<tr>';
echo ' <th>Article Name </th>';
echo ' <th>Report Data </th>';
echo '</tr>';
foreach($rows as $row) {
echo '<tr><td>' . $row->name . '</td><td>' . $row->report_data . '</td></tr>';
}
echo '</table>';
如您所见,我已使用$row->name
和$row->report_data
,但您可能需要根据数据库的列名更改这些内容。