Как отобразить ошибку при неверном вводе с помощью php / html?

Опубликовано: 30 Ноября, 2021

PHP может быть легко встроен в файлы HTML, а коды HTML также могут быть записаны в файл PHP. То, что отличает PHP от клиентского языка, такого как HTML, заключается в том, что коды PHP выполняются на сервере, тогда как коды HTML напрямую отображаются на браузер. Чтобы отобразить ошибку при недопустимом вводе с помощью HTML и PHP.

Подход:

Отображать ошибку при недопустимой ошибке, когда

  • текстовое поле ввода остается пустым.
  • ввод неверен.

Код PHP: Ниже приведен код для «form.php», который используется в коде HTML в более поздней части.

Чтобы показать недопустимый ввод в PHP, установите имя текстового поля ввода, которое находится в HTML. Все поля сначала проверяются на пустые поля, а затем проверяется правильность. Если все поля верны, отображается сообщение об успешном выполнении. Если введенный пользователем ввод неверен, будет показано сообщение «Недействительный ввод !!».

PHP

<?php
$nameError = "";
$emailError = "";
$passwordError = "";
$mobileError = "";
$success = "";
   
function validate_input($input) {
    $input = trim($input);
    $input = stripslashes($input);
    $input = htmlspecialchars($input);
    return $input;
}
   
if(isset($_POST["form_submit"])) {
    $name = $_POST["name"];
    $password = $_POST["password"];
    $email = $_POST["user_email"];
    $mobile = $_POST["mobile"];
     
    if (empty($_POST["name"])) {
        $nameError = "Name is required";
    } else {
        $name = validate_input($_POST["name"]);
          
        if($name == "chetan") {
            $success= "Thank you ". $name.", ";
            echo $success;
        }
    }
     
    if (empty($_POST["email"])) {
        $emailError = "Email is required";
    } else {
        $email = validate_input($_POST["email"]);
          
        if($email == "test@email.com") {
            $success= $email." is correct";
            echo $success;
        }
    }
       
    if (empty($_POST["password"])) {
        $passwordError = "Password is required";
    } else {
        $password = validate_input($_POST["password"]);
      
        if($password == "test@123") {
            $success= $password." is correct";
            echo $success;
        }
    }
   
    if (empty($_POST["mobile"])) {
        $mobileError = "Mobile is required";
    } else {
        $mobile = validate_input($_POST["mobile"]);
          
        if($mobile == "123456789") {
            $success= $mobile." is correct";
            echo $success;
        }
    }
    if(empty($success))
        echo "Invalid input!!!";
}
?>

HTML-код. В следующем коде используется вышеуказанный PHP-код form.php.

HTML

<!DOCTYPE html>
< html lang = "en" dir = "ltr" >
< head >
< meta charset = "utf-8" >
< title >Form</ title >
</ head >
< body >
< form action = "form.php" method = "POST" >
< input type = "text" name = "name"
placeholder = "Enter name" >
< input type = "password" name = "password"
placeholder = "Password" >
< input type = "email" name = "user_email"
placeholder = "yourname@gamil.com" >
< input type = "tel" name = "mobile"
placeholder = "Mobile no" >
< button type = "submit" name = "form_submit" >
Submit
</ button >
</ form >
</ body >
</ html >

Выход:

  • Неправильный ввод пользователем
     Неправильный ввод!!!
  • Правильный ввод пользователем
     Спасибо четан, 123456789 правильно