看板 PHP 關於我們 聯絡資訊
index.php的部分內容 ob_start(); session_start(); session_register("user_login"); $_SESSION["user_login"] = $account; session_register("user_level"); $_SESSION["user_level"] = $rs->fields['level']; echo "<p>get database level > ".$rs->fields['level']."</p>"; echo "<p>get session level > ".$_SESSION["user_level"]."</p>"; header("refresh: 5; url=menu.php"); menu.php的部分內容 ob_start(); session_start(); if ((! session_is_registered("user_login")) or (! session_is_registered("user_level"))){ echo "session not registered"; exit; } else{ echo "<p>你的帳號是".$_SESSION["user_login"]."</p>"; echo "<p>你的level為".$_SESSION["user_level"]."</p>"; } 其他不相關的地方就省略了 假定我輸入的使用者帳號是tony 而在資料庫中level欄位中所取得的值為20 理想的執行結果會是 (轉頁前) get database level > 20 get session level > 20 (轉頁後) 你的帳號是tony 你的level為20 但是實際執行卻是 (轉頁前) get databese level > 20 get session level > 20 (轉頁後) 你的帳號是tony 你的level為 轉頁前可以取得兩個的值 但是轉頁後卻無法取得$_SESSION["user_level"] 如果將 $_SESSION["user_level"] = $rs->fields['level']; 改為 $_SESSION["user_level"] = 123456; 的執行結果卻是 (轉頁前) get database level > 20 get session level > 123456 (轉頁後)_ 你的帳號是tony 你的level為123456 順利取得了SESSION值 請問一下這個的問題是出在哪裡呢? -- 某夜市裡... ◢███◣ 暗!靶心那麼小 如果你願意 我的GAS 將只屬於你 -⊙-⊙— 老闆你欠炸嗎? <──<<< ─────────────◣︶ BOOMOOBOOMψQSWEET 柏油 boyo -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.14.7.104
chph :檢查 $rs->fields['level']是否有資料 09/11 20:28
applerev :index的倒數2和3行即是 09/11 21:03
dumplingman :我比較好奇的是header前有輸出不會有warning嗎? 09/12 00:14
applerev :沒出現呢 09/12 11:34
aquarianboy :有ob_start()啊 :) 09/12 11:40
applerev :樓上的意思是@@? 09/12 13:10
aquarianboy :有php官網可以查不是嗎? :) 09/12 13:41
aquarianboy :喔,我是指回dumplingman說沒warning的那個原因.. 09/12 13:42
arrack :同1F $rs->fields['level'] 有資料嗎? 09/14 03:17
applerev :是指還在index.php的時候嗎? 是的話的確有資料 09/14 23:31