简单问题: 我正在使用Codeigniter和MySQL数据库。 我目前在我的数据库中有一个名为“profiles”的表来存储每个用户的信息。 回到正轨,我需要在HTML表格中显示每个位置注册的用户数量(“位置”是我的“个人资料”表中的一个字段)。
到目前为止,我已尝试过这个: MODEL:
function asia_count()
{
$query = "SELECT COUNT(*) FROM profiles WHERE location = 'Asia'";
return $query;
}
控制器:
public function admin_m_reports_users_loc()
{
$data['asia_count'] =$this->help_model->asia_count();
$this->load->view('squidtopus1-admin-reports-users-location',$data);
}
查看: (相关行:):
<tr>
<td><a href="#">Asia</a></td>
<td><?php echo $asia_count; ?></td>
</tr>
关于VIEW(相关行),我需要它显示为亚洲| 1(1是示例结果)
...但我不能追查我哪里出错了。有人可以指出我正确的方向吗? 非常感谢。
答案 0 :(得分:1)
$query = $this->db->query("SELECT COUNT(*) FROM profiles WHERE location = 'Asia'");
if ($query->num_rows() > 0)
{
$row = $query->row_array();
echo $row['COUNT(*)'];
}
答案 1 :(得分:0)
您错过result()
或result_array()
。您可以尝试这个,使用此代码作为您的模型。
function asia_count()
{
$query = "SELECT COUNT(*) as Total FROM profiles WHERE location = 'Asia'";
$result = $query->result_array();
return $result[0]['Total'];
}
如果您想要列出所有位置数,您可以试试这个
模型
function asia_count()
{
$query = "SELECT location, COUNT(*) as Total FROM profiles GROUP BY location";
return $query->result_array();
}
查看
foreach ($lists as $index => $row) {
echo $row['location'] . ':' . $row['Total'];
}