如何从 ci_sessions 中检索当前用户会话 ID。?

玛希

我想获取当前会话 ID 以在所有页面中使用它。我想在标题中传递会话数据。我可以将我的会话存储在ci_sessions表中。但是我怎样才能从ci_sessions.

这是我的 ci_sessions 代码。

CREATE TABLE IF NOT EXISTS `ci_sessions` (
        `id` varchar(128) NOT NULL,
        `ip_address` varchar(45) NOT NULL,
        `timestamp` int(10) unsigned DEFAULT 0 NOT NULL,
        `data` blob NOT NULL,
        KEY `ci_sessions_timestamp` (`timestamp`)
);

这是会话设置代码

if($this->form_validation->run())
            {
                $username =  $this->input->post('login_username');
                $password =  $this->input->post('login_password');


                // ip address
                //$ip_address= $this->user_activity->get_client_ip();

                 //Retrieving session data and other data
                    //$captcha_code=$_SESSION['captcha'];
                    //$user_agent=$_SERVER['HTTP_USER_AGENT'];

                //call the model for auth
                $this->load->Model('Auth_model');
                if($this->Auth_model->login($username, $password)){


                    $data = array(
                            'client_username' => $username,
                            'is_logged_in' => true
                              );                    

                    $this->session->set_userdata($data);
                    $this->load->view('include/header', $data);
                    //$this->session->set_flashdata('item', $datav['name']);

                }
                else{
                    echo'something went wrong';
                }

我正在使用 pop dailog 进行登录和注册,所以这是我的 ajax。

<script>
    $("input#login_btn").on('click',function(event){
        event.preventDefault();

            var x = document.forms["loginform"]["login_username"].value;
            var x1 = document.forms["loginform"]["login_password"].value;
            var y = document.getElementById('login-error');
            var z = document.getElementById('password-error');

            if (x == "") { y.style.display ='block'; }else{ y.style.display ='none'; }
            if (x1 == "") { z.style.display ='block'; }else{ z.style.display ='none'; } 

                var d = document.forms["loginform"]["login_username"].value;
                var d1 = document.forms["loginform"]["login_password"].value;       

        if(d != '' && d1 != ''){
                var url = $(this).attr('action');
                var method = $(this).attr('method');
                var data = $(this).serialize();

                $.ajax({
                   url:url,
                   type:method,
                   data:data
                }).done(function(data){
                   if(data !=='')
                    {

                        if(d !== '' && d1 != '' ){
                            //$("#login_fail").show('fast');
                            //$("#login_fail").effect( "shake" );
                            $('#loginform')[0].reset();
                            //var url = $('#current_loginurl').val();                   
                            //window.location.href=url;

                            var url = $('#current_loginurl').val();                 
                            window.location.href=url;

                        }                       
                    }
                    else
                    {
                        var url = $('#current_loginurl').val();                 
                        window.location.href=url;
                        throw new Error('go');
                    } 
                });            

            $( "div" ).each(function( index ) {
            var cl = $(this).attr('class');
            if(cl =='')
                {
                    $(this).hide();
                }
            });
            }
        });
</script>
希克马特・西贾帕蒂

current session从如下表中查找order bydescending按具有limit1 的顺序获取记录ID

$this->db->order_by('id', 'DESC');
$this->db->limit(1);
$last_session = $this->db->get('ci_sessions')->row_array();

print_r($last_session['data']);//prints current session data

更新但获取当前用户的最简单方法session id是使用session库。像这样..

$this->load->library('session');
$id = $this->session->userdata('id');//id is session variable that you set
echo $id;

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何知道当前bash会话的进程ID?

对于与用户uid相同的文档ID,如何从Firestore中仅检索一个用户的数据?

Python Flask:跟踪用户会话?如何获取会话Cookie ID?

如何在Django中获取当前登录用户的用户ID?

使用_sessionFactory.getCurrentSession()检索用户会话中的当前用户ID。冬眠的

如何获取CloudKit中的当前用户ID?

Django:如何在javascript中访问当前登录的用户ID?

如何获取当前用户ID角4?

如何获取当前用户ID Django

如何使用身份获取ApplicationDbContext中当前登录的用户ID?

如何在Flutter中从Firebase获取当前用户ID

如何在laravel的构造函数中获取当前用户ID?

如何从数据库中检索当前的产品ID?

如何使用用户ID在Firebase中检索字段

如何在R中基于用户ID和会话ID添加均值列?

如何从多个表中检索特定于用户会话ID的列?

如何在会话中显示用户ID?

如何在Joomla中检索用户ID

Codeigniter Oracle和CI_SESSIONS

如何使用ID销毁特定用户的会话?

如何在odoo 9中存储当前记录的用户ID或活动用户ID?

如何从会话ID中查找用户名?

如何从laravel中的user_id检索用户名?

如何在 UWP App 中获取当前登录用户的用户名或 ID

如何将当前用户 ID(在会话中)名称插入到 createdby 和 updatedby 的表列中

如何在烧瓶中检索登录的用户 ID?

如何从打开的 SAP 会话中获取用户 ID?

如何从任务分配中检索用户 ID?

如何从当前登录的用户 Firebase、Android 中检索值