[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Безопасен ли такой код?
Lightt
$test = (int)$_POST['test'];
$t = mysql_query("SELECT `id`,`name` FROM `table` WHERE `id`='".$test."'");


Вроде что бы не писали, всегда будет число. Или можно как то обойти?
123456
Все нормально, не парься!
$test = (int)$_POST['test'];
$t = mysql_query("SELECT `id`,`name` FROM `table` WHERE `id`=".$test);
inpost
Lightt
Бояться всего - зло. Почитай на php.net , что делает (int) и отпадут сомнения.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Lightt
inpost
Сомнения никогда не должны отпадать) если в 2015 он безопасен, не факт, что так будет и в 2025)
Вот и уточняю на всякий случай) мало ли что изобрести успели)
Игорь_Vasinsky
Lightt
число уже несколько тыс. лет остается числом.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
inpost
Lightt
Вот я и говорю, неправильная паника. Только вредит.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
AllesKlar
Lightt
$test = ! empty($_POST['test']) ? (int)$_POST['test'] : 0;

Иначе Notice схлопочешь.

_____________
[продано копирайтерам]
stump
Открой для себя filter_input чтобы никогда не сомневаться.

_____________
Трус не играет в хокей
inpost
stump
А в чём разница между (int) и filter_input для int ? Разные числа появляются? dry.gif

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
icedfox
Цитата (stump @ 2.09.2015 - 10:29)
Открой для себя filter_input чтобы никогда не сомневаться.

я бы не стал так на него полагаться, не все правила в нем корректны в наших реалиях. Да и для проверки на число совсем не обязательно делать дополнительный шаг.
или $val -> is_int
или $val -> filter_input -> is_int
inpost
icedfox
Ок, В чём некорректно работает filter_input для чисел? laugh.gif

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
icedfox
Цитата (inpost @ 3.09.2015 - 15:54)
Ок, В чём некорректно работает filter_input для чисел?

я не про числа, в числах идентичен стандартной проверке. Я разве так однозначно сказал про его работу с числами ? wink.gif
inpost
icedfox
Так мы же тут, вроде, int обсуждали ) Видимо я неправильно тебя понял.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.