Я новичок в codeigniter. У меня есть система, в которой у меня есть три пользователя: суперадмин, администратор и просто пользователь. Суперадмин может создавать администраторов, а администратор может создавать пользователей и просматривать их, но не может видеть других администраторов, созданных суперадмином. Теперь я хочу, чтобы пользователи просматривали только свой профиль, а не всех пользователей в базе данных. Как я могу этого добиться?
Контроллер:
public function index ()
{
// Fetch all users
$this->data['users'] = $this->client_m->get();
// Load view
$this->data['subview'] = 'client/user/index';
$this->load->view('client/_layout_main', $this->data);
}
// функция get возвращает всех пользователей в базе данных, но мне нужен только текущий пользователь
Модель:
public function login ()
{
$user = $this->get_by(array(
'email' => $this->input->post('email'),
'password' => $this->hash($this->input->post('password')),
), TRUE);
if (count($user)) {
// Log in user
$data = array(
'email' => $user->email,
'id' => $user->id,
'loggedin' => TRUE,
);
$this->session->set_userdata($data);
}
}
Вид:
<div class="jumbotron">
<section>
<table class="table table-hover">
<thead>
<tr class="success">
<th>Name</th>
<th>Email</th>
<th>Balance</th>
<th>Edit</th>
<th>Delete</th>
</tr>
</thead>
<tbody>
<?php if(count($users)): foreach($users as $user): ?>
<tr class="info">
<td><?php echo anchor('client/user/edit/' . $user->id, $user->name); ?></td>
<td><?php echo anchor('client/user/edit/' . $user->id, $user->email); ?></td>
<td><?php echo anchor('client/user/edit/' . $user->id, $user->balance); ?></td>
<td><?php echo btn_edit('client/user/edit/' . $user->id); ?></td>
<td><?php echo btn_delete('client/user/delete/' . $user->id); ?></td>
</tr>
<?php endforeach; ?>
<?php else: ?>
<tr>
<td colspan="3">We could not find any users.</td>
</tr>
<?php endif; ?>
</tbody>
</table>
</section>
</div>
В настоящее время я получаю всех пользователей, но я просто хочу показать пользователю только его профиль, а не данные о других пользователях.