Raito-kun
28.06.2009 - 21:51
Вобщем, вкратце о задаче. Есть форма, через которую добавляется комментарий (заносится в базу данных), который в последующем виден на странице. Не суть важны все детали. Главное - есть поле <textarea> и кнопка submit. После этого форма направляет нас к этой же странице. Далее на этой странице выполняется PHP скрипт. Сначала я получаю данные методом POST ( $content = strip_tags($_POST['content']); ). Далее после проверки массы условий, этот "контэнт" заносится в БД mySQL
PHP |
$query = mysql_query("INSERT INTO comments (added,author,content) VALUES ('$date','$author','$content')"); |
Так вот на выходе, если, допустим, в textarea я делал абзац или ставил несколько пробелов, в комментарии выданом базой данных их не будет, а будет просто текст подряд. Все абзацы=одинарным пробелам, несколько пробелов=один пробел. Тоесть теряется все редактирование, которое я проделывал в textarea перед отправкой. Подскажите, пожалуйста, как быть?)
Спустя 7 минут, 21 секунда (28.06.2009 - 20:58) Krevedko написал(а):
Спустя 35 минут, 39 секунд (28.06.2009 - 21:34) twin написал(а):
Кому это, юзеру совет? Юзер то как поставит теги?
На счет переносов это:
nl2br()А пробелы надо заменять на эквивалент. Кроме того, что бы избежать XSS атак, и что бы было видно символы < >, нужно обработать на выходе функцией
htmlspecialchars()В итоге имеем такую картину:
PHP |
$content = nl2br(str_replace(" "," ",htmlspecialchars($content))); |
Спустя 28 минут, 6 секунд (28.06.2009 - 22:02) Raito-kun написал(а):
О как оперативно) Креведко, очень отжигаешь, особенно если я пишу "strip_tags", специально для запрета)
А вот twin'у огромное спасибо. Сейчас буду разбираться с этой функцией.
Спустя 4 минуты, 51 секунда (28.06.2009 - 22:07) twin написал(а):
Цитата |
особенно если я пишу "strip_tags", специально для запрета) |
Не пиши этого. Не надо запрещать ничего. Что юзер написал, то и должно быть видно. А то он напишет <Вася> и фигушки.
Спустя 6 минут, 1 секунда (28.06.2009 - 22:13) Raito-kun написал(а):
Понятно, учту
Спустя 1 минута, 13 секунд (28.06.2009 - 22:14) Krevedko написал(а):
Цитата (Raito-kun @ 28.06.2009 - 19:02) |
О как оперативно) Креведко, очень отжигаешь, особенно если я пишу "strip_tags", специально для запрета)
А вот twin'у огромное спасибо. Сейчас буду разбираться с этой функцией. |
да ладно тебе. уже и пошутить нельзя )
кстати у меня такая же проблема была, сам не знал как побороть.
так что твину двойной респект