Текстовая область для изменения HTML - рендеринг разрывов строк - PullRequest
0 голосов
/ 27 декабря 2011

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

Единственное, чего я хочу, это чтобы разрывы строк отображались в текстовой области в дополнение к тегам <p></p> и <h1></h1>, в противном случае это гигантская стенка текста, которую действительно трудно прочесть.Я не хочу, чтобы разрывы строк удваивались после сохранения изменений, хотя следующим шагом будет преобразование всего текстового поля в файл PDF.

ETA: nl2br () не работаетпотому что нет никаких разрывов строк для начала.Содержимое собирается из абзацев в базе данных MySQL с использованием цикла.Теги

также вставляются во время цикла.

Какой лучший способ сделать это?Я использую PHP.

О, PS - я знаю о проблемах безопасности, связанных с отсутствием удаления тегов.Эта страница только для администратора (меня) и будет защищена паролем.

Ответы [ 2 ]

0 голосов
/ 27 декабря 2011

Перед отправкой данных в текстовое поле поместите переменную в функцию nl2br () и отправьте ее в текстовое поле.

0 голосов
/ 27 декабря 2011

Может быть, вы можете сначала отфильтровать их, прежде чем показывать textarea? Может быть, что-то вроде этого (добавить новую строку после закрывающего тега):

$rawhtml = str_replace(array("</p>", "</h1>"), "\n", $rawhtml);
...