我是PHP和Codeigniter的新手,当CI中的会话过期以及我可以放置代码的时候如何更新数据库表?我在数据库中使用uniqid,它叫做token。这是我的登录表username, password, level, token, last_login, exp_time
。当Codeigniter中的会话过期时,我想更改值token = null。
答案 0 :(得分:1)
要做到这一点,你必须扩展CI_Session
在application / core / MY_Session.php
中创建一个php文件class MY_Session extends CI_Session {
public function __construct() {
parent::__construct();
}
function sess_destroy() {
//write your update here
$this->CI->db->update('YOUR_TABLE', array('YOUR_DATA'), array('YOUR_CONDITION'));
//call the parent
parent::sess_destroy();
}
}
但它可能并不总是有效,因为您的cookie可能会过期,因此CI无法获得您当前的会话