PHP базовый: почему моя переменная показывает неправильное значение? - PullRequest
1 голос
/ 16 октября 2019

Я новичок в PHP. Я пытаюсь создать простую форму, в которой пользователь отправит туда имя и отметку, которую он получил на экзамене.

<form action="" method="post">
        <input type="text" name="name" id="" placeholder="Your name">
        <input type="number" name="mark" id="" placeholder="Your Mark">
        <input type="submit" name="submit" value="Submit">
</form>


    <?php

        if(isset($_POST["submit"])){

            $name = $_POST['name'] ;
            $mark = $_POST['mark'];



            if( $mark > 80 ){

                $result = "A+";

            }elseif($mark > 70 && $mark < 80){

                $result = "A"; 
            }
            elseif($mark > 60 && $mark < 70){

                $result = "A-"; 
            }
            elseif($mark > 40 && $mark < 60){

                $result = "B"; 
            }else{
               $result = "Fail";  

            }

            echo $result;

        }


    ?>

Но если я отображаю переменную результата, она всегда показывает «Fail». Что я делаю не так? спасибо

Ответы [ 2 ]

1 голос
/ 23 октября 2019

Как уже упоминалось в комментариях, при сравнении диапазонов необходимо учитывать угловые случаи:
$mark >= 70 && $mark < 80

Также есть несколько способов упростить ваш код: если вы выберете marsk >= 80в первом IF нет необходимости проверять это в следующем elseif :

        if( $mark >= 80 )
        {
            $result = "A+";
        }
        elseif($mark >= 70)
        {
            $result = "A"; 
        }
        elseif($mark >= 60)
        {
            $result = "A-"; 
        }
        elseif($mark >= 40)
        {
            $result = "B"; 
        }
        else
        {
           $result = "Fail";  
        }

        echo $result;
0 голосов
/ 16 октября 2019

Попробуйте использовать var_dump ($ variable), но, возможно, ваша проблема в условных выражениях - используйте> = вместо ==

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...