WebGraf » 2009.12.08 16:55 |
mysql_query("SELECT `id` FROM `files` WHERE `id`='$d' ;"); или mysql_query('SELECT `id` FROM `files` WHERE `id`="'.$d."' '); со стороны защиты как полагается? Добавлено спустя 7 минут 9 секунд: При условии что $id передается гет или пост способом |
DarkDaNTe » 2009.12.08 18:35 |
никакая. У тебя не та переменная в запросе, которую ты указывал. ($id) И вообще при чем защита в "" или '' кавычках? |
Fuelen » 2009.12.08 18:54 |
WebGraf написал:mysql_query("SELECT `id` FROM `files` WHERE `id`='$d' ;"); или mysql_query('SELECT `id` FROM `files` WHERE `id`="'.$d."' '); со стороны защиты как полагается? Добавлено спустя 7 минут 9 секунд: При условии что $id передается гет или пост способом
Если фильтрировал значение переменной перед запросом, то опасности иньекции нет. |
НЕЗНАЙКА » 2009.12.08 19:00 |
У тебя и так ничего не пройдет:lol: Запрос неверный. Фильтр abs($_GET['d']) и не беспокойся |
WebGraf » 2009.12.08 19:43 |
это только пример. подставьте другую переменную ну к примеру так mysql_query("SELECT `name` FROM `files` WHERE `id`='".mysql_real_escape_string$_GET['d']."' ;"); |
Gemorroj » 2009.12.08 20:39 |
очень желательно иметь переменную с ресурсом коннекта к бд еще. mysql_query("SELECT `name` FROM `files` WHERE `id`='" . mysql_real_escape_string($_GET['d']) . "' ;"); вполне достаточно |
WebGraf » 2009.12.08 23:08 |
Gemorroj написал:очень желательно иметь переменную с ресурсом коннекта к бд еще. mysql_query("SELECT `name` FROM `files` WHERE `id`='" . mysql_real_escape_string($_GET['d']) . "' ;"); вполне достаточно
а если такой же код но с одинарными кавычками? "переменную с ресурсом коннекта" - а что оно меняет? |
Morgan » 2009.12.08 23:22 |
А чем вам mysql_query("SELECT name FROM table WHERE `id`=".intval($_GET['id'])) |
WebGraf » 2009.12.08 23:33 |
Я не говорил что переменная $d числовая id навел просто как пример. может ведь использоватся и name files ... короче все что угодно Я просто хотел более глобально рассмотреть ситуацию, а не конкретный пример Добавлено спустя 2 минуты 19 секунд:
Morgan написал:А чем вам mysql_query("SELECT name FROM table WHERE `id`=".intval($_GET['id']))
смотрите мой ответ Незнайке |
WebGraf » 2009.12.08 23:54 |
на счет фильтрации, то все переменные в запросах фильтруются у меня , если стринг то htmlspecialchars и mysql_real_escape_string, если числовое то intval |
WebGraf » 2009.12.12 11:27 |
WebGraf написал:Gemorroj написал:очень желательно иметь переменную с ресурсом коннекта к бд еще. mysql_query("SELECT `name` FROM `files` WHERE `id`='" . mysql_real_escape_string($_GET['d']) . "' ;"); вполне достаточно
"переменную с ресурсом коннекта" - а что оно меняет?
? |
Gemorroj » 2009.12.12 11:54 |
у тебя всегда будет актуальный ресурс, а не ПОСЛЕДНИЙ открытый. |