php表單
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"]; ?> 歲。
表單驗證
應該在任何可能的時候對用戶輸入進行驗證(通過客戶端腳本)。瀏覽器驗證速度更快,并且可以減輕服務器的負載。
如果用戶輸入需要插入數(shù)據(jù)庫,您應該考慮使用服務器驗證。在服務器驗證表單的一種好的方式是,把表單傳給它自己,而不是跳轉到不同的頁面。這樣用戶就可以在同一張表單頁面得到錯誤信息。用戶也就更容易發(fā)現(xiàn)錯誤了。
處理GET請求,實現(xiàn)的功能是輸入姓名后頁面顯示“Hello XXX”, 創(chuàng)建html文件hello.html。
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>歡迎</title> </head> <body> <form action="hello.php" method="get"> 姓名<input name="name" type="text"/> <input type="submit"/> </form> </body> </html>
創(chuàng)建PHP文件hello.php
<?php header("Content-type: text/html; charset=utf-8"); if(isset($_GET['name'])&&$_GET['name']){//如果有值且不為空 echo 'Hello '.$_GET['name']; }else{ echo 'Please input name'; }
處理POST請求,實現(xiàn)一個簡單的加法運算功能, 創(chuàng)建html文件add.html
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>相加</title> </head> <body> <form action="add.php" method="post"> <input name="num1" type="text"/> + <input name="num2" type="text"/> <input type="submit" value="相加"/> </form> </body> </html>
創(chuàng)建PHP文件add.php
<?php if($_POST['num1']&&$_POST['num2']){ echo $_POST['num1']+$_POST['num2']; }else{ echo '請不要空值'; }
?
Post請求把表單數(shù)據(jù)放在http請求體中,并且沒有長度限制
form action=""意思是:form是表單,action是轉向地址,即form表單需要提交到哪里