Как отобразить сохраненные данные так, как они были отформатированы пользователем? - PullRequest
0 голосов
/ 13 января 2012

У меня есть текстовая область в качестве ввода в моей HTML-форме. Когда любой пользователь пишет что-то вроде следующего (я пытаюсь указать разрывы строк):

The quick brown fox jumps **over**
the lazy dog

И когда он сохраняется в базе данных, и я извлекаю его и отображаю его, он отображается без разрывов строк, это выглядит следующим образом:

The quick brown fox jumps over the lazy dog

Подскажите, пожалуйста, как отобразить сохраненные данные так, как они были отформатированы пользователем?

Когда я отображаю данные, я просто извлекаю информацию из базы данных обычным способом, а затем просто отображаю ее так: <? echo $value_text ;?>

Заранее спасибо: 0

Ответы [ 3 ]

3 голосов
/ 13 января 2012

Вы должны сделать

echo nl2br(htmlspecialchars($value_text));

nl2br() - htmlspecialchars()

1 голос
/ 13 января 2012

Вам просто нужно обернуть текст в функцию nl2br() следующим образом: <? echo nl2br($value_text);?>.Это преобразует все новые строки в теги <br>.

Когда ваша страница загружается, эхо php интерпретируется как html.Как вы знаете, новые строки в HTML не влияют на макет страницы.Вот почему вам нужно преобразовать каждый разрыв строки в тег <br>.

1 голос
/ 13 января 2012

Вы уверены, что разрывы строк не существуют?

Если вы используете это на веб-сайте, вам может потребоваться заменить разрыв строки тегом
.

echo nl2br($data);

http://us.php.net/nl2br

Или вы можете альтернативно обернуть текст в <pre> теги

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