---
title: PHP Form Required
description: "> This chapter shows how to make input fields required and create error messages if needed. > > > > Энэ бүлэгт оролтын талбаруудыг шаардлагатай болгож, шаардлагатай бол алдааны мэдэгдлүүд хэрхэн үүсгэхийг харуулсан болно. --- ## PHP – Required Fields…"
url: "https://apprentice.mn/docs/php-form-required/"
updated: "2021-07-19"
category: PHP
---

# PHP Form Required

> This chapter shows how to make input fields required and create error messages if needed.
>
>
>
> Энэ бүлэгт оролтын талбаруудыг шаардлагатай болгож, шаардлагатай бол алдааны мэдэгдлүүд хэрхэн үүсгэхийг харуулсан болно.

---

## PHP – Required Fields

## PHP – Шаардлагатай талбарууд

From the validation rules table on the previous page, we see that the “Name”, “E-mail”, and “Gender” fields are required. These fields cannot be empty and must be filled out in the HTML form.

Өмнөх хуудсан дээрх баталгаажуулах дүрмийн хүснэгтээс “Нэр”, “И-мэйл”, “Хүйс” гэсэн хүснэгтүүд шаардлагатай байгааг бид харж байна. Эдгээр хүснэгтүүд хоосон байж болохгүй тул HTML хэлбэрээр бөглөх ёстой.

   

| Field | Validation Rules |
| --- | --- |
| Name | Required. + Must only contain letters and whitespace Шаардлагатай. + Зөвхөн үсэг ба хоосон зайг агуулсан байх ёстой |
| E-mail | Required. + Must contain a valid email address (with @ and .) Шаардлагатай. + Зөв имэйл хаяг агуулсан байх ёстой (@ ба. Хамт) |
| Website | Optional. If present, it must contain a valid URL Нэмэлт. Хэрэв байгаа бол энэ нь зөв URL агуулсан байх ёстой |
| Comment | Optional. Multi-line input field (textarea) Нэмэлт. Олон мөр оруулах хүснэгт (текст) |
| Gender | Required. Must select one Шаардлагатай. Нэгийг нь сонгох ёстой |

In the previous chapter, all input fields were optional.  – Өмнөх бүлэгт бүх оролтын талбарууд сонголттой байсан.

In the following code we have added some new variables: $nameErr, $emailErr, $genderErr, and $websiteErr. These error variables will hold error messages for the required fields. We have also added an `if else` statement for each $_POST variable. This checks if the $_POST variable is empty (with the PHP `empty()` function). If it is empty, an error message is stored in the different error variables, and if it is not empty, it sends the user input data through the `test_input()` function: –

Дараах кодонд бид зарим шинэ функцуудыг нэмж оруулсан: $ nameErr, $ emailErr, $ genderErr, $ websiteErr. Эдгээр алдааны хувьсагчид шаардлагатай талбаруудад алдааны мэдэгдлийг хадгалах болно. Бид мөн $ _POST хувьсагч бүрт `if else`  хэллэг нэмж оруулсан. Энэ нь $ _POST хувьсагч хоосон (PHP `empty()` функцтэй) эсэхийг шалгана. Хэрэв энэ нь хоосон байвал алдааны мэдэгдэл нь өөр өөр алдааны хувьсагчид хадгалагдах бөгөөд хэрэв хоосон биш бол хэрэглэгчийн оруулсан өгөгдлийг `test_input()` функцээр дамжуулан илгээнэ.

     `<?php
// 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 – Display The Error Messages

## PHP – Алдааны мессежийг харуулах

Then in the HTML form, we add a little script after each required field, which generates the correct error message if needed (that is if the user tries to submit the form without filling out the required fields): –

Дараа нь HTML хэлбэрт бид шаардлагатай талбар бүрийн дараа бага зэрэг скрипт нэмж оруулдаг бөгөөд хэрэв шаардлагатай бол зөв алдааны мэдэгдлийг үүсгэдэг (хэрэв хэрэглэгч шаардлагатай талбарыг бөглөхгүйгээр маягтаа оруулахыг оролдвол).

### Example

### Жишээ

      `<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>`

The next step is to validate the input data, that is “Does the Name field contain only letters and whitespace?”, and “Does the E-mail field contain a valid e-mail address syntax?”, and if filled out, “Does the Website field contain a valid URL?”. –

Дараагийн алхам бол оролтын өгөгдлийг баталгаажуулах явдал бөгөөд “Нэрийн талбарт зөвхөн үсэг, хоосон зай багтах уу?”, “И-мэйл талбарт хүчинтэй имэйл хаягийн синтакс орсон уу?”, Хэрэв бөглөсөн бол ” Вэбсайт талбарт хүчинтэй URL байгаа юу? “.

                [https://www.addtoany.com/add_to/facebook?linkurl=https%3A%2F%2Fapprentice.mn%2Fdocs%2Fphp-form-required%2F&linkname=PHP%20Form%20Required](https://www.addtoany.com/add_to/facebook?linkurl=https%3A%2F%2Fapprentice.mn%2Fdocs%2Fphp-form-required%2F&linkname=PHP%20Form%20Required)[https://www.addtoany.com/add_to/mastodon?linkurl=https%3A%2F%2Fapprentice.mn%2Fdocs%2Fphp-form-required%2F&linkname=PHP%20Form%20Required](https://www.addtoany.com/add_to/mastodon?linkurl=https%3A%2F%2Fapprentice.mn%2Fdocs%2Fphp-form-required%2F&linkname=PHP%20Form%20Required)[https://www.addtoany.com/add_to/email?linkurl=https%3A%2F%2Fapprentice.mn%2Fdocs%2Fphp-form-required%2F&linkname=PHP%20Form%20Required](https://www.addtoany.com/add_to/email?linkurl=https%3A%2F%2Fapprentice.mn%2Fdocs%2Fphp-form-required%2F&linkname=PHP%20Form%20Required)[https://www.addtoany.com/share](https://www.addtoany.com/share)
