之類的 HTML 字符會被替換為 < 和 > 。這樣可防止攻擊者通過在表單中注入 HTML 或 JavaScript 代碼(跨站點腳本攻擊)對代碼進行利用">

通過使用 htmlspecialchars() 函數能夠避免 $_SERVER[“PHP_SELF”] 被利用。

表單代碼是這樣的:

<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">

htmlspecialchars() 函數把特殊字符轉換為 HTML 實體。現在,如果用戶試圖利用 PHP_SELF 變量,會導致如下輸出:

<form method="post" action="test_form.php/"><script>alert('hacked')</script>">

無法利用,沒有危害!

通過 PHP 驗證表單數據

我們要做的第一件事是通過 PHP 的 htmlspecialchars() 函數傳遞所有變量。

在我們使用 htmlspecialchars() 函數后,如果用戶試圖在文本字段中提交以下內容:

<script>location.href('http://www.hacked.com')</script>

– 代碼不會執行,因為會被保存為轉義代碼,就像這樣:

現在這條代碼顯示在頁面上或 e-mail 中是安全的。

在用戶提交該表單時,我們還要做兩件事:

  1. (通過 PHP trim() 函數)去除用戶輸入數據中不必要的字符(多余的空格、制表符、換行)
  2. (通過 PHP stripslashes() 函數)刪除用戶輸入數據中的反斜杠(\)

接下來我們創建一個檢查函數(相比一遍遍地寫代碼,這樣效率更好)。

我們把函數命名為 test_input()。

現在,我們能夠通過 test_input() 函數檢查每個 $_POST 變量,腳本是這樣的:

實例

<?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;
}
?>

請注意在腳本開頭,我們檢查表單是否使用 $_SERVER[“REQUEST_METHOD”] 進行提交。如果 REQUEST_METHOD 是 POST,那么表單已被提交 – 并且應該對其進行驗證。如果未提交,則跳過驗證并顯示一個空白表單。

不過,在上面的例子中,所有輸入字段都是可選的。即使用戶未輸入任何數據,腳本也能正常工作。

下一步是制作必填輸入字段,并創建需要時使用的錯誤消息。

贊(0)
聲明:本網站發布的內容(圖片、視頻和文字)以原創、轉載和分享網絡內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。郵箱:3140448839@qq.com。本站原創內容未經允許不得轉載,或轉載時需注明出處:三五互聯知識庫 » PHP表單驗證功能

登錄

找回密碼

注冊

主站蜘蛛池模板: 中文字幕亚洲国产精品| 亚洲区中文字幕日韩精品| 丰满少妇在线观看网站| 久久伊99综合婷婷久久伊| 秋霞电影院午夜无码免费视频| 平远县| 久久久久国产精品人妻| 精品国产亚洲一区二区三区在线观看| 亚洲成人精品一区二区中| 日本中文字幕有码在线视频| 久久亚洲国产精品久久| 男人的天堂va在线无码| 国产精品va无码一区二区| 色欲久久综合亚洲精品蜜桃| 久久96热在精品国产高清 | 性欧美丰满熟妇xxxx性| 人妻系列无码专区无码中出| 麻豆成人av不卡一二三区| 在线播放深夜精品三级| 亚洲日韩成人无码不卡网站| 久久综合久中文字幕青草| 亚洲日本韩国欧美云霸高清| 在线日韩日本国产亚洲| 午夜高清福利在线观看| 国产精品永久免费无遮挡| 久章草在线精品视频免费观看| 办公室强奷漂亮少妇视频| 97国产精品人人爽人人做| 亚洲岛国成人免费av| 人妻中文字幕一区二区视频| 亚洲综合另类小说色区色噜噜| 国产免费午夜福利在线播放| 中文字幕 欧美日韩| 国日韩精品一区二区三区| 白色丝袜国产在线视频| 激情在线网| 久爱www人成免费网站| 狠狠色噜噜狠狠狠狠777米奇| 国产午夜精品在人线播放| 女人扒开腿让男人桶到爽| 亚洲全乱码精品一区二区|