В каком виде хранить данные в PDO?
Тема: Соцопрос. В каком виде лучше хранить данные в БД.
Вопрос прост.
Раньше в PHP<5.3 активно использовался сырой MySQL и естественно, для пущей безопасности люди старались максимально обезопасить себя от SQL-инъекций и хранили данные в БД в виде уже обработанных строк как минимум - обычным htmlspecialchars() или чего-то серьезней. А переносы строк - в подготовленном виде <br /> (для простоты вывода информации, просто вывел строку на экран - и все красиво).
С появлением PDO и подготовленных запросов начался холивар, как лучше и проще хранить данные.
- Первые говорят, что лучше хранить в сыром виде, т.к. на безопасность это уже не влияет, но места занимает меньше.
- Вторые настаивают на том, что на место это особо не влияет, но удобство для вывода на экран - на лицо. И инъекции исключает на миллион% даже при дырах в PDO, не зависящих от тебя. И не надо заморачиваться с отображением переносов строк.
Как вы поступаете? Я раньше был приверженец 1-го способа (экранировать данные прямо в БД), но решив перейти на 2-й (без экранирования данных в БД) и перечитав кучу холиваров, вроде решил остаться на первом.
Посоветуйте что-то и обоснуйте в комментах свой голос. Сенкс.
Раньше в PHP<5.3 активно использовался сырой MySQL и естественно, для пущей безопасности люди старались максимально обезопасить себя от SQL-инъекций и хранили данные в БД в виде уже обработанных строк как минимум - обычным htmlspecialchars() или чего-то серьезней. А переносы строк - в подготовленном виде <br /> (для простоты вывода информации, просто вывел строку на экран - и все красиво).
С появлением PDO и подготовленных запросов начался холивар, как лучше и проще хранить данные.
- Первые говорят, что лучше хранить в сыром виде, т.к. на безопасность это уже не влияет, но места занимает меньше.
- Вторые настаивают на том, что на место это особо не влияет, но удобство для вывода на экран - на лицо. И инъекции исключает на миллион% даже при дырах в PDO, не зависящих от тебя. И не надо заморачиваться с отображением переносов строк.
Как вы поступаете? Я раньше был приверженец 1-го способа (экранировать данные прямо в БД), но решив перейти на 2-й (без экранирования данных в БД) и перечитав кучу холиваров, вроде решил остаться на первом.
Посоветуйте что-то и обоснуйте в комментах свой голос. Сенкс.
В сыром виде, и можно не париться. (Голоса: 5)
В экранированном обязательно. (Голоса: 2)
Ты дебил или чо? Покури мануалы. Сейчас обосную. (Голоса: 1)
В любом виде, это не влияет на производительность. (Голоса: 0)
Проголосовавшие: 8Проголосовавшие