Как я могу показать информацию о клиенте или пользователе, такую как Имя и Фамилия, в заголовке?
Во-первых, у меня есть страница входа.Клиент и Пользователь могут войти в панель управления на одной странице входа.Во время входа в систему используются две таблицы базы данных, такие как Пользователь и Клиент.Система процессов входа в систему берет данные из 2 таблиц базы данных, когда клиент и пользователь входят в систему на панели инструментов.
Модель входа:
private $table = "user, customer";
private $_data = array();
public function validate()
{
$username = $this->input->post('username');
$password = $this->input->post('password');
// Username or Email Sending Settings
$this->db->where("(user.userEmail = '$username' OR user.userUsername = '$username') OR (customer.cosEmail = '$username' OR customer.cosUserName = '$username')"); //
$query = $this->db->get($this->table);
if ($query->num_rows())
{
// found row by username
$row = $query->row_array();
// now check for the password
if ($row['userPass'] == $password OR $row['cosPassword'] == $password)
{
// we not need password to store in session
unset($row['userPass' OR 'cosPassword']);
$this->_data = $row;
return ERR_NONE;
}
// password not match
return ERR_INVALID_PASSWORD;
}
else {
// not found
return ERR_INVALID_USERNAME;
}
}
public function get_data()
{
return $this->_data;
}
И я хочу показать информацию о клиенте или пользователе в заголовке.Когда пользователь входит в систему, клиент может видеть собственную информацию или когда пользователь входит в систему, пользователь может видеть свою информацию на той же панели инструментов.
Для этого я использую SessionData Codeigniter.Заголовок представления:
<li class="dropdown">
<a data-toggle="dropdown" class="dropdown-toggle" href="#">
<img alt="" src="<?php echo base_url().'upload/user/'.$this->session->userdata('userImg'); ?>">
<span class="username"><?php echo $this->session->userdata('userName'); ?> <?php echo $this->session->userdata('userSurname'); ?></span>
<b class="caret"></b>
</a>
<ul class="dropdown-menu extended logout">
<div class="log-arrow-up"></div>
<li><a href="<?php echo base_url(); ?>profile"><i class=" fa fa-suitcase"></i>Profile</a></li>
<li hidden><a href="#"><i class="fa fa-cog"></i> Settings</a></li>
<li hidden><a href="<?php echo base_url(); ?>notifications"><i class="fa fa-bell-o"></i> Notification</a></li>
<li><a href="<?php echo base_url(); ?>logout"><i class="fa fa-key"></i> Log Out</a></li>
</ul>
</li>
Но я не могу ничего показать при входе клиента.Потому что я не знаю, как я могу показать информацию о клиенте при входе клиента.Когда клиентская панель входа в систему, я снова вижу информацию о пользователе.Как я могу установить это, что я хочу?Помогите мне, это так важно.
Я попробовал:
$this->session->userdata('userName') || $this->session->userdata('cosName')
Но система показывает мне 1 по имени пользователя.Это не работает.
Что я могу показать информацию в соответствии с клиентом или пользователем с userdata?
Мой контроллер входа в систему:
public function index()
{
$this->logged_in_check();
$this->load->library('form_validation');
$this->form_validation->set_rules("username", "Username", "trim|required");
$this->form_validation->set_rules("password", "Password", "trim|required");
if ($this->form_validation->run() == true)
{
$this->load->model('login_model', 'login');
// check the username & password of user
$status = $this->login->validate();
if ($status == ERR_INVALID_USERNAME) {
$this->session->set_flashdata("error", "Username or Email is invalid");
}
elseif ($status == ERR_INVALID_PASSWORD) {
$this->session->set_flashdata("error", "Password is invalid");
}
else
{
// success
// store the user data to session
$this->session->set_userdata($this->login->get_data());
$this->session->set_userdata("logged_in", true);
// redirect to dashboard
redirect("dashboard");
}
}
$this->load->view("login");
}