HTML, оторажение текста с переносами из textarea
Добрый день, Булчане!
Пишу тут самопальный бложик, и у меня имеется проблема. Ситуация такая - имею textarea в который введён текст и следом сохранён в БД (MySQL, тип поля - longtext), имею страничку в которую данный текст из БД читается. Если читать текст в textarea, то переносы строк сохраняются. Если же в любое другое место - текст идёт сплошной строкой. От сюда возникает следующий вопрос - как мне отобразить текст на страничке со всеми переносами? "Парсить" ручками переносы? Конечно, можно банально писать в нужных местах текста в textarea <br>, но, помоему, это не православно. Собственно, вопрос то наверно глупый, но нагуглить что то не получилось. Или я не правильно гуглю. Потому прошу помощи. upd проблему решил пока что функцией nl2br (php). Но советы всё равно лишними не будут. |
Ответ: HTML, оторажение текста с переносами из textarea
Вероятно можно было бы использовать тэг http://htmlbook.ru/html/pre
|
Ответ: HTML, оторажение текста с переносами из textarea
textarea использует \n (или там вроди платформо-зависимый символ) для указания новой строки. Естественно это будет игнорироваться при парсинге DOM'а, но в сорсах html будет выглядеть что с новой строки. Но в HTML новая строка обозначается либо другим элементом либо <br /> тегом. Следственно что ты сделал это использовал nl2br что конвертирует этот самый \n в <br /> теги.
Учти что т.к. ты сам постишь - тут ещё ок, но если кто-то другой сможет постить, у тебя будут проблемы - нужно парсить текст и избегать любой скрипт или html в тексте, либо у тебя будет риск js/html injection'а, что приводит к возможности запустить любой скрипт кем-либо через посты (или коменты например). |
Ответ: HTML, оторажение текста с переносами из textarea
Цитата:
|
Ответ: HTML, оторажение текста с переносами из textarea
А если используешь SQL базы данных, то конечно ещё ковычки и всё такое могут поломать твои query, и привезти к SQL Injection.
|
Ответ: HTML, оторажение текста с переносами из textarea
При выводе текста из бд используй функцию htmlspecialchars, чтобы никто тебе html теги и скрипты, ворующие куки, в комментариях не запостил. Переносы строк можно через nl2br или какой-то свой "продвинутый" парсер написать, например регулярное выражение, которое будет много идущих подряд переносов строк сводить к одному <br /> и т. п. При сохранении данных в базу не забывай экранировать кавычки и другие символы, как это сделать, зависит от используемого драйвера бд, обычно они предоставляют для этого какой-либо функционал. Тег <pre> для форматирования текста использовать не надо, используй его разве что для вывода блоков исходного кода. Если помимо текста планиуется использование какой-либо разметки, то юзай bb коды. Можно, конечно, и html, но всё равно через какой-нибудь парсер, который ограничивает теги, что-то вроде bb кодов, но html.
Всё вышесказанное не является чётким руководством к действию, это просто напутствия новичку, со временем сам поймёшь что и как нужно делать, не отправлять же тебя с самого начала изучать фреймворки и какие-то сложные технологии. |
Ответ: HTML, оторажение текста с переносами из textarea
|
Ответ: HTML, оторажение текста с переносами из textarea
Цитата:
|
Ответ: HTML, оторажение текста с переносами из textarea
Цитата:
|
Ответ: HTML, оторажение текста с переносами из textarea
Цитата:
Почитать бы нормальные уроки по php и всему что нужно знать. Я находил только всякие видео уроки от попова под которые засыпал. |
Ответ: HTML, оторажение текста с переносами из textarea
Те кто садились в ракету и летели - делали это впервые, у них небыло туториалов как садиться и лететь - они изучали всё сами. Так вот если ты полагаешься на туториалы - то ничему сам в итоге толковому не научишься, по кучи причин. Послушай лучше тех кто прошёл через кучу вариантов "обучения".
Учи всё сам, начни с настройки сервера и простых вещей - начни тупо кодить.. Я учился блиц3д ваще дома с стандартной документацией и без интернета. Мне не у кого было что-то спросить. И поэтому я его знал вдоль и поперёк как 5 своих пальцев. |
Ответ: HTML, оторажение текста с переносами из textarea
Цитата:
Учится всему самому это кхм.. тупо. Как бы для этого придумали садики, школы, колледжи и тд., что бы делится начальными знаниями, а дальше уже человек сам идет к своей цели. Так и тут можно было бы написать что надо знать/учить php, css. Может даже подкинуть пару сайтов где объясняют основы (хотя бы что в php надо в конце строки писать ";"). А хотя да, проще написать бред про то, что не надо, не у кого ничего спрашивать/интересоваться, а полностью все учить самому бессмысленно тратя время. |
Ответ: HTML, оторажение текста с переносами из textarea
Мока имеет ввиду что нет готовых туториалов на все случаи жизни. ИМХО в этой теме надо начинать с понимания того как работает вэб сервер, потом узнать на что способен тот же php и его особенности. Если лень много самому писать, то можно взять какой-то например Zend Framework и изучать его. Либо найти исходник какого то простого блога и изучать его. Способов много дойти до нужной цели.
|
Ответ: HTML, оторажение текста с переносами из textarea
Цитата:
|
Ответ: HTML, оторажение текста с переносами из textarea
Цитата:
Помню как SubZero сказал что булка была создана как спасение для новичков от гнева тролей и всезнаек с какого то сайта игростроения, призывал всех помогать и в итоге булка стала тем же самым. В одном лишь разделе про Unity есть жизнь и в реакторе иногда побулькивают треды про политику и религию. |
Часовой пояс GMT +4, время: 10:52. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot