Проверки на заполненность полей
Проверки на заполненность полей
В общем как сделать проверки на поля, которые контачат с базой данных? Есть к примеру в поле login, email, pass. Что надо написать, чтобы вписав в одно из этих полей к примеру ; DROP TABLE users; и нажать энтер,не стиралась вся база данных) И вообще на подобные штуки)
Re: Проверки на заполненность полей
Т. е. вы используете значения текстовых полей как запросы к БД? Или я не понимаю чего-то.
Re: Проверки на заполненность полей
mysql_real_escape_string или mysqli_real_escape_string, смотря что используется.
Re: Проверки на заполненность полей
Ну вот у меня флеш регистрация. Во флешке поля, которые заполняются и после нажатия на кнопки данные записываются в БД. Но вот если вместо обычного логина, написать ; DROP TABLE users;, то база данных стирается) Как этого избежать?
Re: Проверки на заполненность полей
автор, выше все правильно сказано=)
З.Ы. мне кажется ясно какой крутой будет игра
это функции пхп для обезвреживания запроса=)mysql_real_escape_string или mysqli_real_escape_string, смотря что используется.
З.Ы. мне кажется ясно какой крутой будет игра
Re: Проверки на заполненность полей
А кто сказал что мне это надо для игры?Оо
Re: Проверки на заполненность полей
Человек хочет научиться делать правильно, вот и спрашивает совета это же похвально. А в него сразу помидорами.
MrDead, для фильтрации входящих строковых переменных используйте регулярные выражения. Это позволит вам не только избежать инъекций, но и проверить данные на валидность. Чтобы узнать подробнее загуглите одноименным запросом, по ним информации в сети океан и маленькая речка.
Числовые же удобно отсеивать явным приведением типа. Например:
Ну и как вам уже посоветовали выше экранируйте спец символы функциями типа mysql_real_escape_string. Кроме того PDO и MySQLi поддерживают подготавливаемые запросы, они тоже защищают от инъекций первого порядка.
MrDead, для фильтрации входящих строковых переменных используйте регулярные выражения. Это позволит вам не только избежать инъекций, но и проверить данные на валидность. Чтобы узнать подробнее загуглите одноименным запросом, по ним информации в сети океан и маленькая речка.
Числовые же удобно отсеивать явным приведением типа. Например:
Код: Выделить всё
$id = (int)$_POST['id']; //Делаем явное приведение к int если в $_POST['id'] было целое число, то оно и попадет в $id. В противном случае $id будет равна 0
Re: Проверки на заполненность полей
Спасибо всем за советы)