Я разрабатываю простое приложение базы данных PHP для внутреннего использования, но хотел бы написать его в соответствии с лучшими практиками. Некоторые из моих страниц получают целочисленные значения от запросов GET, и мне просто интересно, какой объем проверки и очистки действительно требуется.
В настоящее время я использую $num = filter_input(INPUT_GET, 'num', FILTER_VALIDATE_INT, $num_options); с указанными минимальными и максимальными значениями. Отсюда я выхожу с сообщением об ошибке, если $num == false
Необходимо ли также использовать $mysqli->real_escape_string($num);
В настоящее время я не беспокоюсь, потому что думаю, что довольно сложно выполнить SQL-инъекцию с использованием целого числа...
Чтобы прояснить запрос, который я делаю, выглядит следующим образом
$sql = "SELECT employeeID, concat(FirstName, ' ', LastName) as Name FROM employee WHERE employeeID='$num'";
Подробнее здесь: https://stackoverflow.com/questions/965 ... r-integers