PHP-код не отображается в операторе if

0

У меня есть страница регистрации, которую я построил, и если я покину поле пусто, ничего не повторится, говоря, что оно пустое, как будто мой код должен быть настроен как. Например, если я оставляю поле имени пользователя пустым, он должен сказать: "Вы не можете оставить поле имени пользователя пустым". Может ли кто-нибудь сказать мне, что происходит?

<?php
if(version_compare(PHP_VERSION, "5.2.0", ">")){

    include('config.php');



    if($_SERVER['REQUEST_METHOD'] == "POST"){
        if($_POST['user']==""){
            echo "You can't leave the username field empty.<br />";
            } elseif($_POST['password'] == ""){
                echo "You can't leave the password field empty.<br />";
            }elseif($_POST['confirm_password'] == ""){
                echo "You can't leave the confirmation password field empty.<br />";
                }elseif ($_POST['email'] == "" ){
                    echo "You can't leave the email field empty.<br />";
                }elseif($_POST['confirm_email'] == ""){
                    echo "YOu can't leave the confirmation email field empty.<br />";
                    }elseif($_POST['password'] != $_POST['confirm_password']){
                        echo "Password does not match.<br />";

                    }elseif($_POST['confirm_password'] != $_POST['password']){

                        echo "Password does not match.<br />";

                        }elseif($_POST['email'] != $_POST['confirm_email']){
                            echo "Email does not match";


                            }elseif($_POST['confrim_email'] != $_POST['email']){
                            echo "Email does not match";

                            }else{


                echo "Everything is correct and not empty.";

                }
        }else{





            ?><form action="" method"POST">
            <input type="text" name="user"><br />
             <input type="password" name="password"><br />
             <input type="password" name="confirm_password"><br />
             <input type="email" name="email"><br />
             <input type="email" name="confirm_email"><br />
            <button type="submit">Sign Up</button>
            </form><?php

        }
    }else{

        ?> Please update your Php Version to suit these code settings<?php

            }
        ?>
  • 0
    Попробуйте проверить значения с помощью isset( $_POST['key'] ) ; а не $_POST['user']==""
  • 0
    Текстовые поля всегда возвращают значение, поэтому isset не требуется в данном конкретном случае.
Показать ещё 2 комментария
Теги:

1 ответ

0

Попробуйте использовать функцию isset, например, @Feek, а также пустую...

if(isset($_POST['user']) && empty($_POST['user'])){//set but empty
                echo "You can't leave the username field empty.<br />";
}

Также обязательно включите отчет об ошибках:

<?php
// Turn off error reporting
error_reporting(0);

// Report runtime errors
error_reporting(E_ERROR | E_WARNING | E_PARSE);

// Report all errors
error_reporting(E_ALL);

// Same as error_reporting(E_ALL);
ini_set("error_reporting", E_ALL);

// Report all errors except E_NOTICE
error_reporting(E_ALL & ~E_NOTICE);
?>

Ещё вопросы

Сообщество Overcoder
Наверх
Меню