經過 PHP 驗證表單數據
咱們要作的第一件事是經過 PHP 的 htmlspecialchars() 函數傳遞全部變量。
在咱們使用 htmlspecialchars() 函數後,若是用戶試圖在文本字段中提交如下內容:
<script>location.href('http://www.hacked.com')</script>
- 代碼不會執行,由於會被保存爲轉義代碼,就像這樣:
<script>location.href('http://www.hacked.com')</script>
如今這條代碼顯示在頁面上或 e-mail 中是安全的。
在用戶提交該表單時,咱們還要作兩件事:
(經過 PHP trim() 函數)去除用戶輸入數據中沒必要要的字符(多餘的空格、製表符、換行)
(經過 PHP stripslashes() 函數)刪除用戶輸入數據中的反斜槓(\)
接下來咱們建立一個檢查函數(相比一遍遍地寫代碼,這樣效率更好)。
咱們把函數命名爲 test_input()。
如今,咱們可以經過 test_input() 函數檢查每一個 $_POST 變量,腳本是這樣的:
實例 :
php
<?php // 定義變量並設置爲空值 $name = $email = $gender = $comment = $website = ""; if ($_SERVER["REQUEST_METHOD"] == "POST") { $name = test_input($_POST["name"]); $email = test_input($_POST["email"]); $website = test_input($_POST["website"]); $comment = test_input($_POST["comment"]); $gender = test_input($_POST["gender"]); } function test_input($data) { $data = trim($data); $data = stripslashes($data); $data = htmlspecialchars($data); return $data; } ?>