Codigniter:登录后在首页显示当前用户
问题描述:
我想问如何显示当前登录我的主页的用户。Codigniter:登录后在首页显示当前用户
这里是我的登录视图:
<form action="login2" method="POST" id="log_form" name="log_form" style="margin-left: auto; margin-right: auto;">
<div class="modal-body">
<div class="container">
<div id="nav_log1">
Username: <input type="text" id="txt_user1" name="txt_user1" style="color: black;"/>
Password: <input type="password" id="txt_pass1" name="txt_pass1" style="color: black;"/>
</div>
</div> <!-- /container -->
<div class="modal-footer" style="padding: 20px; margin-top: 20px;">
<button type="submit" value="login" id="btn_login" class="btn btn-primary btn-sm" name="btn_login">Sign-In</button>
<button class="btn btn-warning btn-sm" data-dismiss="modal">Cancel</button>
</div>
</div>
</form>
这里是我的模型:
public function select_login($value2){
$login_user = $this->db->select('*')
->from('tblusers')
->where('Username', $value2['txt_user1'])
->where('Password', $value2['txt_pass1'])
->get()->row();
return $login_user;
}
这里是对应于我的形式在我看来,动作控制器:
public function login2(){
$data = array();
if(!empty($_POST['btn_login'])){
$session_login = $this->inventory_model->select_login($this->input->post());
if($session_login){
$this->session->set_userdata('login_session', array('Username' => $session_login->Username,
'Password' => $session_login->Password,
'UserType' => $session_login->UserType));
redirect('inventorysys_controller/homepage');
}
else{
$this->session->set_flashdata('msg','Invalid Username/Password!');
redirect('inventorysys_controller/loginpage2');
}
}
}
正如你所看到的,在我的login2控制器中有一个redirect('inventorysys_controller/homepage');
。在我的网页上加载多个视图后,该页面上有两个视图。我只会发布标题视图,因为这是我想要放入已登录用户的名称的地方。下面是这个视图:
<div class="container">
<div class="masthead">
<h3 class="text-muted">Inventory System</h3>
<ul class="nav navbar-default nav-justified">
<li><a href="<?php echo site_url('inventorysys_controller/homepage'); ?>">Home</a></li>
<li><a href="<?php echo site_url('inventorysys_controller/inventory'); ?>">Inventory</a></li>
<li><a href="<?php echo site_url('inventorysys_controller/userslist1'); ?>">Users List</a></li>
<li><a href="<?php echo site_url('inventorysys_controller/view_employees'); ?>">Employee</a></li>
<li class="dropdown"><a href="#" class="dropdown-toggle" id="dropdownMenu1" data-toggle="dropdown">Administration<span class="caret"></span></a>
<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu1">
<li role="presentation"><a role="menutitem" tab-index="-1" href="<?php echo site_url('inventorysys_controller/maintenance'); ?>">Inventory Maintenance</a></li>
</ul>
</li>
<li><a href="<?php echo site_url('inventorysys_controller/about') ?>">About</a></li>
<li><a name="btn_logsouts" id="btn_logsouts" href="<?php echo site_url('inventorysys_controller/logsouts') ?>"><span class='glyphicon glyphicon-off'></span> Logout</a></li>
</ul>
</div>
这里是我的主页视图的打印屏幕让你得到我的问题:
原来是这样,我只是想选择具有用户名登录并显示在我的主页上。我知道我会创建另一个查询,如SELECT * FROM 'tblusers' where 'user' = --blank--
。我只是不知道如何处理。请帮助我们!预先感谢您的帮助! :)
答
正如我看到你在会话中分配你的用户名,你可以在你的代码中这样访问它。
echo $this->session->userdata('Username');
让我知道你是否有任何疑问。
Regards, Zeeshan。
答
所以我解决了谢谢@Zeeshan。
我只是在我看来,加验证码:
<?php $session_login = $this->session->userdata('login_session'); ?>
<label><?php echo $session_login['Username']; ?></label>
我希望能帮助你们。感谢@Zeeshan!
+0
欢迎伙伴... :) – Zeeshan 2014-09-04 07:36:07
哎呀,我明白了,我可以这样把它放在我看来的标签中吗? – 2014-09-04 07:12:49
是的,任何东西都可以用于造型。取而代之的是用您的用户名替换它。 如果它可以帮助您解决您的问题,请将其标记为帮助他人的答案。 – Zeeshan 2014-09-04 07:16:09