{% else-1 %}
Обновить
* Тема закрыта!
1.
Nets * 0.72
[автор] (21 июл 2016, 00:28) [0/0] [0] [спам] [под]

Думаю каждый задумывался на вопросом как же правильно фильтровать пред записью в бд.
Есть несколько вариантов фильтрации, но они не дают 100% защиты от sql-injection

1 вариант htmlspecialchars
<?php
$_POST['text'] = htmlspecialchars($_POST['text']);
?>
Ее конечно можно применять перед вставкой в базу, но не надо думать, что она защитит от инъекций. Инъекции - это не только кавычки.

2 вариант magic qoutes

<?php
$_POST['text'] = addcslashes($_POST['text']);
?>
Экранирует кавычи, но и опять же не стоит забывать, что: Инъекции - это не только кавычки.

***
Самой безопасной ф-цией считается mysql_escape_string но её нету в PDO, но в нем есть prepare/execute, что безопасно, но не совсем удобно, к примеру если нужно проверить существование строки в таблице нужно будет писать тонну кода, но куда проще использовать обычный запрос query
***

Выслушаю ваши варианты по поводу фильтрирования *

2.
Wins * 5.64
(21 июл 2016, 00:34) [1/0] [1] [спам] [под]

Использую mysqli и не парюсь. Хочу делаю подготовленный запрос, хочу обычный. htmlspecialchars лучше использовать при выводе данных а не при записи в базу.

3.
Nets * 0.72
[автор] (21 июл 2016, 00:38) [0/0] [0] [спам] [под]

Wins, по сути в pdo тоже самое, можно подготовленный, можно обычный, но обычный же надо фильтровать, вот к чему клоню

4.
Wins * 5.64
(21 июл 2016, 00:39) [0/0] [0] [спам] [под]

Nets, фильтрация это такая проблема?

5.
Nets * 0.72
[автор] (21 июл 2016, 00:40) [0/0] [0] [спам] [под]

Wins, а разве нет? Зачем тогда вообще делать проект если он изнутри не полностью защищен

6.
Wins * 5.64
(21 июл 2016, 00:42) [0/0] [0] [спам] [под]

Nets, в смысле? Я о том что профильтровать входящую переменную не составляет никакого труда.

7.
bibilink * 19.01
(21 июл 2016, 00:46) [0/0] [0] [спам] [под]

Пост #2.

А так, скажу, что тонн кода каждый раз не надо будет писать, если сделать или воспользоваться готовым классом обвёрткой для PDO.
В любом случае, используя подготовительные выражения, ничего фильтровать самому (при записи в бд), не надо. Это жирный плюс.


Изм. 2 раз. / Посл. изм.
bibilink * 19.01
(21 июл 2016, 00:47)
8.
Wins * 5.64
(21 июл 2016, 00:56) [0/0] [0] [спам] [под]
bibilink,

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

9.
bibilink * 19.01
(21 июл 2016, 01:01) [0/0] [0] [спам] [под]
Wins,

Я сегодня писал код в одном движке игры..
Так там разраб всего этого помимо prepare использовал еще и htmlspecialchars и ещё некоторые фильтры при выборке, записи.. Поехавший*

Оно (prepare) для этого по большей мере и было создано. Костылей на верх не надо.


Изм. 1 раз. / Посл. изм.
bibilink * 19.01
(21 июл 2016, 01:02)
10.
elfi * 10.05
(21 июл 2016, 01:29) [0/0] [0] [спам] [под]

юзайте ORM.


Изм. 1 раз. / Посл. изм.
Simptom * 1.82
(21 июл 2016, 02:26)
Подписаны: 2
Скачать тему | Файлы темы | Фильтр сообщений