Rumah > Artikel > pembangunan bahagian belakang > Kemahiran pembangunan PHP: Bagaimana untuk melaksanakan fungsi pengesahan borang
Kemahiran pembangunan PHP: Bagaimana untuk melaksanakan fungsi pengesahan borang
Pengenalan:
Dalam pembangunan web, pengesahan borang adalah bahagian yang sangat penting. Ia boleh memastikan bahawa data yang diserahkan oleh pengguna memenuhi jangkaan dan berkesan mencegah serangan berniat jahat dan masalah yang disebabkan oleh data yang salah. Artikel ini akan memperkenalkan cara menggunakan PHP untuk melaksanakan fungsi pengesahan borang dan menyediakan contoh kod khusus.
1. Pengesahan borang bahagian hadapan:
Sebelum melakukan pengesahan borang di bahagian pelayan, kami biasanya melakukan pengesahan borang bahagian hadapan terlebih dahulu. Pengesahan borang bahagian hadapan boleh memberikan maklum balas tepat pada masanya dan mengurangkan beban pada pelayan. Berikut ialah beberapa kaedah pengesahan borang hadapan yang biasa digunakan:
Pengesahan medan yang diperlukan:
<input type="text" name="username" required>
Dengan menetapkan atribut yang diperlukan, anda boleh memastikan bahawa pengguna mesti mengisi medan tersebut.
Pengesahan format input:
Gunakan jenis input yang disediakan oleh HTML5 untuk mengehadkan format input pengguna. Contohnya:
<input type="email" name="email">
Kod di atas akan memastikan kandungan yang dimasukkan oleh pengguna mematuhi format e-mel.
Pengesahan Peraturan Tersuai:
Tulis peraturan pengesahan tersuai menggunakan JavaScript. Contohnya:
<input type="text" name="age" onblur="validateAge(this.value)"> <script> function validateAge(value) { if (value < 18) { alert("未满18岁,不可注册!"); } } </script>
Kod di atas memanggil fungsi validateAge melalui acara onblur untuk pengesahan umur.
2. Pengesahan borang sisi pelayan:
Pengesahan borang bahagian hadapan hanyalah kaedah pengesahan asas Untuk memastikan ketepatan dan keselamatan data, kami juga perlu melakukan pengesahan borang di bahagian pelayan.
Berikut adalah beberapa kaedah pengesahan borang sebelah pelayan yang biasa digunakan:
Menurut penilaian sama ada untuk menyerahkan:
Pertama, kita perlu menentukan sama ada borang telah diserahkan. Contoh kod berikut menunjukkan keputusan komit asas.
if ($_SERVER["REQUEST_METHOD"] == "POST") { // 表单已提交 // 进行表单验证逻辑 } else { // 表单未提交 // 显示表单页面 }
Pengesahan Medan Diperlukan:
Sahkan dengan menyemak sama ada ruangan yang diperlukan dalam borang itu kosong. Contoh kod berikut menunjukkan cara untuk mengesahkan bahawa nama pengguna dan kata laluan kosong.
if (empty($_POST["username"]) || empty($_POST["password"])) { echo "用户名和密码不能为空!"; }
Pengesahan format data:
Gunakan ungkapan biasa atau fungsi terbina dalam untuk mengesahkan sama ada format data yang dimasukkan oleh pengguna adalah betul mengikut jenis dan had panjang medan. Contoh kod berikut menunjukkan cara untuk mengesahkan bahawa format peti mel adalah betul.
if (!filter_var($_POST["email"], FILTER_VALIDATE_EMAIL)) { echo "邮箱格式不正确!"; }
Pengesahan keselamatan data:
Untuk memastikan keselamatan data, penapisan dan pelarian data diperlukan. Contoh kod berikut menunjukkan cara untuk mencegah serangan suntikan SQL.
$name = $_POST["name"]; $name = mysqli_real_escape_string($conn, $name); $query = "SELECT * FROM users WHERE name='$name'";
Paparan mesej ralat:
Akhir sekali, semasa proses pengesahan, jika ralat ditemui, mesej ralat perlu dipaparkan kepada pengguna. Contoh kod berikut menunjukkan cara memaparkan mesej ralat.
$errors = array(); if (empty($_POST["username"])) { $errors[] = "用户名不能为空!"; } if (empty($_POST["password"])) { $errors[] = "密码不能为空!"; } if (!empty($errors)) { foreach ($errors as $error) { echo $error . "<br>"; } }
Kesimpulan:
Melalui gabungan pengesahan borang hadapan dan pengesahan borang sebelah pelayan, kami boleh melaksanakan fungsi pengesahan borang dengan berkesan. Ini bukan sahaja meningkatkan pengalaman pengguna tetapi juga melindungi pelayan daripada serangan. Saya harap kandungan artikel ini dapat membantu anda, terima kasih kerana membaca!
Atas ialah kandungan terperinci Kemahiran pembangunan PHP: Bagaimana untuk melaksanakan fungsi pengesahan borang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!