Обучение/Помощь новичкам | вопрос по pdo
Тема закрыта by
SNEG
TuT (10.08.2017 в 01:40)
shadrvlad (09.08.2017 в 23:22)
TuT (09.08.2017 в 21:49)
SNEG , В данном варианте функция execute(); нам не нужна, она идет на изменение таблиц, удаление/создание/перезапись.
В твоем случае:
if($pdo->query("SELECT * FROM `users` WHERE `login` = '".$login."' LIMIT 1")->rowCount() != 0){
$error .= 'Логин уже зарегистрирован! Выберите другой!<br/>';
}
Если дублировать полностью запрос.
серьезно? где это такое написано?
По вашему в этом коде ошибка? Так поясните, или мы собираем какую то огромную конструкцию? При том что ещё и применяем execute(), человек не хочет читать инфу по PDO, я в кратце указал. Читайте внимательнее тему.
shadrvlad (09.08.2017 в 23:22)
TuT (09.08.2017 в 21:49)
SNEG , В данном варианте функция execute(); нам не нужна, она идет на изменение таблиц, удаление/создание/перезапись.
В твоем случае:
if($pdo->query("SELECT * FROM `users` WHERE `login` = '".$login."' LIMIT 1")->rowCount() != 0){
$error .= 'Логин уже зарегистрирован! Выберите другой!<br/>';
}
Если дублировать полностью запрос.
серьезно? где это такое написано?
По вашему в этом коде ошибка? Так поясните, или мы собираем какую то огромную конструкцию? При том что ещё и применяем execute(), человек не хочет читать инфу по PDO, я в кратце указал. Читайте внимательнее тему.
Такая каша, используется, когда явно, данные из бд, и то, не стоит доверять таким данным, всякое бывает. А потом плакаете, чего взломали. Не сложно написать 1 строчку для выполнения подготовленного запроса и спать спокойно
ошибка в том, что PDO юзать, и есть весь сок, в подготовленных запросах,
а вы, мало того, хз что написали, так ещё и переменную, хз откуда в запрос подставили
вопрос, зачем пдо юзать тогда?
________
посл. ред. 10.08.2017 в 02:38; всего 2 раз(а); by Avenax
Avenax (10.08.2017 в 02:26)
TuT ,
В данном варианте функция execute(); нам не нужна, она идет на изменение таблиц, удаление/создание/перезапись.
если $login = $_POST['login'] . то нормально да?
то, что красным, вообще убило
ах, да, почитайте, когда используют rowCount()
TuT ,
В данном варианте функция execute(); нам не нужна, она идет на изменение таблиц, удаление/создание/перезапись.
если $login = $_POST['login'] . то нормально да?
то, что красным, вообще убило
ах, да, почитайте, когда используют rowCount()
Извиняюсь, то что запрос на ввод текста идет через $_POST, как то выскочило, да и не критично, опять же, человек не хочет изучать мануал по PDO, так тогда бы и разъяснили что и к чему идет, и в каких ситуациях лучше применить execute(), да и вообще, от куда $login = $_POST['login'], вы код видели? Нет, человек спросил, я ответил. Просто показал пример запроса на PDO. В чем проблема то?
TuT ,
Это я писал?
Причем тут текст или нет? Данные должны фильтроваться всегда
if($pdo->query("SELECT * FROM `users` WHERE `login` = '".$login."' LIMIT 1")->rowCount() != 0){
$error .= 'Логин уже зарегистрирован! Выберите другой!<br/>';
}
$error .= 'Логин уже зарегистрирован! Выберите другой!<br/>';
}
Это я писал?
Причем тут текст или нет? Данные должны фильтроваться всегда
TuT (10.08.2017 в 02:47)
Извиняюсь, то что запрос на ввод текста идет через $_POST, как то выскочило, да и не критично , опять же
Извиняюсь, то что запрос на ввод текста идет через $_POST, как то выскочило, да и не критично , опять же
Согласен, все хорошо
Avenax , Вы меня не поняли. Человек спросил P.S Хочу по быстрому уловить смысл запросов не горю читать мануалы и т.п.. . Что ещё тут нужно??? Если он не хочет, что мне теперь ему все разжевать и положить на блюдце? Он спросил, я ответил. Задал бы вопрос как правильно подготовить запрос в базу, был бы другой разговор.
TuT , причем тут это?
Такие как вы, и учите плохому. Написать подготовленный запрос. Сказать что, класс сам все фильтрует, что знак ? Или :id -это плейсхолдеры и все, вставляй в execute массив. Вот сложно. Нет, нужно учить писать дыроко д/л
Такие как вы, и учите плохому. Написать подготовленный запрос. Сказать что, класс сам все фильтрует, что знак ? Или :id -это плейсхолдеры и все, вставляй в execute массив. Вот сложно. Нет, нужно учить писать дыроко д/л
Avenax , При чем здесь учить писать дырокод? Вы меня не поймете не как, каков был вопрос, таков и ответ.
Может вы за него будете учить и писать все?
Может вы за него будете учить и писать все?
DELETED
10 августа 2017, в 8:00
Delete
TuT (10.08.2017 в 01:40)
shadrvlad (09.08.2017 в 23:22)
TuT (09.08.2017 в 21:49)
SNEG , В данном варианте функция execute(); нам не нужна, она идет на изменение таблиц, удаление/создание/перезапись .
В твоем случае:
if($pdo->query("SELECT * FROM `users` WHERE `login` = '".$login."' LIMIT 1")->rowCount() != 0){
$error .= 'Логин уже зарегистрирован! Выберите другой!<br/>';
}
Если дублировать полностью запрос.
серьезно? где это такое написано?
По вашему в этом коде ошибка? Так поясните, или мы собираем какую то огромную конструкцию? При том что ещё и применяем execute(), человек не хочет читать инфу по PDO, я в кратце указал. Читайте внимательнее тему.
shadrvlad (09.08.2017 в 23:22)
TuT (09.08.2017 в 21:49)
SNEG , В данном варианте функция execute(); нам не нужна, она идет на изменение таблиц, удаление/создание/перезапись .
В твоем случае:
if($pdo->query("SELECT * FROM `users` WHERE `login` = '".$login."' LIMIT 1")->rowCount() != 0){
$error .= 'Логин уже зарегистрирован! Выберите другой!<br/>';
}
Если дублировать полностью запрос.
серьезно? где это такое написано?
По вашему в этом коде ошибка? Так поясните, или мы собираем какую то огромную конструкцию? При том что ещё и применяем execute(), человек не хочет читать инфу по PDO, я в кратце указал. Читайте внимательнее тему.
а что sql инъекции отменили у нас если совать переменные напрямую???
в коде ошибка, переменная засунута в запрос от пользователя, а это sql инъекция!
повторюсь, где написано что функция execute() только на обновление(красное)?
зеленое - какую огромную конструкцию? как связано это с execute()? в каком вкратце, чтобы у человека sql инъекция осталась?
DELETED
10 августа 2017, в 8:02
Delete
TuT (10.08.2017 в 03:16)
Avenax , При чем здесь учить писать дырокод? Вы меня не поймете не как, каков был вопрос, таков и ответ.
Может вы за него будете учить и писать все?
Avenax , При чем здесь учить писать дырокод? Вы меня не поймете не как, каков был вопрос, таков и ответ.
Может вы за него будете учить и писать все?
вот вопрос блин!
Правильно я перенес с MySQL на PDO запрос?
И правильно я понял prepare и execute это безопасные запросы никаких фильтров не надо от sql inj??
человек про execute() спрашивает!!!!!!!
SNEG , PDO - необоснованное убийство ресурсов машины. То. что тебе написали на нормальном SQLi можно в 1 строку уложить. Но, дело Ваше что использовать.