1

私の見解では、次のjsを開発しています。

var url       = '<?php echo base_url(); ?>edit/';
$(document).ready(function(){
    $("#ajax-loader").hide();
    $("#personaldetails-en-di-icon").click(function(){
        $("#ajax-loader").show();
        $.post(url+'ajax/personaldetails/enable', {}, function(data){
            console.log(data);  
        });
     });
});

だから、クリックすると、編集コントローラーをリクエストします。

編集コントローラーでは、プライベート$ id=nullがあります。

public function __construct() {
    parent::__construct();
    $this->load->library('session');
    $this->load->library('input');
    $this->load->model('editcv_model');
    $this->load->helper('url');

    $this->id = $this->session->userdata('login');        
    if (intval($this->id) < 1)
        die(json_encode(array('response' => 'not logged in')));
    }

    public function _remap($method = '',$param = array()){
        echo (json_encode(array('response' => 'done')));
    }
}

Chromeコンソールでは最初のajax呼び出しecho {"response": "done"}ですが、2番目以降のリクエストecho {"response":"ログインしていません"}。phpmyadminでセッションテーブルを確認すると、他のユーザーエージェントと一緒にセッションIDが再生成されます

ここに画像の説明を入力してください

ご覧のとおり、Mozilla / 5.0(X11; Linux i686)AppleWebKit / 537.1 (KHTML、Geckoなど)Chrome / 21.0.1180.57 Safari / 537.1 AlexaToolbar/alxg-3Mozilla/4.0(互換、MSIE 7.0、Windows NT 6.0)に変更されましたAlexaToolbar /alxg-3.0 in ajax request.but I use ubuntu with google chromebrowser!!!。

4

1 に答える 1

1

CodeIgniter セッションでも同じ問題が発生しました。

ネイティブ セッションに切り替えました: https://github.com/EllisLab/CodeIgniter/wiki/Dariusz-Debowczyk 's-Session-Class

私は、PHPがすでに良いものを持っているときに、さらに別のセッションメカニズムを実装する理由を本当に理解していませんでした(私はCI_Sessionについて話しているのではありません)。:)

于 2012-08-09T14:01:59.043 に答える