[請益] session傳值問題

看板PHP作者 (嚕嚕米)時間19年前 (2006/09/12 15:09), 編輯推噓5(504)
留言9則, 2人參與, 最新討論串1/3 (看更多)
想請教一下大家 目前我用了兩個session變數 分別是 $_SESSION['level']; $_SESSION['organization']; 這兩個變數是在使用者登入後,用來儲存身份等級及所屬處室用的 ======問題來了======= 現在我碰到的問題是 登入後 我按了其他的連結 當我echo $_SESSION['level']時都沒有問題 可是只要echo $_SESSION['organization']就有bug 單純echo $_SESSION['organization'] OK!! 但是加上後面的程序碼之後就不顯示了 甚至是第一次連結過去還可以照常顯示 但按了重新整理 $_SESSION['organization']的內容就不見了 我有檢查過是不是session_start()、session_register()的問題 但似乎也不是錯在這 猜想不到問題到底會是出在哪裡 所以想請教一下有經驗的高手指點一下 附上有問題的網頁原始碼.. login.php //在此宣告兩個session變數的內容 ==== <?php session_start(); include("db.php"); //開啟資料庫 $id=$_POST["id"]; $ps=$_POST["password"]; $rr=mysql_query("select * from user Where id='$id' and password='$ps'") ; $total=mysql_num_rows($rr); if($total<1){ echo "帳號或密碼錯誤!"; }else{ list($no,$id,$password,$name,$level,$class)=mysql_fetch_row($rr); $_SESSION['level']=$level; $_SESSION['organization']=$class; echo $_SESSION['level']; //自我測試session是否可運作-->>OK echo $_SESSION['organization']; //自我測試session是否可運作-->>OK include("index.php"); } ?> index.php //登入後的主選單,接下來的動作是要到news/news.php裡去新增公告 ===== <form name="form1" method="post"> 管理者首頁 <br> <a href="news/news.php">最新公告</a> <br> </form> news.php ===== <?php session_start(); //session_register(); echo $_SESSION['level']; //測試呼叫session-->OK echo $_SESSION['organization']; //測試呼叫session-->沒出現 改成$_SESSION["organization"]後第一次連結會出現 但重新整理後又消失 include("../db.php"); $result=mysql_query("select * from news order by no desc"); ?> <form name="form1" method="post"> <center> <table border=1> <tr><td>公告日期</td><td>公告主旨</td><td>公告單位</td></tr> <? while(list($no,$object,$message,$connect,$organization,$date,$download)=mysql_fetch_row($result)){ echo "<tr><td>$date</td><td><a href=news_show.php?no=$no target=_blank>$object</a></td><td>$organization</td></tr>"; } if($_SESSION['level']==2){ echo "<a href=news_create.php>新增公告</a>"; echo $_SESSION['organization'];<---測試呼叫session-->沒出現 } ?> </table> </form> --- 麻煩大家提供寶貴的意見了..謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.111.141.249

09/12 15:38, , 1F
你要不要把全部['']改成雙引號呢? 試看看(我也是新手@@)
09/12 15:38, 1F

09/12 15:42, , 2F
或是把每個有用到session的部分都加上ob_start()?
09/12 15:42, 2F

09/13 09:15, , 3F
還是同樣的結果 ~"~a
09/13 09:15, 3F

09/14 01:00, , 4F
看完你的程式後你的FORM要不要刪掉試看看呢?
09/14 01:00, 4F

09/14 01:00, , 5F
好像沒用到的感覺
09/14 01:00, 5F

09/14 08:41, , 6F
我找到解決方法了 只是原由還是不太清楚
09/14 08:41, 6F

09/14 08:42, , 7F
我把check.php裡的$_SESSION['organization']=$class
09/14 08:42, 7F

09/14 08:43, , 8F
改成$_SESSION['class']=$class就行了..~"~a
09/14 08:43, 8F

09/14 08:44, , 9F
謝謝你的幫忙^^~
09/14 08:44, 9F
文章代碼(AID): #151bqP2j (PHP)
文章代碼(AID): #151bqP2j (PHP)