Чат Telegram
Группа ВКонтакте
Новый комментарий


Denchik 22.01.2018 в 14:16
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login === 'admin' && $password === 'Pa$$w0rd') {
    $isAuthorized = 'Всё верно';
} else if($login !== 'admin') {
    $isAuthorized = 'Логин неверный';
} else if($login === 'admin' && $password !=='Pa$$w0rd'){
    $isAuthorized = 'Пароль неверный';
}
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isAuthorized ?>
</p>
</body>
</html>
ivashkevich 22.01.2018 в 17:40

Ага, хорошо. Но в конце можно не проверять условие, так как остался только один вариант, просто else. Поправь коммент.

Denchik 24.01.2018 в 12:00
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login === 'admin' && $password === 'Pa$$w0rd') {
    $isAuthorized = 'Всё верно';
} else if($login !== 'admin') {
    $isAuthorized = 'Логин неверный';
} else {
    $isAuthorized = 'Пароль неверный';
}
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isAuthorized ?>
</p>
</body>
</html>
ivashkevich 24.01.2018 в 19:36

Теперь огонь!

DmitryGavrilov 13.04.2018 в 15:13
<?php   
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login === 'admin' && $password === 'pa$$w0rd') {
    $isAuthorized = true;
}
//Добавьте дополнительное условие, которое будет говорить о том, что пользователь
// не найден, если переданный логин не ‘admin’.
else if ($login !== 'admin') {
    $isAuthorized = 'Пользователь не найден';
    //И если пользователь не найден, то нет смысла проверять пароль,
    // и это условие проверяться не будет.
    //Если же логин ‘admin’, но пароль не совпадает,
    // то писать о том, что пароль неверный.
} else  ($password !== 'pa$$w0rd'){
    $isAuthorized = 'Вы ввели не верный пароль'
}
?>

<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isAuthorized ? 'Логин и пароль верные!' : 'Логин и пароль введены не верно!' ?>
</p>
</body>
</html>
ivashkevich 13.04.2018 в 17:50

Ну и в итоге у вас выведется либо 'Логин и пароль верные!', либо 'Логин и пароль введены не верно!'. Лучше завести отдельную переменную $result, и в неё складывать получившийся результат. Проверяйте хотя бы работоспособность написанного, прежде чем отправить.

$isAuthorized - в переменной изначально хранится булево значение, true/false. Такого типа она и должна оставаться. Не нужно складывать туда строку. Представляйте себе, что у переменной есть какой-то конкретный тип. Это позволит вам в дальнейшем избежать ошибок, так как вы наверняка будете знать, что у вас там за тип.

Переменные, начинающиеся со слова is или has подразумевают под собой, что там находится именно булево значение.

И конструкцию elseif нужно писать слитно.

Поправьте, убедитесь что выдаются действительно нужные ошибки, и отправляйте снова.

DmitryGavrilov 14.04.2018 в 00:05
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';
$result = '';
if ($login === 'admin' && $password === 'pa$$w0rd') {
    $isAuthorized = true;
    $result = 'Авторизация прошла успешно';
}
//Добавьте дополнительное условие, которое будет говорить о том, что пользователь
// не найден, если переданный логин не ‘admin’.
elseif ($login !== 'admin') {
    $result = 'Пользователь не найден';
    //И если пользователь не найден, то нет смысла проверять пароль,
    // и это условие проверяться не будет.
    //Если же логин ‘admin’, но пароль не совпадает,
    // то писать о том, что пароль неверный.
} else {
  $result = 'Пароль введен неверно';
}
?>

<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isAuthorized ?>
    <?= $result ?>
</p>
</body>
</html>
ivashkevich 14.04.2018 в 15:32

Для чего вам здесь переменная $isAuthorized?

DmitryGavrilov 16.04.2018 в 09:40

Просто послушал вашего совета - "$isAuthorized - в переменной изначально хранится булево значение, true/false. Такого типа она и должна оставаться. Не нужно складывать туда строку. Представляйте себе, что у переменной есть какой-то конкретный тип. Это позволит вам в дальнейшем избежать ошибок, так как вы наверняка будете знать, что у вас там за тип."
И оставил ее только для вывода true или false. Я понимаю что и без нее все выводится)

ivashkevich 16.04.2018 в 18:00

Хорошо, тогда удаляйте её)

DmitryGavrilov 16.04.2018 в 21:31
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';
$result = '';
if ($login === 'admin' && $password === 'pa$$w0rd') {
    $result = 'Авторизация прошла успешно';
}
//Добавьте дополнительное условие, которое будет говорить о том, что пользователь
// не найден, если переданный логин не ‘admin’.
elseif ($login !== 'admin') {
    $result = 'Пользователь не найден';

    //И если пользователь не найден, то нет смысла проверять пароль,
    // и это условие проверяться не будет.
    //Если же логин ‘admin’, но пароль не совпадает,
    // то писать о том, что пароль неверный.
} else {
  $result = 'Пароль введен неверно';
}
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $result ?>
</p>
</body>
</html>
ivashkevich 17.04.2018 в 16:59

Ну вот, другое дело :)

1nSide 20.04.2018 в 16:23

2 Задача

?php

 $login = !empty($_GET['login'])? $_GET['login'] : 'Логин не передан';
 $password = !empty($_GET['password'])? $_GET['password'] : 'Пароль не передан';

 switch ($login&$password)
 {
     case $login === 'admin' && $password === '12345':
         $isAuthorized = 'Логин и пароль введены правильно';
     break;

     case $login === 'admin' && $password !== '12345';
         $isAuthorized = 'Пароль не верный';
         break;

     case $login !== 'admin':
         $isAuthorized = 'Такого пользователя не существует';
         break;

     default:
 }

?>

<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isAuthorized ?>
</p>
</body>
</html>
ivashkevich 21.04.2018 в 18:14

Те же ошибки что и в случае выше. И еще к ним же:

  1. в switch используете побитовое И - если хотели использовать логическое И, то используйте два амперсанда &&
  2. Даже если вы исправите на логическое ИЛИ, в нем все равно не будет никакого смысла. Потому что login и password у вас всегда непустые строки и всегда будут приведены к true.
  3. Секция default никогда не должна быть пустой.
  4. Переменная isAuthorized (перевод - авторизация пройдена) не подходит по смыслу к тому, что вы в нее складываете. Вы туда присваиваете текст ошибки, а иногда еще и информацию об успехе. Лучше просто завести переменную для ошибок $error и присвоить ее в начале программы равной null. В конце будете смотреть, равна ли она null. Нет - значит ошибка произошла и надо об этом написать. Иначе - авторизация прошла успешно и стоит тоже об этом написать.
  5. Если логин или пароль не переданы, стоит тоже об этом писать, сейчас эта информация просто игнорируется. Лучше в эти переменные, если они не переданы, присвоить null и добавить еще 2 кейса в свитче для случаев, когда эти переменные равны null и присвоить текст ошибки опять же в переменную error.
1nSide 25.04.2018 в 14:41

Не особо понял с операторами null, пытался сделать но не получилось, если можно то скиньте пример с таким решением как вы говорите.
Сделал так, вроде все работает.

<?php

 $login = !empty($_GET['login'])? $_GET['login'] : 'Логин не передан';
 $password = !empty($_GET['password'])? $_GET['password'] : 'Пароль не передан';

 switch ($login&&$password)
 {
     case $login === 'admin' && $password === '12345':
         $result = 'Пользователь авторезован';
         break;

     case $login === 'admin' && $password !== '12345':
         $result = 'Не верный пароль';
         break;

     default:
         $result = 'Пользователь не авторизован';

 }

?>

<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?=$result?>
</p>
</body>
</html>
ivashkevich 25.04.2018 в 18:15

Привет, примерно вот так:

$login = !empty($_GET['login'])? $_GET['login'] : null;
$password = !empty($_GET['password'])? $_GET['password'] : null;

switch (true) {
    case $login === null || $password === null:
        $result = 'логин не передан';
        break;
    case $login === 'admin' && $password === '12345':
    //дальше продолжается ваш код
andropij 17.06.2018 в 17:41
<?php
$password = !empty($_GET['password']) ? $_GET['password'] : 'логин не передан';
$login = !empty($_GET['login']) ? $_GET['login'] : 'логин не передан';
if ($login != 'admin') {
    echo "Пользователь не найден!";
} else if ($password != '123') {
    echo "Невреный пароль";
}
?>

<html>
<head>
    <title>Знакомсвто с Get запросом</title>
</head>
<body>
</body>
</html>
ivashkevich 18.06.2018 в 05:04

Неплохо! Однако, не стоит в переменную $password складывать текст ошибки - для этого лучше заводить специальную переменную с текстом $error. А в $login и $password должны содержаться логин и пароль, если их нет - храните там null. В вашем варианте, если их не передать, то мы никогда об этом не узнаем.

Fox-24 14.08.2018 в 12:54

Как всегда всё супер! Спасибо)


// ДЗ

$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login !== 'admin') {        // Если логин не совпадает с 'admin'
    $isAuthorized = 'Указан не верный логин';
} elseif ($login === 'admin' && $password === 'Pa$$w0rd') {     // Если логин и пароль совпадают
    $isAuthorized = 'Поздравляем! Авторизация прошла успешно.';

} else {                         // Если пароль не верный
    $isAuthorized = 'Введен не верный пароль. Попробуйте еще раз.';

}

?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isAuthorized ?>
</p>
</body>
</html>
ivashkevich 14.08.2018 в 20:37
  1. Как думаете, нужно ли после проверки
    if ($login !== 'admin')

    проверять что

    } elseif ($login === 'admin' ...
  2. Переменная $isAuthorized начинается с is - мы об этом не говорили, но такие имена говорят о том, что тип значения - boolean (true/false). Для вашего варианта будет лучше назвать переменную $result.
    Либо же можно завести 2 отдельные переменные - $isAuthorized, с типом boolean, которая будет говорить об успешности авторизации. И ещё одну переменную $error - по умолчанию будет равна null, но при возникновении ошибок авторизации будет задаваться текст ошибки.
    А затем уже в условиях проверять значения этих переменных, и на их основе писать какой-то текст.
Fox-24 14.08.2018 в 22:07
  1. Нет, конечно не нужно. Стоило перепроверить условия, тут ковырялся некоторое время...)
  2. Спасибо, полезная информация.
if ($login !== 'admin') {        // Если логин не совпадает с 'admin'
    $result = 'Указан не верный логин';
} elseif ($password === 'Pa$$w0rd') {     // Если логин и пароль совпадают
    $result = 'Поздравляем! Авторизация прошла успешно.';

} else {                         // Если пароль не верный
    $result = 'Введен не верный пароль. Попробуйте еще раз.';

}

?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $result ?>
</p>
</body>
</html>
ivashkevich 16.08.2018 в 21:47

Найс!

Himik 06.09.2018 в 21:00
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login === 'admin') {
    if ($password === 'Pa$$w0rd') {
        $isAuthorized = 'Логин и пароль верные';
    } else {
        $isAuthorized = 'пароль не подходит';
    } 
} else {
    $isAuthorized = 'пользователь не найден';
}
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?php echo $isAuthorized; ?>
</p>
</body>
</html>
ivashkevich 07.09.2018 в 08:54

Хорошо =)

ArtemijeKA 07.09.2018 в 11:37
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';
if ($login !== 'admin') {
    $isAuthorized = 'Пользователь не найден!';
}
elseif ($password === 'pass') {
    $isAuthorized = 'Пользователь и пароль совпадают!';
}
else {
    $isAuthorized = 'Пароль не верен!';
}
ivashkevich 07.09.2018 в 21:31

Хорошо

yuliya-chirkova 19.09.2018 в 12:47

А у меня вопрос.

<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';
if ($login ==='admin' && $password === '123456') {
    $autorized = 'Данные верны';
}

elseif ($login !== 'admin')
{

    $autorized = 'Логин неверный';
}

else ($password !== '123456')
 {
     $autorized = 'Пароль неверный'
 }

?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $autorized ?>
</p>
</body>
</html>

Если у нас неверный логин, то мы можем завершить цикл оператором break? Пробовала добавлять его после elseif- показало ошибку

ivashkevich 22.09.2018 в 20:22

Здравствуйте, это не цикл, циклы - это for, while, foreach. Здесь же у вас условие и break внутри них не имеет смысла. Кроме того, блок else не может содержать условия - он просто выполняется, если предыдущие if и ifelse не выполнились. Таким образом, строка

else ($password !== '123456')

должна быть переписана просто в

else
Benya 19.09.2018 в 21:56
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login != 'admin') {
    $isAdmin = true;
} else {
    if ($login === 'admin' && $password === '12345') {
        $isAuthorized = true;
    } else {
        $isAuthorized = false;
    }
}

?>

<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isAdmin ? 'login not found' : ($isAuthorized ? 'Логин и пароль верные!' : 'Неправильный  пароль') ?>
</p>
</body>
</html>
ivashkevich 22.09.2018 в 20:24

Работать-то работает, но переменная isAdmin (это Админ), в этом коде true если это не админ. Ерунда какая-то - переделайте =)

SBTesla 20.09.2018 в 10:38
<?php

$login = !empty($_POST ['login']) ? $_POST ['login']  : ' ';
$password = !empty($_POST ['password']) ? $_POST ['password'] :' ';

if ($login === 'admin'  &&  $password === '12345'){
    $isAuthorized =true ;
    }
    elseif($login !== 'admin'){
        $isAuthorized =false;
        $error = 'Логин не верен';
    }
    else ($password !== '12345') {
        $error = 'Пароль не верен'

}

?>

<html>
<head>
    <title>Результат авторизации</title>
</head>
<p><?= $isAuthorized  ? 'Вы Авторизованы': $error ?></p>
<body>
</body>
</html>
CarfikDK 22.10.2018 в 22:11

index.php

<html>
<head>
    <title>Авторизация</title>
</head>
<body>
<form action="/login.php" method="get">
    <label>
        Логин <input type="text" name="login">
    </label>
    <br>
    <label>
        Пароль <input type="password" name="password">
    </label>
    <br>
    <input type="submit" value="Войти">
</form>
</body>
</html>

login.php

<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login === 'admin') {
    $isLoginRight = true;
    if($password === '12345678')
    {
        $isPasswordRight = true;
    } else {
        $isPasswordRight = false;
    }
} else {
    $isLoginRight = false;
}
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?php
        if($isLoginRight)
        {
            if($isPasswordRight)
            {
                echo 'Логин и пароль верные!';
            } else {
                echo 'Пароль не верный!';
            }
        } else {
            echo 'Пользователь не найден!';
        }
    ?>
</p>
</body>
</html>
ivashkevich 23.10.2018 в 08:43

Отлично! Для оформления кода используйте первую кнопку в окне добавления комментария.

demyanovpaul@yandex.ru 04.11.2018 в 23:50

Сейчас если переданы неверные логин или пароль, выводится информация о том, что либо одно, либо другое неверно.
Добавьте дополнительное условие, которое будет говорить о том, что пользователь не найден, если переданный логин не ‘admin’. И если пользователь не найден, то нет смысла проверять пароль, и это условие проверяться не будет. Если же логин ‘admin’, но пароль не совпадает, то писать о том, что пароль неверный.

<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

$errorMessage = '';
$isAuthorized = false;

if ($login === 'admin')
    if($password === 'Pa$$w0rd')
        $isAuthorized = true;
    else
        $errorMessage = 'Введен не правильный пароль';
 else
     $errorMessage = 'Логин не найден';
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isAuthorized ? 'Логин и пароль верные! Добро пожаловать ' . $login : $errorMessage; ?>
</p>
</body>
</html>
ivashkevich 05.11.2018 в 09:15

Хорошо, но для условий всегда используйте фигурные скобки. Это закон =)

virtual2018 21.11.2018 в 14:45
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login === 'admin') {
    if ($password === 'Pa$$w0rd') {
        $messageText = 'Логин и пароль верные!';
    } else {
        $messageText = 'Неправильный пароль';
    }
} else {
    $messageText = 'Неправильный логин';
}

?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $messageText ?>
</p>
</body>
</html>
ivashkevich 22.11.2018 в 09:32

Отлично!

Pavel-Tonk 03.12.2018 в 00:34
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login !== 'admin') {
    $isAuthorized = 'none';
} else if ($login === 'admin' && $password === '123') {
    $isAuthorized = 'admin';
} else {
    $isAuthorized = false;
}
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isAuthorized === 'admin' ? 'Логин и пароль верные!' : 
        $isAuthorized === 'none' ? 'Нет такого пользователя' : 'Пароль не верен';
     ?>
</p>
</body>
</html>

Не могу понять почему конструкция проверки $isAuthorized не срабатывает правильно, где ошибся?

ivashkevich 03.12.2018 в 10:02

Привет. Очень сложно читать код из двух тернарок подряд. Не надо так делать.

Переменная isAuthorized должна содержать только true или false. Заведи лучше отдельную переменную для ошибок, в которой будут строки. Если же ошибок нет - записывай в неё null.

Bogdan 13.12.2018 в 12:30
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login !== 'admin') {
    $isAuthorized =  "пользователь не найден";
}else if ($login === 'admin' && $password === 'Pa$$w0rd') {
    $isAuthorized = "Логин и пароль верные!";
} else {
    $isAuthorized = "Неправильный пароль";
}
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?=$isAuthorized;?>
</p>
</body>
</html>
ivashkevich 14.12.2018 в 10:31

Хорошо

SashkoUkraine 23.01.2019 в 11:06
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

$isAdmin = true;

if ($login === 'admin') {
    if ($password === 'Pa$$w0rd') {
        $isAuthorized = true;
    } else {
        $isAuthorized = false;
    }
} else {
    $isAdmin = false;
}

?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?php
        if ($isAdmin) {
            echo $isAuthorized ? 'Логин и пароль верные!' : 'Неправильный пароль';
        } else {
            echo 'пользователь не найден';
        }
    ?>

</p>
</body>
</html>
ivashkevich 23.01.2019 в 11:52

Ок!

excent63 26.01.2019 в 20:58

Спасибо за очередной урок!
Домашнее задание:

<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login != 'admin' && $password != 'pass'){
    $authorization = 'Неверный логин';
} elseif ($password != 'pass') {
    $authorization = 'Пароль не верный';
} else {
    $authorization = 'Успешная авторизация';
}
?>
<html>
<head>
    <title>Знакомство с GET</title>
</head>
<body>
<?=$authorization?>
</body>
</html>
ivashkevich 27.01.2019 в 10:55

ОК! =)

N9PIX 29.01.2019 в 14:20
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : 'Логин не передан';
$password = !empty($_GET['password']) ? $_GET['password'] : 'Пароль не передан';
if($login === 'admin' && $password === '123') {
    $isAunthorized = 'Добро пожаловать на сайт';
} else if ($login === 'admin' && $password !== '123') {
    $isAunthorized = 'Пароль введён не верно';
} else {
    $isAunthorized = 'Пароль и логин не верны';
}
?>
<html>
<head>
    <title>Авторизация</title>
</head>
<body>
<p>
    <?= $isAunthorized?>
</p>
</body>
</html>
ivashkevich 29.01.2019 в 23:35

Ок!

red.shuhov48@gmail.com 30.01.2019 в 20:48
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login === 'admin' && $password === 'admin'){
    $isAutorized = 'ok';
}  elseif ($login === 'admin'){
    $isAutorized = 'login - not';
} else{
    $isAutorized = 'password - not';
}
?>
<html>
<head>
    <meta charset="UTF-8">
    <title>Avtorizaition</title>
</head>
<body>
    <p>
        <?=$isAutorized?>
    </p>

спасибо за уроки))
правда не все понял по GET вроде все понятно,думаю с POST приблизительно тоже...
есть вопросик:
$login = !empty($_GET['login'])-правильно читать строку присвоить значения условие если значение GET-не пусто то ... дальше немного непонятно...

ivashkevich 01.02.2019 в 23:50

Повторите тернарный оператор)

Pro100Bah 31.01.2019 в 17:26
<?php
echo 'Homework19' . '<br>';
$login = !empty($_GET['login']) ? $_GET['login'] : ' ';
$password = !empty($_GET['password']) ? $_GET['password'] : ' ';

if ($login === 'admin' && $password === 'qwerty') {
    $isAuthorized = 'ВЫ успешно авторизированы!!!';
} elseif ($login !== 'admin') {
    $isAuthorized = 'Неверно указан Логин!!!';
} elseif ($password !== 'qwerty') {
    $isAuthorized = 'Неверно указан Пароль!!!';
}
if ($login !== 'admin' && $password !== 'qwerty') {
    $isAuthorized = 'Неверно указан логин и пароль!!!';}
?>

<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isAuthorized ?>
</p>
</body>
</html>

<?= $isAuthorized ? 'Логин и пароль верные!' : 'Неправильный логин или пароль' ?> - это конструкция из примера в уроке - это применение тернарного оператора правильно? А вот это

$login = !empty($_GET['login']) ? $_GET['login'] : 'логин не передан!';
$password = !empty($_GET['password']) ? $_GET['password'] : 'пароль не передан!';

где логин не передан или пароль не передан; это что такое?

ivashkevich 01.02.2019 в 23:51

И это тоже тернарный оператор)

результат = (логическое условие) ? (что вернуть, если условие выполнено) : (что вернуть, если не выполнено)
volodia.pavloff201343@gmail.com 05.02.2019 в 12:59
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';
//В этом месте вставляем проверку условий
if ($login != 'admin') {
  echo  'Пользователь не найден!'; 
}
elseif ($password != 'Pa$$w0rd') {
  echo 'Логин и пароль не совпадают, проверьте пароль';
}
ivashkevich 07.02.2019 в 12:54

Ок!

babls2332@gmail.com 10.03.2019 в 15:47
<?php
if ($_GET['login'] !== 'admin') {
    echo 'Пользователь не найден';
    return false;
}

if ($_GET['password'] !== 'admin') {
    echo 'Неверный пароль';
    return false;
}

echo 'Пользователь найден';
?>
<html>
<head>
    <title>Знакомство с GET-запросами</title>
</head>
<body>
<form action="login.php">
    <input name='login' placeholder="login">
    <input name='password' placeholder="password">
    <input type="submit">
</form>
</body>
</html>
ivashkevich 11.03.2019 в 21:11

Почему именно return false?

ashfedor 10.03.2019 в 16:07

if ($login !== 'admin'){
  $isAuthorized = 'Пользователь не найден';
} elseif ($password !== '123456'){
  $isAuthorized = 'пароль не правильный';
} else{
    $isAuthorized = 'Вы вошли в систему';
}```
ivashkevich 11.03.2019 в 21:12

Отлично!

shtiher@yandex.ru 13.03.2019 в 17:37
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login === 'admin') {
    if ($password === 'Pa$$w0rd'){
        $isAuthorized = 'Логин и пароль верны';
    } else {
        $isAuthorized = 'Пароль не верный';
    }
} else {
    $isAuthorized = 'Пользователь не найден';
}
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isAuthorized ?>
</p>
</body>
</html>
ivashkevich 14.03.2019 в 09:13

ОК!

Blook 13.03.2019 в 23:01
<?php
 $login = $_GET['login'] == 'admin' ? True : False;
 $password = $_GET['password'] == 'p@ssw0rd' ? True : False;
 if ($login && $password) {
     $isAuthorized = 'Login and password are correct';
 } else if ($login && !$password) {
     $isAuthorized = 'Password is uncorrect';
 } else {
     $isAuthorized = 'Login or password is uncorrect';
 }
?>

<html>
<head>
    <title>
        Result
    </title>
</head>
<body>
    <?= $isAuthorized ?>
</body>
</html>
ivashkevich 14.03.2019 в 09:14

ОК. true и false пишутся с маленькой буквы.

Blook 18.03.2019 в 22:24

спасибо, учту

Grewi 17.03.2019 в 02:48
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$pass = !empty($_GET['pass']) ? $_GET['pass'] : '';
echo $login.'</br>'.$pass;

if ($login === 'admin'){
    if ($pass === 'pass'){
        $i = true;
    }else {
        $err = 'Не верный пароль';
    }
}else {
    $err = 'Не верный логин';
}

echo $i == true ? '</br> Авторизация прошла успешно' : '</br>'.$err ;
ivashkevich 17.03.2019 в 23:53

ОК

ilshatgb@mail.ru 17.03.2019 в 16:12
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';
?>

<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?php
    if ($login !== 'admin') {
        echo 'Пользователь не найден';
    } elseif ($password !== 'pa$$word') {
        echo 'Пароль неверный';
    } else {
        echo 'Логин и пароль верные';
    }
    ?>
</p>
</body>
</html>
ivashkevich 17.03.2019 в 23:54

Отлично

lilit 20.03.2019 в 20:47
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login === 'admin') {

    if ($password === 'Pa$$w0rd') {
        $isAuthorized = 'Логин и пароль верные!';
    } else {
        $isAuthorized = 'Пароль неверный';
    }

} else {
    $isAuthorized = 'Пользователь не найден';
}
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isAuthorized ?>
</p>
</body>
</html>
lilit 20.03.2019 в 20:58

Мудрено слишком, да?

<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login === 'admin') {
    $isLogin = true;
    if ($password === 'Pa$$w0rd') {
        $isPassword = true;
        $good = false;
    } else {
        $isPassword = false;
        $good = true;
    }

} else {$isLogin = false;
    $isPassword = true;
    $good = true;
}
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isLogin ? '' : 'Пользователь не найден' ?>
    <?= $isPassword ? '' : 'Пароль неверный' ?>
    <?= $good ? '' : 'Логин и пароль верные!'?>
</p>
</body>
</html>
ivashkevich 20.03.2019 в 21:19

Первый вариант норм. Второй - мешанина какая-то =)

XXX 24.03.2019 в 14:15
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login === 'admin') {
    if($password === '12345') {
        $isAuthorized = 1;
    }
    else $isAuthorized = 2;}
else {
    $isAuthorized = 3;
}

?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>

    <?php
    switch ($isAuthorized) {
        case 1:
            echo 'Логин и пароль верные!';
            break;
        case 2:
            echo 'Неверный пароль!';
            break;
        case 3:
            echo 'Неверный логин! Пароль не проверяется!';
            break;
    } ?>
</p>
</body>
</html>
ivashkevich 25.03.2019 в 11:30

Ок!

polvanovv 27.03.2019 в 12:17
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if($login !== 'admin'){
    $isAuthorized = 'User not found!';
}else {
    if ($login === 'admin' && $password === 'Pa$$w0rd') {
        $isAuthorized = 'Success authorization!';
    } else {
        $isAuthorized = 'Incorrect password!';
    }
}
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isAuthorized ?>
</p>
</body>
</html>
ivashkevich 27.03.2019 в 13:19

Отлично

artemship 17.04.2019 в 17:07

По-моему во втором if проверка $login === 'admin' не нужна

Boodoo 03.04.2019 в 06:25
<?php
    $login = !empty($_GET['login']) ? $_GET['login'] : '';
    $password = !empty($_GET['password']) ? $_GET['password'] : '';

    $isAuthorized = false;
    $mess = '';

    if($login == 'admin') {
        if($password === 'Pa$$w0rd') {
            $isAuthorized = true;
        } else {
            $mess = 'Пароль не верный';
        }
    } else {
        $mess = 'Пользователь не найден.';
    }
?>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Результат авторизации</title>
</head>
<body>
    <p>
        <?= $isAuthorized ? 'Логин и пароль верные!' : $mess ?>
    </p>
</body>
</html>
ivashkevich 03.04.2019 в 22:56

Отлично разделили ответственность переменных за разные действия.

artemship 17.04.2019 в 17:05
<?php

$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login !== 'admin') {
    $result = 'Пользователь не найден';
} elseif ($password !== 'Pa$$w0rd') {
    $result = 'Пароль неверный';
} else {
    $result = 'Добро пожаловать! :)';
}

?>

<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $result ?>
</p>
</body>
</html>
ivashkevich 17.04.2019 в 22:26

Отлично

che4151999@gmail.com 18.04.2019 в 17:06
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login === 'admin' && $password === 'Password') {
    $isAuthorized = 'Авторизация Успешна';
} else if($login!='admin') {
    $isAuthorized = 'Неверный логин';
} else{
    $isAuthorized='Неверный пароль';
}
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isAuthorized ?>
</p>
</body>
</html>
ivashkevich 18.04.2019 в 19:31

Отлично

sceptic 22.04.2019 в 12:04
<?php

$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login === 'admin') {
    if ($password === 'Pa$$w0rd'){
        $isAuthorized = 'Логин и пароль верные!';
    } else {
        $isAuthorized = 'Неверный пароль!';
    }

} else {
    $isAuthorized = 'Пользователь не найден!';
}
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?=$isAuthorized; ?>
</p>
</body>
</html>

Если логин не подходит, то пароль проверяться не будет.

ivashkevich 22.04.2019 в 17:13

Отлично!

Dram 22.04.2019 в 17:08
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<h2>Вариант №1</h2> <br>
<p>
<?php
$Authorized = ['admin','Pa$$w0rd'];
var_dump($Authorized);
var_dump($_GET);
if ($_GET['login'] !== $Authorized[0]) {
    echo 'Пользователь не найден';
}elseif ($_GET['login'] === $Authorized[0] && $_GET['password'] === $Authorized[1]){
    echo 'Успешная авторизация';
}
else{
    echo 'Пароль не верный';
}

?>
</p>
<h2>Вариант №2</h2> <br>
<?php
$Authorized = ['admin','Pa$$w0rd'];
var_dump($Authorized);
var_dump($_GET);
if ($_GET['login'] !== $Authorized[0]) {
    echo 'Пользователь не найден';
}elseif ($_GET['login'] === $Authorized[0] && $_GET['password'] !== $Authorized[1]){
    echo 'Пароль не верный';
}
else{
    echo 'Успешная авторизация';
}

?>
</body>
</html>
ivashkevich 22.04.2019 в 17:15

А в чем между ними разница?

Dram 22.04.2019 в 17:17

Особой разницы нет, думал вы сделаете замечание что нет явной проверки на Не ПРАВИЛЬНЫЙ ПАРОЛЬ.

ivashkevich 22.04.2019 в 17:21

В первом условии проверяете, что логин неправильный, после этого во втором условии проверяете, что он правильный. Это лишнее. Так как если он не неправильный, значит он точно правильный, и достаточно будет во втором условии проверить только пароль.

krollik1000000@gmail.com 08.05.2019 в 20:30
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login !== 'admin') {
    $isAuthorized = 'нет такого пользователя';
} else if ($login === 'admin' && $password !== '1234') {
    $isAuthorized = 'не верный пароль';
} else {
    $isAuthorized = 'добро пожаловать';
}
echo $login;
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isAuthorized ?>
</p>
</body>
</html>

вопрос,зачем когда присваивается переменным значение писать тернарный оператор,если мы можем просто написать $login = $_GET['login'];
$password = $_GET['password'];

ivashkevich 10.05.2019 в 13:43

Отлично.
Потому что если с формы убрать одно из полей и отправить такой запрос, то скрипт упадет с ошибкой при обращении к значению массива по несуществующему ключу. То есть если мы уберем с формы поле password и отправим запрос, то в массиве $_GET не будет ключа password. Если прямо обратиться к нему вот так: $_GET['password'], не проверив предварительно с помощью isset, empty или array_key_exists, то будет ошибка. Вам задание - проверить, что так оно и будет.

esqrx 11.05.2019 в 12:05
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : 'логин не передан!';
$password = !empty($_GET['password']) ? $_GET['password'] : 'пароль не передан!';

if ($login === 'admin' && $password === 'password'){
    echo 'Добро пожаловать';
}
    else if ($login !== 'admin'){
    echo 'Пользователь не найден';
}
//Почему я не могу сюда ввести **BREAK;**?
    else if ($login === 'admin' && $password !== 'password'){
    echo 'Неверный пароль';
}
ivashkevich 11.05.2019 в 14:04
  1. Не нужно в переменные для хранения логина и пароля складывать ошибки! Не пришёл пароль - значит в переменной будет пусто. Можете потом эту пустоту проверять и выводить ошибки, но хранить в переменных предназначенных для чего-то одного всё что вздумается - плохая практика.
  2. break используется в циклах.
  3. С форматированием проблемы у вас - все отступы и переносы пляшут, что сложно читать код.
  4. elseif пишется слитно.
esqrx 11.05.2019 в 15:26
$login = ($_GET['login']);
$password = ($_GET['password']);

if ($login === 'admin') {
    if ($password === 'pass') {
        echo 'Добро пожаловать';
    } else echo 'Пароль введен неверно!';
} else echo 'Данный пользователь отсутствует!';

//Спасибо за развернутый ответ!!
ivashkevich 11.05.2019 в 15:46
  1. А куда делась проверка с помощью empty? Если поле с формы убрать, то при отправке запроса скрипт упадет с ошибкой.
  2. Для блоков if-else ВСЕГДА используйте фигурные скобки, даже если там одна строчка.
Moskva 29.05.2019 в 11:36

Код:

<?php
$login = !empty($_GET['login']) ? $_GET['login'] : 'Логин не передан';
$password = !empty($_GET['password']) ? $_GET['password'] : 'Пароль не передан';
if ($login != 'admin'){
    echo 'Логин неверный';
    die();
} elseif($password != '12345'){
    echo 'Пароль неверный';
    die();
}

?>
<html>
<head>
    <title>Знакомство с GET-запросамиы</title>
</head>
<body>
Переданный логин: <?= $login?>
<br>
Переданный пароль: <?= $password?>
</body>
</html>
ivashkevich 30.05.2019 в 06:31

Нужно обходиться без die. В переменные, которые используются для хранения логина и пароля не нужно складывать ошибки.

Moskva 26.06.2019 в 15:44

А вот так?

<?php

$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';
if ($login != 'admin'){
    $error = 'Логин неверный';
} elseif($password != '12345'){
    $error = 'Пароль неверный';
} else{
    echo 'Вы успешно авторизовались';
}

?>
<html>
<head>
    <title>Знакомство с GET-запросами</title>
</head>
<body>
<? if($error !== false){
    echo $error;
} ?>
Переданный логин: <?= $login?>
<br>
Переданный пароль: <?= $password?>
</body>
</html>
ivashkevich 27.06.2019 в 19:01

Почему сообщение об успешной авторизации находится вне html- документа?

Reechniy 10.07.2019 в 14:55
<?php
$login=!empty($_GET['login']) ? $_GET['login']:'';
$password=!empty($_GET['password']) ? $_GET['password']:'';

if($login==='admin' && $password==='Pa$$w0rd'){
    $isAutorized='Верный логин и пароль';
}else if($login!=='admin'){
    $isAutorized='Неверный логин';
}else{
    $isAutorized='Неверный пароль';
}

?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?=$isAutorized?>
    </p>
</body>
</html>
ivashkevich 12.07.2019 в 05:30

Отлично

kvakazuabr 16.07.2019 в 12:29
if ($login !== 'admin') { //&& $password === 'Pa$$w0rd') {
   //$isAuthorized = true;
    $isAuthorized = 'пользователь не найден';
} else {
    if($password === 'Pa$$w0rd') {
        $isAuthorized = 'добро пожаловать на сайт';
    } else {
      $isAuthorized = 'не верный пароль';  
    }

}
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <!--  //? 'Логин и пароль верные!' : 'Неправильный логин или пароль' ?> -->
    <?= $isAuthorized;?>
</p>
</body>
</html>
ivashkevich 17.07.2019 в 04:25

Код норм. Непонятно только, для чего эти комментарии, они не несут никакой пользы. Надо их убрать

AlexxxEy 18.07.2019 в 01:01
<?php
$login = !empty($_GET['login']) ?  $_GET['login'] : 'Значение не найдено';
$password = !empty($_GET['login']) ?  $_GET['login'] : 'Значение не найдено';

if($_GET['login'] == 'text1' && $_GET['password'] == 'pass'){
    $LogAvtAcs = true;
}
elseif($_GET['login'] != 'text1') {
    $LogAvtAcs = false;
    $Log = 'Пользователь не найден, нет смысла проверять пароль';

}elseif($_GET['password'] != 'pass'){
    $LogAvtAcs = false;
    $Log = 'Пароль не вереный, доступ запрещен';
}
?>

<html>
<head>
    <title> Страница доступна</title>
</head>
<body>
<p><?= $Log ?></p>
<p><?= $Avtotest = $LogAvtAcs ? 'Доступ есть' : 'Доступа нет'; ?></p>
</body>
ivashkevich 18.07.2019 в 04:36
$login = !empty($_GET['login']) ?  $_GET['login'] : 'Значение не найдено';
$password = !empty($_GET['login']) ?  $_GET['login'] : 'Значение не найдено';

Не нужно в переменные, предназначенные для хранения логина и пароля, пихать ошибки. Пишите туда null или пустую строку, если ничего не пришло.

ivashkevich 18.07.2019 в 04:39

$LogAvtAcs - имена переменных с маленькой буквы!

<p><?= $Avtotest = $LogAvtAcs ? 'Доступ есть' : 'Доступа нет'; ?></p>

Вот это для чего вообще? Для чего переменная $Avtotest?

Aleks 15.08.2019 в 11:44
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login === 'admin' && $password === 'Pa$$w0rd') {
    $isAuthorized = 'Верная авторизация';
} else if($login !== 'admin') {
    $isAuthorized = 'Логин неверный';
} else {
    $isAuthorized = 'Пароль не верный';
}
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isAuthorized ?>
</p>
</body>
</html>
ivashkevich 16.08.2019 в 20:28

Отлично

Vladimir96 17.08.2019 в 13:09
<!--Форма-->
<html>
<head>
    <title>Форма входа</title>
</head>
<body>
<form action="/index.php" method="get">
    <label>
        Логин <input type="text" name="login">
    </label>
    <br>
    <label>
        Пароль <input type="password" name="password">
    </label>
    <br>
    <input type="submit" value="Войти">
</form
</body>
</html>
<?php
    //Код и исполнение
    $login = !empty($_GET['login']) ? $_GET['login'] : '';
    $password = !empty($_GET['password']) ? $_GET['password'] : '';

    if ($login === 'admin' && $password === 'Pa$$w0rd') {
        $isAuthorized = $login . ', добро пожаловать!';
    } elseif ($login !== 'admin') {
        $isAuthorized = 'Пользователь не найден';
    } else {
        $isAuthorized = 'Неверный пароль';
    }
    ?>

<html>
    <head>
        <title>Результат авторизации</title>
    </head>
    <body>
    <p>
        <?= $isAuthorized; ?>
    </p>
    </body>
</html>
ivashkevich 18.08.2019 в 06:52

Отлично

Lasto 22.08.2019 в 17:08
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login === 'admin' && $password === '123') {

       $login = 'Вы вошли';
} else if  ($login!=='admin' )  {
       $login = 'Пользователь не найден';

} else if  ($password!=='Pa$$word')

        $login='Не верный пароль';
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
    <? '<hr>';?>

    <h2>Результат авторизации</h2>

<p>
    <?= $login  ?>
</p>
</body>
</html>
ivashkevich 22.08.2019 в 18:52
<? '<hr>';?>

Это что такое?

Lasto 23.08.2019 в 13:21

разделил полосой)

ivashkevich 23.08.2019 в 20:00

Я к тому, что это за форма записи? Где нормальные PHP-теги? Где echo? Бред какой-то.

Ooleg 29.08.2019 в 16:21
<?php

$user = $_GET['login'] === 'admin' ? true : false;
if ($user) {
    $isAuthorized = $_GET['password'] === 'Pa$$w0rd' ? true : false;
}

?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <? if (!$user) {
        echo 'Пользователь не найден!';
        } else {
        echo $isAuthorized ? 'Логин и пароль верные!' : 'Неправильный пароль(';
        }
     ?>
</p>
</body>
</html>
ivashkevich 30.08.2019 в 04:40

Странный подход. Логичнее было бы формировать текст ошибки в самом начале, а потом его просто выводить, если переменная с этим текстом не пустая. А если пустая, то выводить сообщение об успешной авторизации.

Ooleg 30.08.2019 в 09:23

Просто баловался, хотел написать как можно меньше кода в верхней части.

ivashkevich 30.08.2019 в 19:34

Не надо баловаться. Делайте хорошо)

Dreft 02.09.2019 в 09:38
<?php
    $login = !empty($_GET['login']) ? $_GET['login'] : '';
    $password = !empty($_GET['password']) ? $_GET['password'] : '';

    if ($login === 'admin' && $password === '123') {
        $isAuthorized = 'Вы успешно вошли.';
    } elseif ($login != 'admin') {
        $isAuthorized = 'Неправильный логин';
    } else {
        $isAuthorized = 'Неправильный пароль';
    }
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p><?=$isAuthorized?></p>
</body>
</html>
ivashkevich 02.09.2019 в 10:10

Отлично

XXX 04.09.2019 в 12:21
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

switch (true){
    case ($login == 'admin' & $password == '123'):
        $authorized = 'Логин и пароль верны!';
        break;
    case ($login == 'admin' & $password != '123'):
        $authorized = 'Неверный пароль!';
        break;
    default:
        $authorized = 'Пользователь не найден, пароль не проверяется!';
}
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $authorized  ?>
</p>
</body>
</html>
ivashkevich 04.09.2019 в 21:20

Отлично

prinzplanloser0514@gmail.com 17.09.2019 в 21:41
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login == 'admin') {
    if ($password == 'Pa$$w0rd') {
        $authorization = 'Добро пожаловать';
    } else
        $authorization = 'Неверный пароль';
} else
    $authorization = 'Неверный логин'

?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?php echo $authorization ?>
</p>
</body>
</html>

Добрый день,похоже на правду?

ivashkevich 18.09.2019 в 17:46

Отлично

dliashchenko 25.09.2019 в 22:24
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

  if ($login === 'admin' && $password === 'Pa$$w0rd') {
        $isAuthorized = 'Логин и пароль верные!';
  } elseif ($login !== 'admin'){
    $isAuthorized = 'Логин не найден!';
  } else {
      $isAuthorized = 'Пароль неверный!';
  }
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isAuthorized; ?>
</p>
</body>
</html>
ivashkevich 27.09.2019 в 18:05

Отлично

prinzplanloser0514@gmail.com 26.09.2019 в 21:35
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?php
    if ($login == 'admin') {
        if ($password == 'Pa$$w0rd') {
            echo "Вы авторизовались";
        } else
            echo 'Неверный пароль';

    } else
        echo 'Неверный логин'
    ?>
</p>
</body>
</html>
ivashkevich 27.09.2019 в 18:06

Ок. Но лучше результат вычислить не посреди шаблона, а в самом начале.

H3licoptero 28.09.2019 в 11:40
$login = !empty($_GET['login']) ? $_GET['login'] : ' ';
$password = !empty($_GET['password']) ? $_GET['password'] : ' ';

if ($login === 'admin' && $password === 'Pa$$w0rd') {
    $isAuthorized = 'Логин и пароль верные!';
} elseif ($login === 'admin' && $password != 'Pa$$w0rd') {
    echo 'Пароль неверный.';
} elseif ($login != 'admin') {
    echo 'Пользователь не найден.';
}

?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isAuthorized ?>
</p>
</body>
</html>
ivashkevich 29.09.2019 в 12:03

Отлично

ZeeCaptain 09.10.2019 в 12:48
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : ' ';
$password = !empty($_GET['password']) ? $_GET['password'] : ' ';

if ($login === 'root' && $password === 'pass') {
    $isAuthorized = true;
} elseif($login !== 'root') {
    echo 'Пользователь не найден';
    return 0;
} else {
    $isAuthorized = false;
}
?>
<html>
<head>
    <title>Рузультат авторизации</title>
</head>
<body>
<p>
    <?= $isAuthorized ? 'Логин и пароль верные!': 'Логин и пароль не верные'?>
</p>
</body>
</html>
ivashkevich 09.10.2019 в 19:29

Не стоит по умолчанию для пустых значений использовать строку из пробелов. Либо просто пустую строку используй, либо null. И для чего возвращаешь 0?

Evilinside 16.10.2019 в 14:53
<?php
/*
 * Сейчас если переданы неверные логин или пароль, выводится информация о том, что либо одно, либо другое неверно.
 *
 * Добавьте дополнительное условие, которое будет говорить о том, что пользователь не найден, если переданный логин не ‘admin’. И если пользователь не найден,
 * то нет смысла проверять пароль, и это условие проверяться не будет. Если же логин ‘admin’, но пароль не совпадает, то писать о том, что пароль неверный.
 */
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login === 'admin' && $password === '12345') {
    $isAuthorized =  'Добро пожаловать!';
} elseif ($login !== 'admin') {

    $isAuthorized =  'Неверный логин!';

} else {

    $isAuthorized = 'Неверный пароль';
}
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p align="center">
    <?= $isAuthorized ?>
</p>
</body>
</html>
ivashkevich 16.10.2019 в 21:20

Всё ок, только переменные, начинающиеся со слова is, как правило имеют тип Boolean. Здесь лучше использовать другое имя. Это чтобы вы знали, переделывать не обязательно.

anton-gogo@mail.ru 18.10.2019 в 17:50

INDEX.PHP

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Hello,World!</title>
</head>
<body>
    <form action="login.php" method="get">
        <input type="text" name="login">
        <input type="password" name="pw">
        <input type="submit" value="Войти">
    </form>
</body>
</html>

LOGIN.PHP

<?php
$login= !empty($_GET['login']) ? $_GET['login'] : 'Логин не найден';
$pw= !empty($_GET['pw']) ? $_GET['pw'] : 'Пароль не найден';

if($login !== 'admin'){
    $signIn= 'Пользователь не найден';
}elseif($logjn === 'admin' || $pw !== '12345'){
    $signIn= 'Пароль введен неверно';
}else{
    $signIn= 'Все верно';
}

?>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Hello,World!</title>
</head>
<body>
    <p><?= $signIn?></p>
</body>
</html>
ivashkevich 18.10.2019 в 21:16

Что за $pw? Называй переменные понятно.

Передаю логин "123" и скрипт плюётся ошибкой.

anton-gogo@mail.ru 19.10.2019 в 11:53

$pw сокращенно $password. У меня все нормально работает)

ivashkevich 19.10.2019 в 12:04

Включи показ ошибок в php.ini. У тебя там используется неопределенная переменная.

anton-gogo@mail.ru 19.10.2019 в 13:41

login.php

<?php
$login= !empty($_GET['login']) ? $_GET['login'] : '';
$pw= !empty($_GET['pw']) ? $_GET['pw'] : '';

if($login !== 'admin'){
    $signIn= 'Неизвесный польователь';
}elseif($login === 'admin' && $pw !== '12345'){
    $signIn= 'Пароль введен неверно';
}else{
    $signIn= 'Все верно';
}

?>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Hello,World!</title>
</head>
<body>
    <p><?= $signIn?></p>
</body>
</html>

Все, понял. Сейчас ошибок не выдает)

ivashkevich 19.10.2019 в 15:22

Супер)

kvakazuabr 19.10.2019 в 09:25
if ($login !== $_GET['login') {
  echo "пользователь не найден";
} else {
  if ($password === $_GET['password']) {
    $isAuthorized = 'добро пожаловать на сайт';
  } else {
    $isAuthorized = 'не верный пароль';
  }
}

<html>

<head>
  <title>Результат авторизации</title>
</head>

<body>
  <p>
    <?= $isAuthorized?>
  </p>
</body>

</html>
ivashkevich 19.10.2019 в 11:14

Если логин не админ, то возникает ошибка.

zuxarevaalina88@gmail.com 20.10.2019 в 22:54
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login === 'admin') {
    if ($password === 'Pa$$w0rd') {
        $isAuthorized = 'Логин и пароль верные!';
    } else {
        $isAuthorized = 'Пароль неверный';
    }
} else {
    $isAuthorized = 'Пользователь не найден';
}
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isAuthorized ?>
</p>
</body>
</html>
ivashkevich 21.10.2019 в 04:59

Всё ок, только переменные, начинающиеся со слова is, как правило имеют тип Boolean. Здесь лучше использовать другое имя. Это чтобы вы знали, переделывать не обязательно.

zuxarevaalina88@gmail.com 21.10.2019 в 09:21

Спасибо!

handry.hard228@gmail.com 29.10.2019 в 23:46
<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login !== 'admin') {
    $result = 'Такого логина не существует!';
} else {
    if ($password === 'Pa$$w0rd') {
        $result = 'Авторизация прошла успешно!';

    } else {
        $result = 'Неверный пароль!';
    }
}
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $result ?>
</p>
</body>
</html>
ivashkevich 30.10.2019 в 04:31

Отлично

babur 12.11.2019 в 14:38

Здрасьте! опять ДЗ пож :)

<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login === 'admin' && $password === 'pass') {
    if ($login !== 'admin'){
        $isAuthorized = false;
    } else{
        $isAuthorized = false;
    }
    $isAuthorized = true;
}
?>
<html>
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $isAuthorized ? 'Логин и пароль верные!' : 'Неправильный логин или пароль' ?>
</p>
</body>
</html>
ivashkevich 12.11.2019 в 19:48

Если передать неверные логин и/или пароль, то будет ошибка.

andreskrip 13.11.2019 в 16:35

Спасибо за урок!

<?php
$login = !empty($_GET['login']) ? $_GET['login'] : '';
$password = !empty($_GET['password']) ? $_GET['password'] : '';

if ($login === 'admin') {
    if ($password === 'password') {
        $loginStatus = 'Логин и пароль верные!';
    } else {
        $loginStatus = 'Неверный пароль!';
    }
} else {
    $loginStatus = 'Пользователь не найден';
}

?>
<html lang="ru">
<head>
    <title>Результат авторизации</title>
</head>
<body>
<p>
    <?= $loginStatus; ?>
</p>
</body>
</html>
ivashkevich 13.11.2019 в 17:18

Всегда будет писать о том, что пользователь не найден.

andreskrip 13.11.2019 в 17:36

Отредактировал (вернул последнее else)

ivashkevich 13.11.2019 в 19:13

Теперь ок

Omigod@live.ru 26.11.2019 в 07:51
<?php

$login = $_GET['login'];
$password = $_GET['password'];
$login_sub = '';
$password_sub = '';

if (empty($login)) {
    $login_sub = 'Введите логин';
} elseif ($login !== 'admin') {
    $login_sub = 'Такой логин не найден';
} elseif (empty($password)) {
    $password_sub = 'Введите пароль';
} elseif ($password !== '123') {
    $password_sub = 'Неверный пароль';
}

if($login === 'admin') {
    $login_sub = 'Логин: ' . $login;
}
if($password === '123') {
    $password_sub = 'Пароль: ' . $password;
}

?>

<html>
<head>
    <title>GET-запросы, учение</title>
</head>
<body>
<?= $login_sub ?>
<br>
<?= $password_sub ?>
</body>
</html>

Пытался сделать через switch:

switch ($login) {
    case '':
        'Введите логин';
        break;
    case 'admin':
        if (empty($password)) {
            'Введите пароль';
        } elseif ($password !== '123') {
            'Неверный пароль';
        }
        break;
    default:
        'Такой логин не найден';
}

Но он отказывается работать, что только не пробовал. Сможете объяснить?
Upd: А, кажись понял почему, ни одно сообщение не присваивается переменными xD

switch ($login) {
    case '':
        $login_sub = 'Введите логин';
        break;
    case 'admin':
        if (empty($password)) {
            $password_sub = 'Введите пароль';
        } elseif ($password !== '123') {
            $password_sub = 'Неверный пароль';
        }
        break;
    default:
        $login_sub = 'Такой логин не найден';
}

Исправил

ivashkevich 27.11.2019 в 19:52
$login_sub - не нужно в переменных подчеркиваний. camelCase.

В остальном всё ОК!
Логические задачи с собеседований