之類的 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表單驗證功能

登錄

找回密碼

注冊

主站蜘蛛池模板: 亚洲午夜福利精品无码不卡| 天天躁夜夜躁天干天干2020| 国产精品一区二区中文| 国产精品亚洲中文字幕| 一个人看的www视频免费观看| 精品午夜福利短视频一区| 少妇被无套内谢免费看| 性姿势真人免费视频放| 在线天堂最新版资源| 开心五月激情综合久久爱| 亚洲一区二区精品动漫| 亚洲精品漫画一二三区| 2019香蕉在线观看直播视频| 三明市| 丰满少妇在线观看网站| 久久亚洲日韩精品一区二区三区| 亚洲悠悠色综合中文字幕| 精品国产迷系列在线观看| 部精品久久久久久久久| 少妇爽到呻吟的视频| 亚洲中文字幕精品第一页| 免费国产黄线在线观看| 日韩有码中文字幕国产| 国产亚洲精品久久久久秋霞| 中文字幕久久人妻熟人妻| 亚洲欧美电影在线一区二区| 美女扒开尿口让男人桶| 成人欧美日韩一区二区三区| 国产视频有码字幕一区二区| 色综合AV综合无码综合网站| 性视频一区| 国产精品九九久久精品女同| 亚洲国产精品一区二区第一页| 和艳妇在厨房好爽在线观看| 成人午夜污一区二区三区| 国产自拍一区二区三区在线| 毛片亚洲AV无码精品国产午夜| 亚洲AV高清一区二区三区尤物| 日韩精品一区二区亚洲专区| 2019nv天堂香蕉在线观看| 和硕县|