Условия-где ошибка?
1.
Серёга (08.04.2015 / 21:47)
И снова здравствуйте,вот как не пытался перекруть то что просмотрел в ролике,ну все равно выдает ошибку...Что тут не так?
<?php
$password = 19994;
$login = "Kadet8";
if ($login == "Kadet8" and $password == 1994) echo "Вы вошли в систему";
else if ($password != 1994){
echo "Вы ввели не верный пароль";};
else if ($login == "Kadet8"){
echo "Но логин верный";};
?>
а вот сама ошибка:syntax error, unexpected T_ELSE in S:\home\test1.ru\www\lesson2.php on line 9
2.
Евгений (08.04.2015 / 22:03)
После } символ ; не нужен
3.
Руслан (08.04.2015 / 22:09)
2.
Ronson, поясни пожалуйста почему не нужен? я сам только начал обучаться и мне тоже интересен этот момент.
4.
Серёга (08.04.2015 / 22:12)
2.
Ronson, на видео уроках показано что они ставятся после выполнения проверки...и если я его убираю,то правильность логина не выводиться...
Добавлено через 07:40 сек.
так и ненашел причены,сррабатывает лишь если я вместо else if применяю на проверку логина функцию if,то пишет что логин верен...
5.
Игорь (08.04.2015 / 22:27)
<?php
$password = 19994;
Нет ошибки? И да, убирай ; после }
Почитай хотя бы раздел про синтаксис изучаемого языка (По теме:
http://php.net/manual/ru/control-structures.elseif.php)
6.
Dmitry Kokorin (08.04.2015 / 22:32)
<?php
if('условие'){
//если верно
}else if('условие 2'){
//если верно 2
}else{
//если ни то ни другое
}
7.
Игорь (08.04.2015 / 22:36)
Товарищ
DimmoS верно привел пример, писать elseif без конечного else - моветон.
Советую не делать условия\выводить сообщения: "Вы ввели не верный пароль" и "Но логин верный", не есть хорошо.
8.
Dmitry Kokorin (08.04.2015 / 22:38)
<?php
$password = 19994;
$login = "Kadet8";
if ($login == "Kadet8" and $password == 1994){
echo "Вы вошли в систему";
}else if ($password != 1994){
echo "Вы ввели не верный пароль";
}else if ($login != "Kadet8"){
echo "Вы ввели неверный логин";
}else{
echo "Неизвестная ошибка";
}
?>
9.
Евгений (09.04.2015 / 00:03)
Mirtos (8 Апреля 2015 / 22:09)
2. Ronson, поясни пожалуйста почему не нужен? я сам только начал обучаться и мне тоже интересен этот момент.
Прочитай про синтаксис PHP.
10.
Руслан (09.04.2015 / 01:05)
rezent (8 Апреля 2015 / 22:27)
<?php
$password = 19994;
Нет ошибки? И да, убирай ; после }
Почитай хотя бы раздел про синтаксис изучаемого языка (По теме: http://php.net/manual/ru/control-structures.elseif.php)
Спасибо
11.
Антон (09.04.2015 / 04:27)
8.
DimmoS,
<?php
$password = 19994;
$login = 'Kadet8';
if ($login === 'Kadet8' && $password === 1994){
echo 'Вы вошли в систему';
}else if ($password !== 1994){
echo 'Вы ввели не верный пароль';
}else if ($login !== 'Kadet8'){
echo 'Вы ввели неверный логин';
}
В рамках текущего примера.
12.
Серёга (09.04.2015 / 05:27)
СПС.теперь понял...
13.
Сергей (09.04.2015 / 06:43)
1.
Kadet8, старайся писать конструкцию правильно
if($login=="login"){echo "это мой логин";}else{echo "это не мой логин";}
14.
Серёга (09.04.2015 / 07:41)
И ещё вопрос это и есть так называемая фильтрация?или фильтрация это проверка существует ли переменная вообще?
15.
Dmitry Kokorin (09.04.2015 / 13:23)
14.
Kadet8,
<?php
htmlspecialchars($val)
strip_tags($val)
$val = htmlspecialchars(strip_tags(trim($_GET['val'])));
$result = $db->query("SELECT `pass` FROM `users` WHERE `login`='".$db->real_escape_string($val)."' LIMIT 1");
16.
Антон (09.04.2015 / 15:44)
14.
Kadet8, это простой пример строгой проверки, а фильтрация это.. Фильтрация.
17.
shilo (11.04.2015 / 00:21)
Совет: не делай разные ошибки для неправильного логина и пароля.
Так не делает никто, и явно не просто так... может для того что-бы осложнить брут?
18.
ramzes (11.04.2015 / 00:55)
shilo (11 Апреля 2015 / 00:21)
Совет: не делай разные ошибки для неправильного логина и пароля.
Так не делает никто, и явно не просто так... может для того что-бы осложнить брут?
так делают оооочень многие.
юзерфрендли. не не слышали?
логин запоминается и вставляется в форму при повторной попытке авторизации.
это позволит юзеру не набирать его снова, а брутфорсу насрать на то что вы там отдаете, если это не "ок",
и да, лечить манию преследования надо уже 80% интернет пользователей.
Кому вы нужны то?
Добавлено через 08:16 сек.
Kadet8 (9 Апреля 2015 / 07:41)
И ещё вопрос это и есть так называемая фильтрация?или фильтрация это проверка существует ли переменная вообще?
фильтрация это очистка входящих данных от потенциально опасных символов (%$`&" и т.д.)
зачастую сводится к тому что заменяет символ его ASCII кодом, который при выводе в хтмл коде отображается как изначальный символ, но интерпретатором во время обработки кода воспринимается как обычный текст(неисполняемый)
19.
ramzes (11.04.2015 / 01:09)
например
echo' это кавычка => [color=#ff0000] '[/color] опасна';
выделенная красным кавычка воспримется именно как кавычка, и будет соответственно интерпретирована, что вызовет ошибку.
echo' это кавычка => [color=#0000ff]\[/color]' безопасна';
слештрование кавычек, , обратный слеш в данном случае, сообщает машине, что кавычка не интерпретируемая, и воспринимается только как текст, ошибки не выведет, на экране будет кавычка, слеша не будет.
В интернете много примеров хорошей и плохой фильтрации.
плохая бывает недостаточной, избыточной, и неуместной, вся остальная фильтрация хорошая.
20.
Антон (11.04.2015 / 03:03)
19.
ramzes, есть куча либ для фильтрации, так сказать далеко ходить за примерами не надо, бери да рассматривай и юзай.
21.
ramzes (11.04.2015 / 16:27)
20.
WmLiM, ему сначала понять надо что это и зачем, использование в тупую, без изучения сути ведет к деградации
22.
Сергей (11.04.2015 / 17:03)
Kadet8 (9 Апреля 2015 / 06:41)
И ещё вопрос это и есть так называемая фильтрация?или фильтрация это проверка существует ли переменная вообще?
Автор ,
http://php.net/manual/ru/function.filter-var.php , дерзай .
URL:
https://visavi.net/topics/42220