PHP 表單和用戶輸入
PHP?表單和用戶輸入
?
介紹表單之前我們先來了解一下關(guān)于表單的基本知識點:
?
1.表單標簽<form>
<form> 標簽用于為用戶輸入創(chuàng)建 HTML 表單。
?
表單能夠包含 input 元素,比如文本字段、復(fù)選框、單選框、提交按鈕等等。
?
表單還可以包含 menus、textarea、fieldset、legend 和 label 元素。
?
表單用于向服務(wù)器傳輸數(shù)據(jù)。
?
<form>標簽
必要屬性:
Action,規(guī)定當表單提交時,向何處發(fā)送表單數(shù)據(jù)。
?
可選屬性:
Method,規(guī)定如何發(fā)送表單數(shù)據(jù)。
Name,規(guī)定表單的名稱。
Enctype,規(guī)定數(shù)據(jù)發(fā)送到服務(wù)器之前如何編碼。
?
2、文本框,用戶的輸入
?
定義:<input type=”text” name=”wenbenkuang” >
?
服務(wù)器使用:$_POST[‘wenbenkuang’];
?
注意事項:文本框是最常見的表單元素,是一個名對應(yīng)一個值的形式。
?
3、密碼框, 提供用戶輸入密碼的區(qū)域。
?
定義:<input type=”password” name=”mimakuang”>
服務(wù)器使用:$_POST[‘mimakuang’];
注意事項:密碼框是把文本框中的明文使用密文來表示,增加數(shù)據(jù)安全性,但不能檢查輸入是否正確,所以一班會提供兩個密碼框,來驗證用戶輸入的密碼的一致。
?
4、隱藏域, 提供不可見的表單元素。
?
定義:<input type=”hidden” name=”yincangyu” value=”123”>
服務(wù)器使用:$_POST[‘yincangyu’];
注意事項:隱藏域是在頁面上看不到的表單元素,我們通常使用此種方式傳遞id類的值。
?
5、復(fù)選框,提供選取多個的操作。
?
定義:<input type=”checkbox” name=”fuxuankuang[]” value=”1” checked=”checked”>
<input type=”checkbox” name=”fuxuankuang[]” value=”2”>
服務(wù)器使用:$_POST[‘fuxuankuang’];值是一個數(shù)組。
?
注意事項:我們通過把name屬性設(shè)為同一個數(shù)組的方式放置一組復(fù)選框的。其中的checked屬性規(guī)定復(fù)選框的初始狀態(tài)是否被選中。
?
6、單選框,提供在多者選其一的操作。
?
定義:<input type=”radio” name=”danxuankuang” value=”1” checked=”checked”>
<input type=”radio” name=”danxuankuang” value=”2”>
服務(wù)器使用:$_POST[‘danxuankuang’];值是一個數(shù),不是數(shù)組。
注意事項:我們通過把name屬性設(shè)為相同的方式放置一組單選框的。其中的checked屬性規(guī)定單選框的初始狀態(tài)是否被選中。
?
7、文本域,提供一個大量文字輸入?yún)^(qū)域。
?
定義:<textarea name=”wenbenyu”>1234</textarea>
服務(wù)器使用:$_POST[‘wenbenyu”];
?
注意事項:文本域是一個雙標簽,我們可以通過cols和rows屬性文本域的可見列和行數(shù)。控制他的寬高。當我們需要輸入一大段文字的時候需要用到文本域。
?
8、列表,提供一個有限列表供選擇。
?
定義:
<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>
?
服務(wù)器使用:$_POST[“l(fā)iebiao”];你選中哪個,他的值就為哪個option的value屬性的值。
?
注意事項:select是一個雙標簽。他的每個選項通過<option>標簽來實現(xiàn)。其中name屬性要寫到select標簽上,而代表每個選項值的value屬性要寫到option標簽上。我們可以通過select標簽的multiple屬性來控制是否可以多選:
<select multiple=”multiple”>
還可以通過size屬性控制顯示的條目數(shù)。
9、文件域,用來提供上傳文件元素
?
定義:<input type=”file” name=”wenianyu”>
服務(wù)器使用:$_FILES[‘wenjianyu’];得到的是一個含有五個元素的數(shù)組,包含上傳文件的一些基本信息。
?
注意事項:若想使用表單上傳文件,則一定要在form標簽中要加入如下屬性<form enctype=“multiplart/form-data”,之后我們通過$_FILES這個全局數(shù)組變量取得上傳文件的信息。
?
10、重置, 重置按鈕用來恢復(fù)表單的初始狀態(tài)
?
定義:<input type=”reset” value=”重置”>
?
注意事項:重置按鈕是恢復(fù)表單的初始值,非常常用的一個功能。其中的value屬性是規(guī)定按鈕上的文字。
?
11、提交, 提交表單按鈕。
?
定義:<input type=”submit” name=”submit” value=”提交”>
?
注意事項:當點擊此按鈕時,表單被提交到指定頁面。此按鈕可以有name屬性值,一般我們在服務(wù)器端提供判斷$_POST[‘submit’]的值來判斷當前請求是否來自表單提交。
?
以上內(nèi)容介紹了表單所包含的內(nèi)容,作用及注意事項,下面我們就來詳細學(xué)習(xí)關(guān)于表單的具體內(nèi)容。
PHP 中的 $_GET 和 $_POST 變量用于檢索表單中的信息,比如用戶輸入。
PHP 表單處理
有一點很重要的事情值得注意,當處理 HTML 表單時,PHP 能把來自 HTML 頁面中的表單元素自動變成可供 PHP 腳本使用。
實例
下面的實例包含了一個 HTML 表單,帶有兩個輸入框和一個提交按鈕。
form.html?文件代碼如下:
<html> <head> <meta charset="utf-8"> <title>php中文網(wǎng)(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>
當用戶填寫完上面的表單并點擊提交按鈕時,表單的數(shù)據(jù)會被送往名為 "welcome.php" 的 PHP 文件:
welcome.php 文件如下所示:
歡迎 <?php echo $_POST["fname"]; ?>!<br> 你的年齡是 <?php echo $_POST["age"]; ?> 歲。
通過瀏覽器訪問演示如下:
我們將在下一章中講解 PHP 中的 $_GET 和 $_POST 變量。