簡體   English   中英

PHP會話在IE中不起作用

[英]PHP sessions not working in IE

我認為我已將數據正確設置為Session,並且Firefox可以正確獲取會話數據,但是IE無法獲取會話數據,並且返回bool(false)。 這個錯誤可能是什么問題?

我是新來的PHP專家,我想知道為什么PHP在客戶端而不是在服務器上設置會話(就像Java一樣)。

設置會話數據:

 $queryuser = $this->user_model->getUser($username, sha1($password));
        if(!empty($queryuser) && count($queryuser) > 0) {
            $user = array('islogin'=>true, 'userid'=>$username, 'nickname'=>$queryuser['nickname'], 'status'=>$queryuser['status']);
            $this->session->set_userdata('user', $user);

獲取會話數據:

 $user = $this->session->userdata('user');

我知道會話的概念,我在兩個瀏覽器上分別進行了測試。

回復:“我是PHP新手,我想知道為什么PHP在客戶端而不是服務器上設置會話(就像Java一樣)。”

HTTP上下文中的會話由兩部分組成:

  1. 存儲在服務器上的數據,瀏覽器無法訪問。
  2. 某種令牌或標識符,通過它可以唯一地標識特定用戶(即特定瀏覽器會話)。 由於HTTP從根本上來說是“無狀態”協議,因此必須將此令牌提供給客戶端,並由客戶端根據每個請求將其發送回去。 盡管通常也可以通過其他(瀏覽器可見的)方式(例如將其添加到所有URL的末尾)進行傳遞,但這通常采用HTTP“ cookie”的形式,這可能是您在此處遇到的問題。

無論您使用哪種語言編寫Web應用程序,上述內容都是正確的。為了方便起見,他們只能隱藏它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM