如何获取登录代码点火器的用户的电子邮件/数据


How to get email/data of a user who signed-in 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();

但是,我不认为这是最安全或最有效的方法。
有没有更好/安全的方法来完成这项任务。
提前感谢您的帮助

实际上,只要您将活动会话存储在数据库中,这是安全的。

转到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`)
);

数据库会话的工作方式是它们保存一个带有会话 ID 的唯一 cookie,此会话 ID 是存储所有用户数据的表行的标识符。因此,客户端永远无法查看或修改数据。

我希望能回答你的问题=]