3 回答

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超7個(gè)贊
您的方法有幾個(gè)問題,您正在打印用戶名
$username = $this->session->userdata('logged_in');
echo $username;
但是您沒有在任何地方分配用戶名,因此要完成此操作,您可以在登錄類中進(jìn)行一些選擇
class UserLogin extends CI_Model{
public function checkLogin($email, $password) {
$this->db->where('email', $email);
$this->db->where('password', $password);
$query = $this->db->get('users');
if($query->num_rows())
{
$user = $query->row_array();
print_r($user); die(); // remove die after testing
return $user;
}
return false;
}
比你能回聲:
$user = $this->session->userdata('logged_in');
echo $user['username'];
第二個(gè)問題是這種方式登錄用戶非常不安全,您可以對(duì)密碼進(jìn)行md5或其他加密。IE:
$this->db->where('password', md5( $password));
或更好的用戶ion_auth library,默認(rèn)情況下為您提供各種選項(xiàng)。

TA貢獻(xiàn)1993條經(jīng)驗(yàn) 獲得超6個(gè)贊
更改以下CheckLogin()類似然后檢查用戶數(shù)據(jù)
public function checkLogin($email, $password) {
$this->db->where('email', $email);
$this->db->where('password', $password);
$query = $this->db->get('users');
if($query->num_rows() == '1'){
$data = $query->row_array();
$this->session->set_userdata(array('name'=>$data['name'],'loggedin'=>'1'));
}
return $query->num_rows();

TA貢獻(xiàn)1998條經(jīng)驗(yàn) 獲得超6個(gè)贊
請(qǐng)嘗試更改模型
class UserLogin extends CI_Model
{
public function checkLogin($email, $password) {
$this->db->where('email', $email);
$this->db->where('password', $password);
return $this->db->get('users');
}
- 3 回答
- 0 關(guān)注
- 143 瀏覽
添加回答
舉報(bào)