2012-11-15 50 views
1

我有一個CodeIgniter(CI)應用程序,該應用程序在同一應用程序中從page1到page2發出jquery .ajax()請求。PHP會話不會通過ajax請求使用IE9和Codeigniter更新

$('.makecall').click(function() { 
     mkcall = $(this).attr('href'); 
     $.ajax({ 
      type: "GET", 
      url: mkcall, 
      success: function(data) { 
       currentcall = jQuery.parseJSON(data); 
       $("#CurrentNumber").html("Current call: "+currentcall.number); 
      } 
     }) 
    return false; 
    }) 

Page2使用CI的會話類更新會話。

$svars = array('script_did' => $opt['number']['number']); 
$this->session->set_userdata($svars); 

這在Firefox/Chrome中運行得非常好,但在IE9中,會話值不會被添加。 JavaScript執行得很好,控制檯中沒有錯誤,所以它似乎確實是IE9或CI會話庫的問題。

我該如何獲得IE9採取價格?

回答

0

什麼是您的CI會話名稱?根據this discussion看來,IE9不喜歡會話名稱中的下劃線,因此請確保刪除下劃線(如果存在)。

// Change this: 
$config['sess_cookie_name'] = 'ci_session'; 
// to, IE does not like the underscore! 
$config['sess_cookie_name'] = 'cisession'; 
+0

會議已經設置爲:astmansession – JesseCloutier