Использование htmlspecialchars при выводе из базы

Guest2011

Новичок
Прочитал в интернете, что надо всегда обрабатывать данные перед выводом в поток функцией htmlspecialchars.
Данные, выводимые из базы в заголовок title, обработались без проблем.
А вот вывод основного контента:
<?php echo htmlspecialchars($myrow['text']); ?>

вывелся из базы не просто как текст, а с тегами.
(Т.к. в базе у меня в таблице поле text содержит теги).
Подскажите, пожалуйста, надо ли обрабатывать функцией htmlspecialchars вывод этого поля или каким другим способом произвести правильный вывод из базы, чтобы не было видно тегов разметки.
 
1. да, использовать всегда
2. не хранить засранный текст тегами (только чистый текст, теги добавить на лету)
 
DiMA
а если это статика создаваемая администратором?
 
В базе - только оригинальные данные без обвесок (типа объекта или массива) или оригинальный юзерский текст.
 
У меня сайт. Делаю как объясняет Е.Попов в курсе про Блог.
Сделал. Всё нормально. Но вот прочитал на сайте http://irbis-team.com/15/10/2 ,
что надо использовать перед выводом данных функцию htmlspecialchars.
У меня такая структура сайта как и у Е Попова.
У него есть файл view_post, который выводит разные страницы в зависимости от id, переданного методом GET.
Если использовать в базе только чистый текст без тегов, как предлагает DiMA, то тогда для вывода каждой страницы надо будет создавать собственный файл, ведь содержимое не шаблонное а отличается . А так всё компактно выводится одним файлом view_post
 
Guest2011
Не упоминай здесь о Жене больше никогда.
Я храню оба варианта.
1. Текст юзера в первозданном виде (дабы он не увивлялся если захочет редактировать).
2. Очищенный и подготовленный текст для вывода (Cтрипнутые html-теги, и замененныe bb-коды на html)
 
Я вывожу из базы свои данные - не юзера.
(Диалог с юзером на сайте пока не предполагается)
Стоит ли мне их обрабатывать функцией htmlspecialchars, или т.к. данные введены мной непосредственно в базу, то можно обойтись без этой функции?
Файл должен выводить разные страницы в зависимости от id, переданного методом GET.
Если использовать в базе только чистый текст без тегов, то тогда для вывода каждой страницы надо будет создавать собственный файл, ведь содержимое не шаблонное а отличается . А так всё компактно выводится одним файлом.
 
Я вывожу из базы свои данные - не юзера.
Да хоть президента.
Данные нужно обрабатывать __всегда__
В не зависимости от того, кто их добавляет.
 
Mr_Max написал(а):
Я храню оба варианта.
1. Текст юзера в первозданном виде (дабы он не увивлялся если захочет редактировать).
2. Очищенный и подготовленный текст для вывода (Cтрипнутые html-теги, и замененныe bb-коды на html)
Что-то одно тут лишнее.
 
skryisli
Нет. Подумай почему.
 
2. Очищенный и подготовленный текст для вывода (Cтрипнутые html-теги, и замененныe bb-коды на html)
скорее всего имелось в виду, что хранятся данные, готовые к выдаче на странице без всякого кодирования, ибо хранить одновременно стрипнутые теги и bb-коды, переведённые в html невозможно.
 
weregod
Можно, если удалять юзерский html, а потом преобразовывать bb-коды
 
> Файл должен выводить разные страницы в зависимости от id, переданного методом GET.

нет - страница одна, шаблон дизайна 1, а вот контент который берется из базы - разный - и без хтмл, минимум <b><a><u><i> и все, все остальное должно разгуливаться шаблонами и стилями

не храни разные страницы с версткой в базе.

и не читай больше попова.
 
Сверху