php中兩個網頁之間的變數傳送
[ 作者: 豆牙齒添加時間: 2001-5-28 22:53:08 ]
在網站設計用戶中,我們常常用到登陸這一方法,在登陸後,一般的網站都會根據不同的用戶來給定不同的頁面,在鏈接到該站的一個新的網頁或者打開一張新網頁時,我們也會看到用戶的信息能夠被記住,現在尤其常用的是,登陸後鏈接或打開該站的其它網頁都會看到諸如"XXX,晚上好"之類的問候語,這些當然都是在登陸後變量傳送的結果,在我做個人首頁的過程中,曾嘗試幾種變數傳送的方法,現寫出來與大家探討一下。
一、這是最笨的方法,也是我最初沒有接觸session、cookie想出來的方法。這種方法就是把待傳遞的變數用表單的方式再次傳送,例如在使用者登陸後,把他的訊息如$username、$id等等訊息用表單傳送到下一張網頁,當然,很多情況,是諸如text、option等等框不想再被看到的話,可以採用隱藏的輸入域。下面是一個實例,假設$username是經過上頁為驗證身份發送到本頁並且在本頁經過驗證的變量,想傳遞到下一頁中去,那麼可以建立文件test4.php:
$username ="張小明";?>
建立test5.php:
打開apache伺服器,輸入http://127.0.0.1/test4.php在頁面的按鈕上點擊,會發現新出的網頁上$username的值已經傳送過來了。
當然這種方法的弱點是很明顯的,它還要再使用一個表單,而且在test5.php的網頁上想要刷新的話還要重新發送,這顯然是不太友好的。
二、使用session。後來,我找了一些關於session的文章,覺得這時傳遞變數的一個很好的方法。以下舉例來說明:
建立一個新檔案test6.php:
session_register("username"); //註冊一個session變數
$username="張小明"; //要傳遞的變數值
echo "
去看看";
?>
建立test7.php:
echo "你好,$username,歡迎你的光臨!";?> //顯示傳遞過來的變數
使用這種方法的時候要注意:應該放在檔案的最前面,即""前面不應有任何內容,包括空格,這是我調試多次未成功找出的原因。
這個變數只能在目前開啟的瀏覽器中傳遞,若要在新開啟的視窗中也能傳遞,剛要按下面的方法來做:
檔案:test8.php
session_register ("username");
$username="張小明";
echo "
去看看"; //將目前的session的id值傳給下一個視窗。
?>
文件test7.php
echo "你好,$username,歡迎你的光臨!";?>
三,透過cookie。還是透過範例說明:
建立檔案test9.php
echo "
去看看";?>
文件test5.php
建立test5.php:
🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜