2013-10-24 61 views
1

我已經創建了系統,用戶可以註冊,然後使用代碼點火器登錄
我的問題是我如何獲得登錄系統的人的電子郵件。這樣如何獲取登錄Code Igniter的用戶的電子郵件/數據?

$email=$this->session->userdata('email'); 

//a db query using the email obtained via session 
$query=$this->db->select('*')->from('referral')->where('referral_email',$email)->get(); 

我已經使用會話但是,我不認爲這是最穩妥的辦法還是做有效途徑。
有沒有更好的/安全的方式來完成這項任務。
在此先感謝幫助

回答

1

實際上,只要您將活動會話存儲在數據庫中,它就是安全的。

轉到application/config/config.php並啓用ci_sessions表

你還需要在數據庫中創建ci_sessions表:

CREATE TABLE IF NOT EXISTS `ci_sessions` (
    session_id varchar(40) DEFAULT '0' NOT NULL, 
    ip_address varchar(45) DEFAULT '0' NOT NULL, 
    user_agent varchar(120) NOT NULL, 
    last_activity int(10) unsigned DEFAULT 0 NOT NULL, 
    user_data text NOT NULL, 
    PRIMARY KEY (session_id), 
    KEY `last_activity_idx` (`last_activity`) 
); 

的方式,數據庫會話的工作是他們救了一個獨特的cookie會話ID,此會話ID是存儲所有用戶數據的錶行標識符。所以客戶永遠不會看到或修改數據。

我希望能回答你的問題=]

+1

哇,我對自己印象深刻。感謝@josue確認 – Angwenyi

相關問題