php中兩個網頁之間的變數傳送 (轉)

gugu99發表於2008-05-12
php中兩個網頁之間的變數傳送 (轉)[@more@]
中兩個網頁之間的變數傳送


[ 作者: 豆牙齒   新增時間: 2001-5-28 22:53:08 ]


在網站設計中,我們常常用到登陸這一方法,在登陸後,一般的網站都會根據不同的使用者來給定不同的頁面,在連結到該站的一個新的網頁或者開啟一張新網頁時,我們也會看到使用者的資訊能夠被記住,現在尤其常用的是,登陸後連結或開啟該站的其它網頁都會看到諸如"XXX,晚上好"之類的問候語,這些當然都是在登陸後變數傳送的結果,在我做個人主頁的過程中,曾嘗試幾種變數傳送的方法,現寫出來與大家探討一下。
 一、這是最笨的方法,也是我最初沒有接觸session、cookie想出來的方法。這種方法就是把待傳遞的變數用表單的方式再次傳送,比如在使用者登陸後,把他的資訊如$username、$id等等資訊用表單傳送到下一張網頁,當然,很多情況,是諸如text、option等等框體不想再被看到的話,可以採用隱藏的輸入域。下面是一個例項,假設$username是經過上頁為驗證身份傳送到本頁並且在本頁經過驗證的變數,想傳遞到下一頁中去,那麼可以建立test4.php:
$username="張小明";?>




建立test5.php:

開啟,輸入在頁面的按鈕上點選,會發現新出的網頁上$username的值已經傳送過來了。
當然這種方法的弱點是很明顯的,它還要再使用一個表單,而且在test5.php的網頁上想要重新整理的話還要重新傳送,這顯然是不太友好的。

 二、使用session。後來,我查詢了一些關於session的文章,覺得這時傳遞變數的一種非常好的方法。下面透過舉例子來說明:
建立一個新檔案test6.php:
初始化一個session
session_register("username"); //註冊一個session變數
$username="張小明"; //要傳遞的變數值
echo "去看看";
?>
建立test7.php:
初始化一個session
echo "你好,$username,歡迎你的光臨!";?>     //顯示傳遞過來的變數
使用這種方法的時候要注意:應該放在檔案的最前面,即""前面不應有任何內容,包括空格,這是我多次未成功找出的原因。
這個變數只能在當前開啟的中傳遞,若要在新開啟的視窗中也能傳遞,剛要按下面的方法來做:
檔案:test8.php
session_register("username");
$username="張小明";
echo "去看看";   //將當前的session的id值傳給下一個視窗。
?>
檔案test7.php
echo "你好,$username,歡迎你的光臨!";?>

 三,透過cookie。還是透過例子說明:
建立檔案test9.php
echo "去看看";?>
檔案test5.php
建立test5.php:


以上是我在設計網頁及參考一些文章得出的方法,這裡注重的時介紹傳遞方法,而不是session和cookie的介紹,兩者具體的使用方法別的高手已經介紹多次,我就不在這裡班門弄斧了。如果文章發表後我又發現錯誤的話,會在下面的"發表意見"欄中給出改正方法,謝謝瀏覽。


   
相關內容:

- /getc/data/200105/2400244201.htm">PHP中利用GD輸出漢字例項
-
- 技術構造服務
- 建構強力網站
-

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10748419/viewspace-1003901/,如需轉載,請註明出處,否則將追究法律責任。

相關文章