所以我成功地在控制器中做的方法,所以当有人登录我的网站,它的管理员(从数据库的列管理员的值为1,并且普通用户有值0),将他重定向到只有他可以看到的页面。现在,我想为管理员显示所有不是管理员的用户,但我不知道如何使其真实工作。CodeIgniter显示用户从数据库不是管理员
型号:
public function display_users() {
$query = $this->db->query('SELECT id, fname, email, username, password FROM register WHERE admin = 0');
return $query->result();
}
也试过这样一个模型:
$this->db->select('id', 'fname', 'lname', 'email', 'username', 'password')
->where('admin', 0)
->get('register')
->result_array();
控制器:
public function admin() {
$isLogged = $this->session->userdata('email');
if ($isLogged) {
$check_admin = $this->signup_model->admin();
if ($check_admin == 1) {
$this->signup_model->display_users();
$this->load->view('navbar');
$this->load->view('header');
$this->load->view('admin');
$this->load->view('footer');
} else {
redirect('users/login');
}
}
}
查看:
<table class="usersTable">
<thead>
<tr class="column">
<th class="cell">ID</th>
<th class="cell">First Name</th>
<th class="cell">Last Name</th>
<th class="cell">Email</th>
<th class="cell">Username</th>
<th class="cell">Password</th>
</tr>
</thead>
<tbody>
<?php
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
?>
<tr>
<td class="cell"><?php echo $row->id; ?> </td>
<td class="cell"><?php echo $row->fname; ?> </td>
<td class="cell"><?php echo $row->lname; ?> </td>
<td class="cell"><?php echo $row->email; ?> </td>
<td class="cell"><?php echo $row->username; ?> </td>
<td class="cell"><?php echo $row->password; ?> </td>
</tr>
<?php }} ?>
</tbody>
一个PHP错误遇到 严重性:警告 消息:无效的参数为foreach提供() 文件名:views/admin.php 行号码:17 –
是的,我更新我的答案,模型中的查询是错误的,它应该使用'result_array()'而不是'结果()'。 – roberto06
非常感谢!它现在的作品,我显示错误lname,但其余的工作,我会弄明白,再次感谢您的时间:) –