新聞中心
這篇文章主要介紹“PHP表單輸入與驗證的方法是什么”,在日常操作中,相信很多人在PHP表單輸入與驗證的方法是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”PHP表單輸入與驗證的方法是什么”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
成都創(chuàng)新互聯(lián)專注于工布江達網站建設服務及定制,我們擁有豐富的企業(yè)做網站經驗。 熱誠為您提供工布江達營銷型網站建設,工布江達網站制作、工布江達網頁設計、工布江達網站官網定制、成都微信小程序服務,打造工布江達網絡公司原創(chuàng)品牌,更為您提供工布江達網站排名全網營銷落地服務。
在之前的文章中我們已經了解了PHP的基礎,其中就有$_GET
和 $_POST
變量,它們用來檢索表單中的信息,其中需要我們注意的知識點就是PHP表單用戶輸入和表單驗證。那接下來我們就來看一下PHP中表單輸入與表單驗證的相關知識吧。
PHP表單和用戶輸入
想要去了解PHP表單和用戶輸入,首先我們要明白什么是表單。Web表單準確來說算是一個互動平臺,主要的功能就是讓瀏覽者和網站有一個互動的平臺。表單主要就是在網頁中用來發(fā)送數(shù)據(jù)到服務器。
例如,注冊信息時使用到的表單,當你填寫完信息時需要提交,這時候提交就是將你注冊時表單上的內容從客戶端瀏覽器傳送到服務器端,再經過PHP程序進行處理后,再將用戶所需要的信息傳遞回到客戶端瀏覽器上,通過獲取用戶的信息,使得PHP與Web表單實現(xiàn)交互。就是提供了這么一個互動的平臺。
接下來我們通過示例來看一下表單,示例如下:
創(chuàng)新互聯(lián)
其中需要我們注意的是表單屬于HTML的知識,更多的相關知識,大家可以點擊《HTML教程》進行學習,上述示例的運行結果:
這便是我們所說的表單,那么我們在其中填寫的信息也就是表單信息會發(fā)送到哪里呢?當我們點擊提交的時候,表單中的數(shù)據(jù)就會以POST的形式,發(fā)送到form.php這個頁面。
"; echo "你的年齡是:".$_POST['age']; ?>
我們發(fā)送到from.php的運行結果如下:
當用戶輸入完成后,這時候就需要對表單進行驗證了,應該在任何可能的時候通過客戶端腳本對用戶輸入進行驗證。瀏覽器驗證速度更快,并且可以減輕服務器的負載。
如果用戶輸入需要插入數(shù)據(jù)庫,您應該考慮使用服務器驗證。在服務器驗證表單的一種好的方式是,把表單傳給它自己,而不是跳轉到不同的頁面。這樣用戶就可以在同一張表單頁面得到錯誤信息。用戶也就更容易發(fā)現(xiàn)錯誤了。那么接下來我們一起來看一下表單驗證的相關知識吧。
PHP表單驗證
在處理PHP表單時我們需要考慮安全性。我們將展示PHP表單數(shù)據(jù)安全處理,為了防止黑客及垃圾信息我們需要對表單進行數(shù)據(jù)安全驗證。接下來我們通過實例來看一下表單中的必須與可選文本字段,單選按鈕,及提交按鈕。
示例如下:
PHP.cn PHP 表單驗證實例
輸出結果:
其中我們需要注意的是不同的字段有不同的驗證規(guī)則,上述示例中不同字段的驗證規(guī)則如下:
名字的驗證規(guī)則是必須的,并且只能包含字母和空格。E-mail的驗證規(guī)則是必須的,其中必須是一個有效的電子郵件地址(包含'@'和'.')。網址的驗證規(guī)則的是可選的,并且如果存在,它必須包含一個有效的URL。備注的驗證規(guī)則是可選的,多行輸入字段。性別的驗證規(guī)則是必須的,必須選擇一個。
通過上述示例我們再來看一下其中用到的知識:
$_SERVER["PHP_SELF"]
變量
$_SERVER["PHP_SELF"]
是一種超全局變量,它返回當前執(zhí)行腳本的文件名。因此,$_SERVER["PHP_SELF"]
將表單數(shù)據(jù)發(fā)送到頁面本身,而不是跳轉到另一張頁面。這樣,用戶就能夠在表單頁面獲得錯誤提示信息。
htmlspecialchars()
函數(shù)
htmlspecialchars()
函數(shù)把特殊字符轉換為 HTML 實體。這意味著 < 和 > 之類的 HTML 字符會被替換為 < 和 > 。這樣可防止攻擊者通過在表單中注入 HTML 或 JavaScript 代碼(跨站點腳本攻擊)對代碼進行利用。
其中我們需要注意的是:
$_SERVER["PHP_SELF"]
變量能夠被黑客利用,如何避免 $_SERVER["PHP_SELF"]
被利用?
$_SERVER["PHP_SELF"]
可以通過 htmlspecialchars()
函數(shù)來避免被利用。
form 代碼如下所示:
您輸入的內容是:"; echo $name; echo ""; echo $email; echo "
"; echo $website; echo "
"; echo $comment; echo "
"; echo $gender; ?>
輸出結果:
其中我們需要注意的是:
我們在執(zhí)行以上腳本時,會通過$_SERVER["REQUEST_METHOD"]
來檢測表單是否被提交 。如果 REQUEST_METHOD
是 POST, 表單將被提交 - 數(shù)據(jù)將被驗證。如果表單未提交將跳過驗證并顯示空白。在以上實例中使用輸入項都是可選的,即使用戶不輸入任何數(shù)據(jù)也可以正常顯示。
到此,關于“PHP表單輸入與驗證的方法是什么”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注創(chuàng)新互聯(lián)網站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
本文標題:PHP表單輸入與驗證的方法是什么
文章起源:http://fisionsoft.com.cn/article/pggdoc.html