作者 主題: php session 行為變了嗎?  (閱讀 1243 次)

0 會員 與 1 訪客 正在閱讀本文。

dark

  • 俺是博士!
  • *****
  • 文章數: 1491
    • 檢視個人資料
php session 行為變了嗎?
« 於: 2014-05-22 23:11 »
<?php //a1.php
session_start();
$_SESSION['a']="aa";
?>
<a href="b2.php">b2</a>

<?php //a2.php
echo $_SESSION['a'];
?>

第一個視窗開 a1.php , 再進入 a2.php 會出現 echo
再另外新開第二個視窗 , 直接連 a2.php 理當不會出現 echo
理當這才是 session 觀念吧 ...

但今天怎麼試 , 第二新開視窗都像繼承了第一個視窗一樣
查詢 cookies 中的 PHPSESSID 也都沒變
(當然不同瀏覽器正常)


是 session 行為變了 , 還是 browser 行為變了 ?
(ps: 以前使用 session 的確第二視窗會不同 session id 阿)


另外 ..
以前沒使用 cookies 習慣
而以前的印象 , 一個網站可以用 5 個 cookies ?
但剛剛稍微 google 了一下 , 有人說 n 個的 ... 就是沒看到 5 個的
但也還沒找到第二個 cookies 怎麼用 ?

1.
而目前小弟想試試一個 a.php -> b.php 的變數傳遞有哪些方法
不知這樣能不能兩個以上 cookies 同時使用

2.
單就 a -> b  , 能使用兩個 session (在 server 端)
... 理當換一下 session_id() 就好吧 ?

以上 "用途" , "可行性" , "做法" 都還在思考中

不知各位是否有利用 session 或 cookies 做過特別手法的傳遞數值 ?
還請多多指教 , 謝謝!!

hoyo

  • 榮譽博士
  • 俺是博士!
  • *****
  • 文章數: 4025
  • 性別: 男
  • 有需要的時候,學習就不會分階段。
    • 檢視個人資料
    • 樂咖黑電腦學習網
Re: php session 行為變了嗎?
« 回覆 #1 於: 2014-05-23 08:22 »
就 session 使用上的「靈異現象」,我大概只能疑惑的猜,是瀏覽器暫存的問題,

重新測試之前將所有的離線檔案和 cookie 刪除,然後重新開啟瀏覽器吧。

因為 a2.php 沒有 session_start() 是不可能傳遞 session 的 ...

---------

兩個 cookie 傳遞也沒必要,我坐在電腦前面,打開瀏覽器,取得一個 cookie 身份,

如果有「兩個以上的資訊」要傳遞,就類似 a=xxx&b=yyy 或是使用字串拆解就可以

實在沒有也無法搞出兩個 cookie 這種神奇的東西,除非你是 MIB 的雙頭人 ??
受人與魚,不如授人與漁
上海自來水來自海上;倫敦好奇人奇好敦倫

dark

  • 俺是博士!
  • *****
  • 文章數: 1491
    • 檢視個人資料
Re: php session 行為變了嗎?
« 回覆 #2 於: 2014-05-26 10:48 »
不好意思 , 漏打了
a2.php 中有 session_start()

昨天有測試一下
因懷疑 httpd 目前機制是 :
"先 check cookies 的存在 --> 才決定是否為同一 session"
所以試驗使用 http 導向 https
結果就沒出現分別開啟的兩視窗 , 有著相同 $_SESSION 變數

目前仍假定 httpd 的行為如上述

jackmr

  • 可愛的小學生
  • *
  • 文章數: 11
    • 檢視個人資料
    • 數碼維基
Re: php session 行為變了嗎?
« 回覆 #3 於: 2015-03-16 04:31 »
現在瀏覽器都開頁籤而不是新開視窗

可能是這個關係
hi all !