PHP 表單和用戶輸入
我們?cè)谇懊娴膶W(xué)習(xí)PHP基礎(chǔ)教程的時(shí)候就知道$_GET 和 $_POST 變量用于檢索表單中的信息,比如用戶輸入
那么什么是表單呢?
Web表單的功能就是讓瀏覽者和網(wǎng)站有一個(gè)互動(dòng)的平臺(tái)。表單主要用來在網(wǎng)頁中發(fā)送數(shù)據(jù)到服務(wù)器,例如,你注冊(cè)信息是所使用的表單,當(dāng)你填寫完信息時(shí),你要提交(submit),提交就是將你表單中的內(nèi)容從客戶端瀏覽器傳送到服務(wù)器端,經(jīng)過PHP程序進(jìn)行處理后,再將用戶所需要的信息傳遞回客戶端瀏覽器上,通過獲取用戶的信息,使PHP與Web表單實(shí)現(xiàn)交互。
注釋:表單屬于HTML知識(shí),在我們的HTML教程會(huì)有詳細(xì)的講解
下面讓我們來看看表單是什么樣的吧?
實(shí)例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>PHP中文網(wǎng)</title> </head> <body> <form action="form.php" method="post"> 名字: <input type="text" name="fname"><br> 年齡: <input type="text" name="age"><br> <input type="submit" value="提交"> </form> </body> </html>
上面代碼運(yùn)行結(jié)果如下:
沒錯(cuò),這就是我們說的表單,那么我們將我們填寫完的表單信息發(fā)送到那呢?當(dāng)我們點(diǎn)擊提交的時(shí)候,我們表單中的數(shù)據(jù)就會(huì)以POST 的形式。發(fā)送到form.php這個(gè)頁面。
<?php header("Content-type:text/html;charset=utf-8"); //設(shè)置編碼 echo "歡迎你:".$_POST["fname"] ."<br/>"; echo "你的年齡是:".$_POST['age']; ?>
我們發(fā)送到form.php的運(yùn)行結(jié)果:
歡迎你:liuqi
你的年齡是:18
表單驗(yàn)證
應(yīng)該在任何可能的時(shí)候?qū)τ脩糨斎脒M(jìn)行驗(yàn)證(通過客戶端腳本)。瀏覽器驗(yàn)證速度更快,并且可以減輕服務(wù)器的負(fù)載。
如果用戶輸入需要插入數(shù)據(jù)庫(kù),您應(yīng)該考慮使用服務(wù)器驗(yàn)證。在服務(wù)器驗(yàn)證表單的一種好的方式是,把表單傳給它自己,而不是跳轉(zhuǎn)到不同的頁面。這樣用戶就可以在同一張表單頁面得到錯(cuò)誤信息。用戶也就更容易發(fā)現(xiàn)錯(cuò)誤了。
我們下一節(jié)就來講我們的表單驗(yàn)證