Предотвращение инъекций SQL – GET_VARS

У меня есть URL-адрес, который, когда действительный, будет выглядеть так:

site.com/page.php?id=12345 

Я пытаюсь понять, можем ли мы подделывать SQL-инъекцию. В этом конкретном случае значение должно быть только положительным целочисленным значением, так как оно является идентификационным номером. Иногда мы используем другие переменные, которые могут быть буквой или строкой текста, например, страницами результатов поиска.

Пример кода, используемого для извлечения идентификационной переменной, приведен ниже:

 $variable = "0"; if (isset($HTTP_GET_VARS["id"])) { $variable = (get_magic_quotes_gpc()) ? $HTTP_GET_VARS["id"] : addslashes($HTTP_GET_VARS["id"]); } 

В большинстве случаев получение переменной из URL-адреса, к ней обращаются таким образом.

Это что-то делает для предотвращения инъекций sql?

Должен ли я использовать mysql_real_escape_string?

Я читал о подготовленных заявлениях, но это кажется сложным, и мы используем эти переменные повсюду на сайте с большим количеством страниц и запросов. Прохождение и замена их просто не жизнеспособны в краткосрочной или среднесрочной перспективе.

Если бы был альтернативный способ проверки данных без подготовленных заявлений, любые советы были бы высоко оценены.

Заранее спасибо.

Это что-то делает для предотвращения инъекций sql?

Нет.

Должен ли я использовать mysql_real_escape_string?

Нет.

Если бы был альтернативный путь.

Нет.
Каждый способ потребует перезаписи всего кода – так или иначе.

Однако выбор за вами.
Если ценность сайта не стоит усилий, необходимых для правильной перезаписи – хорошо, сохраните его как есть.
Если значение высокое – попробуйте нанять кого-то, чтобы сделать работу, например.