Смысл в том, что у меня есть полноценный работающий веб-сайт с множеством обращений к серверу MySQL и, проводя некоторые исследования на этом сайте, я обнаружил, что делаю мои запросы в этой форме:
$query = sprintf("SELECT * FROM users WHERE user='%s' AND password='%s'",
mysql_real_escape_string($user),
mysql_real_escape_string($password));
Я могу решить проблему безопасности, но, как я уже сказал, у меня много обращений к серверу MySQL, и лучший способ (в моем случае) решить эту проблему - перейти непосредственно к переменным, которые я передаю в запрос, но без использования функции MySQL, потому что я вне запроса. Позвольте мне объяснить это, у меня есть это:
mysql_query("SELECT * FROM `post` WHERE id=" . $_GET['edit']);
Я не могу внести изменения в этот запрос, потому что у меня есть много всего этого в коде, поэтому я предпочитаю проверять наличие инъекций в var, $ _GET ['edit'].
Как я могу использовать чистую проверку PHP для SQL-инъекций в переменные запросов? Как:
$_GET['edit']=freehack($_GET['edit']);