Итак, я хочу создать страницу входа в систему, а затем показать имя пользователя на приборной панели после успешного входа в систему.Но имя не будет отображаться на приборной панели.это просто пустые места.нет уведомлений об ошибках или что-то.пожалуйста помоги.спасибо
Я работаю на PHP 7
Контроллер Auth.php
public function index()
{
$this->form_validation->set_rules('email','email',
'trim|required|valid_email');
$this->form_validation->set_rules('password','Password','trim|required');
if($this->form_validation->run() == false){
$data['title']='Login Page';
$this->load->view('templates/auth_header', $data);
$this->load->view('auth/login');
$this->load->view('templates/auth_footer');
}
else{
//success validation
$this->_login();
}
}
private function _login()
{
$email = $this->input->post('email');
$password = $this->input->post('password');
$user = $this->db->get_where('user',['email' => $email])->row_array();
if($user){
//user active
if($user['is_active']==1){
//check password
if(password_verify($password, $user['password'])){
//if pass were right
$data = [
'email' => $user['email'],
'role_id' => $user['role_id']
];
$this->session->set_userdata('$data');
redirect('user');
}
else{
$this->session->set_flashdata('message','<div class="alert alert-danger" role="alert"> Wrong password</div>');
redirect('auth');
}
}
else{
//
$this->session->set_flashdata('message','<div class="alert alert-danger" role="alert">
Email has not been activated</div>');
redirect('auth');
}
}
else{
//no email in database
$this->session->set_flashdata('message','<div class="alert alert-danger" role="alert">
Email is not registered</div>');
redirect('auth');
}
}
User.php в контроллере (управление для пользователя)
public function index()
{
$data['user'] = $this->db->get_where('user',['email' => $this->session->userdata('email')])->row_array();
$data['title']='Dashboard - SmartStock';
$this->load->view('user/index', $data);
}
и команда для отображения данных на странице
index.php
<div class="navbar-menu-wrapper d-flex align-items-stretch">
<ul class="navbar-nav navbar-nav-right">
<li class="nav-item nav-profile dropdown">
<a class="nav-link dropdown-toggle" id="profileDropdown" href="#" data-toggle="dropdown" aria-expanded="false">
<div class="nav-profile-img">
<img src="<?= base_url('assets/'); ?>images/profile/default.png" alt="image">
<span class="availability-status online"></span>
</div>
<div class="nav-profile-text">
<p class="mb-1 text-black"><?= $user['name']; ?></p>
</div>
</a>