[請益] 詭異的session變數問題

看板PHP作者 (那克斯)時間16年前 (2009/12/24 16:38), 編輯推噓2(205)
留言7則, 3人參與, 最新討論串1/1
剛發生了一點bug,研究了好久 session_start(); $tn = 0; if(isset($_GET['tn'])) $tn = $_GET['tn']; else if(isset($_SESSION['tn'])) $tn = $_SESSION['tn']; echo $tn; 像這樣,當 $_SESSION['tn'] 有值時 最後 $tn 一樣是 0 可是當 $_GET['tn'] 有值時 $tn 就會是 $_GET['tn'] 的值 不過如果改成這樣 session_start(); if(isset($_GET['tn'])) $tn = $_GET['tn']; else if(isset($_SESSION['tn'])) $tn = $_SESSION['tn']; else $tn = 0; echo $tn; 最後$tn就會是 $_SESSION['tn'] 的值了 所以我想是因為一般變數名稱如果和 session 陣列 的index名稱一樣會互相影響? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.43.117.233 ※ 編輯: knuckles 來自: 114.43.117.233 (12/24 16:40)

12/24 16:51, , 1F
register_globals 要設定成 off
12/24 16:51, 1F

12/24 16:55, , 2F
register_gloabals的設定是說可以決定要不要把EGPCS變數
12/24 16:55, 2F

12/24 16:55, , 3F
視為全域變數以$NAME的方式去存取
12/24 16:55, 3F

12/24 16:56, , 4F
12/24 16:56, 4F

12/24 17:25, , 5F
看不到$_SESSION['tn']被賦值的情境,還無法確認真正原因.
12/24 17:25, 5F

12/24 18:14, , 6F
喔喔 謝謝 EragonJ 原來是忘了關那個 關了就正常了 ^^||
12/24 18:14, 6F

12/24 18:18, , 7F
測試用的電腦是裝appserv,預設這個是on 囧
12/24 18:18, 7F
文章代碼(AID): #1BCoY5He (PHP)
文章代碼(AID): #1BCoY5He (PHP)