#php #jquery #html #forms
#php #jquery #HTML #формы
Вопрос:
Я использовал функцию jquery serialize()
для формы, выполнил вызов ajax и использую php для обработки формы.
У меня есть текстовое поле в той форме, где пользователи вводят пробелы и разрывы строк. Я могу получить доступ к значениям с помощью $ _POST , но он не интерпретирует разрывы строк в html <br/ >
тегах. Существует ли функция, которая преобразует разрывы строк в urlencoded строку в <br/>
теги и другие html-теги? Или все уже декодировано к тому времени, когда я обращаюсь к нему с помощью $ _POST, что я ничего не могу с этим сделать?
Ответ №1:
Использовать nl2br($text);
(новая строка для нарушения правила)
Комментарии:
1. Ну, что я могу сказать. Проблема РЕШЕНА, ООООЧЕНЬ СПАСИБО!
Ответ №2:
Вы уверены, что используете nl2br() при повторении значения textarea?
редактировать: слишком поздно: P
Комментарии:
1. Все в порядке, большое спасибо = D. Не знал этой функции!
Ответ №3:
в PHP у вас есть функция для добавления <br>
перед любой новой строкой: nl2br()
Вы должны использовать это только при печати текста в текстовой области с помощью echo, а не для сохранения в вашей базе данных.
Вы также можете найти применение addslashes(), чтобы избежать любых проблем с символами '
и "
в вашей текстовой области
Ответ №4:
В качестве альтернативы, если вы не хотите применять теги html к значению, вы можете позже правильно отобразить межстрочный интервал, применив white-space
свойство CSS к элементу, в котором отображается текст, и установив для него значение pre
или что-то подобное. Для получения дополнительной информации ознакомьтесь с документацией по этому вопросу на w3schools.
Комментарии:
1.Есть несколько лучших сайтов для ссылок на HTML и CSS. w3schools, как известно, сомнителен.
2. MDN обычно очень тщательный.