PHP majburiy maydonlar


Ushbu bobda kiritish maydonlarini qanday talab qilish va kerak bo‘lsa xato xabarlarini yaratish ko‘rsatilgan.


ULASHISH

PHP - Majburiy maydonlar

Oldingi sahifadagi tekshirish qoidalari jadvalidan biz "Ism", "E-mail" va "Gender" maydonlari talab qilinishini ko‘ramiz. Ushbu maydonlar bo‘sh bo‘lishi mumkin emas va ular HTML formasida to‘ldirilishi kerak.

Field Validation Rules
Name Majburiy. + Faqat harflar va bo‘sh joy bo‘lishi kerak
E-mail Majburiy. + Yaroqli elektron pochta manzili bo‘lishi kerak (@ va . bilan)
Website Ixtiyoriy. Agar mavjud bo‘lsa, unda yaroqli URL bo‘lishi kerak
Comment Optional. Multi-line input field (textarea)
Gender Majburiy. Birini tanlash kerak

Oldingi bobda barcha kiritish maydonlari ixtiyoriy edi.

Quyidagi kodda biz ba’zi yangi o‘zgaruvchilar qo‘shdik: $nameErr, $emailErr, $genderErr va $websiteErr. Ushbu xato o‘zgaruvchilari kerakli maydonlar uchun xato xabarlarini saqlaydi. Har bir $_POST o‘zgaruvchisi uchun if else iborasini ham qo‘shdik. Bu $_POST o‘zgaruvchisi bo‘sh yoki yo‘qligini tekshiradi (PHP empty() funksiyasi bilan). Agar u bo‘sh bo‘lsa, xato xabari turli xil xato o‘zgaruvchilarida saqlanadi va agar u bo‘sh bo‘lmasa, test_input() funksiyasi orqali foydalanuvchi kiritish ma’lumotlarini yuboradi:

// define variables and set to empty values
$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 - Xato xabarlarini ko‘rsatish

Keyin HTML shaklida biz har bir talab qilingan maydondan keyin kichik skript qo‘shamiz, agar kerak bo‘lsa, to‘g‘ri xato xabari hosil bo‘ladi (ya’ni, agar foydalanuvchi kerakli maydonlarni to‘ldirmasdan shaklni topshirishga harakat qilsa):

Misol

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

Name: <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>
Comment: <textarea name="comment" rows="5" cols="40"></textarea>
<br><br>
Gender:
<input type="radio" name="gender" value="female">Female
<input type="radio" name="gender" value="male">Male
<input type="radio" name="gender" value="other">Other
<span class="error">* <?php echo $genderErr;?></span>
<br><br>
<input type="submit" name="submit" value="Submit">

</form>
Misolni ishga tushirish »

"Ism maydonida faqat harflar va bo‘shliqlar bormi?" va "E-mail maydonida to‘g‘ri elektron pochta manzili sintaksisi mavjudmi?" va agar to‘g‘irlab bo‘lsa, "sayt-sayt maydonida to‘‘ri URL mavjudmi?".


W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!