PHP ການກວດກາຟອມ - ພາກສ່ວນການເຂົ້າເມືອງທີ່ຕ້ອງມີຄວາມຄຸມຄອງ

ບົດນີ້ສະແດງວິທີທີ່ເຮັດພາກສ່ວນການເຂົ້າເມືອງທີ່ຕ້ອງມີຄວາມຄຸມຄອງ ແລະ ຂໍ້ບັນຫາທີ່ຈະຕ້ອງມີຖ້າຈະຕ້ອງມີ.

PHP - ພາກສ່ວນຂອງການເຂົ້າເມືອງ

ຈາກກົດລະບຽບການກວດກາທີ່ຜ່ານມາພວກເຮົາໄດ້ເຫັນ "Name", "E-mail" ແລະ "Gender" ພາກສ່ວນ. ພາກສ່ວນທີ່ພວກເຮົາມີຈະບໍ່ວ່າງຫຍັງ ແລະ ຕ້ອງມີທີ່ຍັງມີຢູ່ໃນຟອມ HTML.

ພາກສ່ວນ ກົດລະບຽບການກວດກາ
ຊື່ ສະຫງົບ. ຕ້ອງມີທີ່ຍັງມີຢູ່ອີກອີກພາສາແລະສານພັກ.
ອີເມວ ສະຫງົບ. ຕ້ອງມີທີ່ຍັງມີຢູ່ວິທີສີເລືອກທີ່ບັນຈຸ @ ແລະ .
ເວັບໄຊ ສາມາດເລືອກໄດ້. ຖ້າຄົງເລືອກຈະຕ້ອງມີທີ່ຍັງມີຢູ່ URL.
ຄຳຄິດເຫັນ ສາມາດເລືອກໄດ້. ພາກສ່ວນຂອງຂໍ້ມູນທີ່ສາມາດເລືອກໄດ້ (ທໍນສັບ).
ພາສານິຍົມ ສະຫງົບ. ຕ້ອງເລືອກຢ່າງໜຶ່ງ.

ໃນວັນນະຄັດທີ່ຜ່ານມາທຸກພາກສ່ວນຂອງຂໍ້ມູນແມ່ນສາມາດເລືອກໄດ້.

ໃນລະຫັດການລະບຸລະບຽບດ້ານຫັນໃຫຍ່ພວກເຮົາໄດ້ເພີ່ມຫຼາຍຄວາມປ່ຽນແປງໃໝ່: $nameErr, $emailErr, $genderErr ແລະ $websiteErr. ຄວາມປ່ຽນແປງທີ່ພວກເຮົາມີຈະບັນທຶກຂໍ້ບັນຫາຂອງພາກສ່ວນທີ່ຖືກຮຽກຮ້ອງ. ພວກເຮົາຍັງໄດ້ເພີ່ມຄຳສັ່ງ if else ສຳລັບຄວາມປ່ຽນແປງ $_POST. ຄຳສັ່ງນີ້ກວດກາວ່າຄວາມປ່ຽນແປງ $_POST ຈະບໍ່ວ່າງຫຍັງ (ຜ່ານຫົວວິທີ PHP empty()). ຖ້າບໍ່ວ່າງຫຍັງຈະບັນທຶກຂໍ້ບັນຫາໃນຄວາມປ່ຽນແປງບັນຫາທີ່ແຕກຕ່າງກັນ. ຖ້າມີຫຍັງຈະສົ່ງຂໍ້ມູນທີ່ຜູ້ນຳໃຊ້ສົ່ງໄປຜ່ານຫົວວິທີ test_input():

<?php}}
// ການສະເໜີພັດທະນາກົດລະບຽບແລະການກະຕຸບຄູ່ງຄວາມສົງໃສ
$nameErr = $emailErr = $genderErr = $websiteErr = "";
$name = $email = $gender = $comment = $website = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
  if (empty($_POST["name"])) {
    $nameErr = "Name is required";
  } else {
    $name = test_input($_POST["name"]);
  }
  if (empty($_POST["email"])) {
    $emailErr = "Email is required";
  } else {
    $email = test_input($_POST["email"]);
  }
  if (empty($_POST["website"])) {
    $website = "";
  } else {
    $website = test_input($_POST["website"]);
  }
  if (empty($_POST["comment"])) {
    $comment = "";
  } else {
    $comment = test_input($_POST["comment"]);
  }
  if (empty($_POST["gender"])) {
    $genderErr = "Gender is required";
  } else {
    $gender = test_input($_POST["gender"]);
  }
}
?>

PHP - ສະແດງຂໍ້ບັນຫາຜິດພາສາ

ໃນ ພັດທະນາຮູບແບບ HTML, ພວກເຮົາຈະເພີ່ມການຫຼັກກະຕຸບຄວາມສົງໃສພາຍຫຼັງພື້ນຖານທີ່ຖືກຮຽກຮ້ອງ. ຖ້າຈະຕ້ອງ, ຈະສ້າງຂໍ້ບັນຫາຜິດພາດຢ່າງພູມພາບ (ຖ້າຜູ້ນຳໃຊ້ບໍ່ໄດ້ບັນທຶກພື້ນຖານທີ່ຕ້ອງການແລະພະຍາຍາມຍິນຍອມອອກ):

ຄວາມຈິງ

<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
ຊື່: <input type="text" name="name">
<span class="error">* <?php echo $nameErr;?></span>
<br><br>
E-mail:
<input type="text" name="email">
<span class="error">* <?php echo $emailErr;?></span>
<br><br>
Website:
<input type="text" name="website">
<span class="error"><?php echo $websiteErr;?></span>
<br><br>
<label>Comment: <textarea name="comment" rows="5" cols="40"></textarea></label>
<br><br>
Gender:
<input type="radio" name="gender" value="female">Female
<input type="radio" name="gender" value="male">Male
<span class="error">* <?php echo $genderErr;?></span>
<br><br>
<input type="submit" name="submit" value="Submit"> 
</form>

ການດຳເນີນການພາບລະອຽດ

ຕໍ່ມາແມ່ນການກວດກາຂໍ້ມູນການເຂົ້າມື, ຄືວ່າ “ມີຊື່ຫົວຂໍ້ຕາມມີພຽງອັກສະນະອີກດຽວແລະອາກາດຫົວໄປຫາ?”, ແລະ “ມີສະຖານນີອີເມວມີສິນລະບົບຂອງອີເມວທີ່ມີຈຳກັດຫຼືບໍ່?”, ແລະ ຖ້າມີການບັນທຶກຂອງສະຖານນີເວັບໄຊ,“ສະຖານນີນັ້ນມີສິນລະບົບທີ່ມີຈຳກັດຫຼືບໍ່?”.