PHP MySQL настраиваемый блог, форматирование поста - PullRequest
0 голосов
/ 01 ноября 2010

Я создаю свой собственный блог на PHP и хочу узнать ваше мнение о том, как мне следует форматировать содержимое моего сообщения.

В настоящее время я сохраняю содержимое сообщения в виде простого текста, при необходимости вызываю его, затемоберните каждую строку P-тегами.Я сделал это на случай, если захочу изменить способ форматирования текста в будущем, и это избавит меня от необходимости удалять все теги P из сообщений в БД.

Теперь проблема, с которой я столкнулсяЭтот метод заключается в том, что если я хочу добавить дополнительное форматирование, например, списки и т. д., они также будут обернуты тегами P, что неверно.

Как бы вы это сделали, вы бы сохранили текст в виде простого текста вБД, или вы бы добавили форматирование HTML и сохранили бы его в БД в?

Я бы предпочел не хранить ненужный HTML в БД, но не уверен, что есть способ обойти это?

Ответы [ 4 ]

2 голосов
/ 01 ноября 2010

Я думаю, что лучшим способом было бы сохранить HTML в БД. Если бы вы не использовали html, у вас было бы слишком много работы с анализом текста.

Посмотрите, как это делается в других инструментах блога. Я знаю, что Joomla, например, хранит все HTML в БД. Я знаю, что Joomla не инструмент для блогов :), но все же ...

1 голос
/ 01 ноября 2010

Wordpress хранит HTML в БД.Вы говорите, что беспокоитесь о хранении «ненужного» HTML в БД.Что делает это ненужным?Я думаю, что это наоборот.В вашем сообщении могут быть заголовки, жирный или курсивный текст.Если вы сохраняете в виде простого текста, как вы сохраните это форматирование?Как вы сохраняете списки, которые вы упомянули?

0 голосов
/ 17 сентября 2011

Я считаю, что лучше хранить необработанные пользовательские данные в базе данных и форматировать их при выводе, кэшируя результаты, если они необходимы.Таким образом, вы можете легко изменить способ анализа, не прибегая к регулярным выражениям или замене чего-либо внутри базы данных.Вы также можете сохранить необработанный ввод в одном столбце, а отформатированный HTML - в другом.

Я предполагаю, что вы форматируете необработанный текст с помощью Markdown или Textile синтаксис?

0 голосов
/ 01 ноября 2010

Если вы храните HTML в своей БД, вы будете всего в нескольких кликах от вашей текущей ситуации: вы можете использовать strip_tags() для удаления форматирования HTML, а в случае более крупных изменений вы можете запустить HTML Tidy для своего кода, чтобы переназначить теги и классы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...