PHP 表單和使用者輸入
在介紹表單之前我們先來了解表單的基本知識點:
#1.表單標籤<form>
<form> 標籤用於為使用者輸入建立HTML 表單。
表單能夠包含 input 元素,例如文字欄位、核取方塊、單一選取方塊、提交按鈕等等。
表單也可以包含 menus、textarea、fieldset、legend 和 label 元素。
表單用於傳輸資料到伺服器。
<form>標籤
必要屬性:
Action,規定當表單提交時,要傳送表單資料到何處。
可選屬性:
#Method,規定如何傳送表單資料。
Name,規定表單的名稱。
Enctype,規定資料在傳送到伺服器之前如何編碼。
2、文字框,使用者的輸入
定義:<input type=”text” name=”wenbenkuang” >
伺服器使用:$_POST['wenbenkuang'];
注意事項:文字方塊是最常見的表單元素,是一個名稱對應一個值的形式。
3、密碼框, 提供使用者輸入密碼的區域。
定義:<input type=”password” name=”mimakuang”>
伺服器使用:$_POST['mimakuang'];
注意事項:密碼框是把文字方塊中的明文使用密文來表示,增加資料安全性,但不能檢查輸入是否正確,所以一班會提供兩個密碼框,來驗證使用者輸入的密碼的一致。
4、隱藏網域, 提供不可見的表單元素。
定義:<input type=”hidden” name=”yincangyu” value=”123”>
伺服器使用:$_POST['yincangyu'] ;
注意事項:隱藏網域是在頁面上看不到的表單元素,我們通常會使用此種方式傳遞id類別的值。
5、複選框,提供選取多個的動作。
定義:<input type=”checkbox” name=”fuxuankuang[]” value=”1” checked=”checked”>
<input type=”checkbox” name=”fuxuankuang[]” value=”2”>
伺服器使用:$_POST['fuxuankuang'];值是一個陣列。
注意事項:我們透過把name屬性設為同一個陣列的方式放置一組複選框的。其中的checked屬性規定複選框的初始狀態是否被選取。
6、單選框,提供在多者選其一的動作。
定義:<input type=”radio” name=”danxuankuang”value=”1” checked=”checked”>
<input type= ”radio” name=”danxuankuang” value=”2”>
#伺服器使用:$_POST['danxuankuang'];值是一個數,不是數組。
注意事項:我們透過把name屬性設為相同的方式放置一組單選框的。其中的checked屬性規定單選框的初始狀態是否被選取。
7、文字域,提供一個大量文字輸入區域。
定義:<textarea name=”wenbenyu”>1234</textarea>
伺服器使用:$_POST['wenbenyu”];
注意事項:文字域是一個雙標籤,我們可以透過cols和rows屬性文字域的可見列和行數。需要使用到文字領域。 ;select name=”liebiao”>
<option value="1">選項1</option>
<option value="2">選項2< /option>
<option value="3" selected="selected" >選項3</option>
<option value="4">選項4</ option>
</select>
伺服器使用:$_POST[“liebiao”];你選取哪一個,他的值就為哪個option的value屬性的值。每個選項值的value屬性要寫到option標籤上。 #也可以透過size屬性控制顯示的條目數。 ” name=”wenianyu”>
伺服器使用:$_FILES['wenjianyu'];得到的是一個含有五個元素的數組,包含上傳檔案的一些基本資訊。
注意事項:若想使用表單上傳文件,則一定要在form標籤中要加入如下屬性<form enctype=“multiplart/form-data”,之後我們透過$_FILES這個全域數組變數取得上傳文件的資訊。
10、重置, 重置按鈕用來恢復表單的初始狀態
定義:<input type=”reset”value =”重置”>
注意事項:重置按鈕是恢復表單的初始值,非常常用的功能。其中的value屬性是規定按鈕上的文字。
11、提交, 提交表單按鈕。
定義:<input type=”submit” name=”submit”value=”提交”>
#注意事項:當點擊此按鈕時,表單被提交到指定頁面。此按鈕可以有name屬性值,一般我們在伺服器端提供判斷$_POST[‘submit’]的值來判斷目前請求是否來自表單提交。
以上內容介紹了表單所包含的內容,作用及注意事項,以下我們就來詳細學習關於表單的具體內容。
PHP 中的 $_GET 和 $_POST 變數用於檢索表單中的信息,例如使用者輸入。
PHP 表單處理
有一點很重要的事情值得注意,當處理HTML 表單時,PHP 能把來自HTML 頁面中的表單元素自動變成可供PHP 腳本使用。
實例
下面的實例包含了一個 HTML 表單,有兩個輸入框和一個提交按鈕。
form.html 文件代碼如下:
<html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> </head> <body> <form action="welcome.php" method="post"> 名字: <input type="text" name="fname"> 年龄: <input type="text" name="age"> <input type="submit" value="提交"> </form> </body> </html>
當使用者填寫完上面的表單並點擊提交按鈕時,表單的資料會被送到名為"welcome.php" 的PHP 文件:
welcome.php 檔案如下所示:
欢迎 <?php echo $_POST["fname"]; ?>!<br> 你的年龄是 <?php echo $_POST["age"]; ?> 岁。
透過瀏覽器存取示範如下: