Скрипт защиты от xss-атак через id:
if ( is_numeric($_GET['id']) ) { $id = $_GET['id']; }
либо
if ( is_numeric($_GET['id']) == TRUE ) { $id = $_GET['id']; }
Еще один аналогичный скрипт:
if ( is_string($_GET['id']) ) { $id = $_GET['id']; }
Непонятно почему, но они не работают на хостинге Инфобокс! Т.е. я задаю id get-методом, например, index.php?id=123абв и $id получается равно 123абв вместо 123. Почему?
Особенно удивило, что даже с таким id данные извлекаются и БД. Тоже не понятно. Хотелось бы узнать почему? id ведь получается не только из цифр. Т.е. если задать $id равной 123абв, то из базы будет выбрана тема с id 123. Как так? :)
Спустя 11 минут, 43 секунды (17.12.2010 - 23:58) inpost написал(а):
Фильтрация через (int) не подойдет?
$_GET['id'] = (int)$_GET['id'];
Спустя 16 минут, 17 секунд (18.12.2010 - 00:14) ak167 написал(а):
inpost, ооо... точняк! Вот это работает! Спасибо, брат!=)