|
PHP入门必读(30) 當然,我們還沒全部講完。畢竟,如果你可以在一個頁面上建立多個表單,為什麼你不能建立跨頁面的多個表單呢? 不幸的是,想用 HTTP 程式碼來從一個頁面傳送資料到另一個頁面並不容易。那是因為在 HTTP 的通訊協定裡面並沒有內建的功能規範所謂的一連串的頁面。 不過,還好,只要透過一點小小的聰明技巧,再加上 PHP 某些便利的函數,我們就可以比較不用花太多力氣,而能突破這個限制。在這一個章節裡面,我們使用的主要的概念是,我們會把所有從上一個頁面的輸入的資料,放在下一個頁面的表單的隱藏變數裡面。因為在當我們的螢幕頁面一頁一頁的更換時,程式碼也跟著在頁面之間傳送資訊, 所以每一個表單都會內含上一個表單的資料。這個方法有點笨拙,不過目前為止這是最簡單的方法 -- 而且它不必用到資料庫或 cookies。 你應該猜得到,我們將延伸使用 $state 變數,來執行這種功能。 其實,這就是為什麼我們剛剛帶你走過與此相關的技巧,而沒有用比較簡單的方式處理在單一頁面的表單。 為了方便起見,讓我們重複使用先前的表單範例。只是這一次,我們會把它們拆成兩個頁面,而非把用戶名稱跟有關乳酪的重要問題放在一個頁面上。 所以,我們會有三個函數而非兩個。此外,我們還會把它們的名字變更,以反映內容的改變。display_form() 現在已經被改名為 display_name()。
|