Mysql 检索会话数据Codeigniter
我正在开发一个消息传递系统,希望用户的userid与消息一起发布到数据库中。现在,该消息正在发布到数据库,但用户ID为0 如何从会话数据中获取用户ID,以便与消息一起发布到数据库?旁注:我使用Tank Auth进行身份验证。(在mysql端,消息表中的user_id是一个外键,它引用users表中的id) 控制器Mysql 检索会话数据Codeigniter,mysql,codeigniter,Mysql,Codeigniter,我正在开发一个消息传递系统,希望用户的userid与消息一起发布到数据库中。现在,该消息正在发布到数据库,但用户ID为0 如何从会话数据中获取用户ID,以便与消息一起发布到数据库?旁注:我使用Tank Auth进行身份验证。(在mysql端,消息表中的user_id是一个外键,它引用users表中的id) 控制器 function index() { if ($this->input->post('submit')) { $id = $this-&g
function index() {
if ($this->input->post('submit')) {
$id = $this->input->post('user_id');
$message = $this->input->post('message');
$this->load->model('message_model');
$this->message_model->addPost($id, $message);
}
}
型号
function addMessage($id, $message) {
$data = array(
'user_id' => $id,
'message' => $message
);
$this->db->insert('message', $data);
}
直接取自:
检索会话数据
会话数组中的任何信息都可以使用
以下功能:
$this->session->userdata('item');
其中item是数组索引
对应于要获取的项目。例如,获取
会话ID您将执行以下操作:
$session_id = $this->session->userdata('session_id');
注:该
如果您尝试访问的项为FALSE(布尔值)
不存在
因此,如果您有一段名为user\u id
的会话数据,您可以这样访问它:
$user_id = $this->session->userdata('user_id');
对于tank_auth,使用以下命令获取用户id,然后将其分配给会话
$user_id = $this->tank_auth->get_user_id();
谢谢你。我在《用户指南》中看到了这一点,但我认为由于我使用的是Tank Auth,会话语法可能会有所不同。我试了大约10次,想想出一些可行的方法,但没有意识到语法是一样的。