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 есть жизнь и в реакторе иногда побулькивают треды про политику и религию. |
Ответ: HTML, оторажение текста с переносами из textarea
Цитата:
Я конечно не ой какой спец (вообще совсем не спец, если точнее), но чем то помочь смогу. Сам же это сейчас делаю, а вдвоём может чего накумекаем совсем умное :) Если что - стукнись в асю (560030987), Вконтакте, вечером (часов в 5-6) буду онлайн. Можно ещё в скайп (st.anger855), но там я бываю ооочень редко, ввиду очень плохого интернета сейчас. |
Ответ: HTML, оторажение текста с переносами из textarea
Nex, современная система школы, заставляет учеников следовать конкретным правилам, и если ты чуть отойдёшь "в сторону", то получишь кол "наказание". Такая система не помогает тебе взрослеть как самостоятельный человек, готовый к само-развитию, движению вперёд в неведомое. Такая система развивает в тебе страх перед ошибками, страх что-то предпринимать.
Поэтому предпринимателей очень мало. И посмотри на детей - они все интересуются космосом, все любопытные, а в 9ом класе что? Из них это вышибают так, что там и намёка на интерес и инициативу не остаётся. И ты теперь говоришь про систему? Ало! Выйди из рамок узкого восприятия того как тебя учили должно быть, думай за себя а не так как тебе сказали. Посмотри TED речи, там каждый второй говорит о проблемах современной системы обучения, она нихера не работает! Теперь ты тут уже не первый день ноешь что тебя никто не учит. А мог бы заместо сесть бл**дь, и начать что-то делать. Нет, проще ведь поныть чем что-то делать, не правда ли? Ну ной ной, далеко пойдёшь.. |
Ответ: HTML, оторажение текста с переносами из textarea
Цитата:
|
Ответ: HTML, оторажение текста с переносами из textarea
Цитата:
На самом деле проблема распространённая, и мне не паралельно куда и чё идёт, а идёт оно не туда куда нужно, т.к. там самая система обучения совсем этому не способствует. Тем более, тебе то какая разница если кто-то там что-то пишет, думаю ограничить кого-то сказав "зачем, не нужно", проще, чем смотивировать на обратное. Так что не стоит не аргументируя намекать мол "да не нужно писать". Человеку не станет хуже от негативных эмоций - они обычно приводят к опыту. Так что избегать их не стоит тоже, иначе избегаешь большой объём опыта. |
Ответ: HTML, оторажение текста с переносами из textarea
Цитата:
да лучше пойду чайку глотну. А он пока порыщет можт в инете чего нибудь Тратить своё время на чувака, которому на тебя совершенно насрать. Вот знал бы я его лично - другое дело |
Ответ: HTML, оторажение текста с переносами из textarea
Цитата:
http://archive-ipq-co.narod.ru Пройди побольше заданий чтоб понять как работают php программы. После этого можешь брать какой-нибудь фреймворк Так же рекомендую сразу поставить хорошую IDE: NetBeans, PhpStorm или Eclipse. Они толстоваты, но экономят кучу времени при разработке.
Из того на чём всё это дело тестировать могу порекомендовать OpenServer. |
Ответ: HTML, оторажение текста с переносами из textarea
А я похапу до сих пор пишу просто в Notepad2, если человек никогда не работал с крупными IDE (из перечисленных работал с нетбинсом и эклипсом), я бы сначала порекомендовал обычный редактор. Меня бесит, что все IDE тормозят даже тогда, когда я просто ПИШУ КОД БЛЯТЬ.
OpenServer тоже рекомендую, сам сейчас на ноутбуке им пользуюсь. Рекомендую сервис: http://inphp.org/ Зарегистрируйся, там можно проходить тесты по нарастающей сложности. Минус, правда, в том, что правильных ответов там не дают, и где ты ошибся придётся думать самому. |
Ответ: HTML, оторажение текста с переносами из textarea
Для тех кто помнит все команды наизусть, тому блокнот хорошо, но имхо для новичков и для серьезной разработки нужна IDE.
Я, как немного пытавшийся писать на php, рекомендую PhpStorm, реактивные мозги хороший софт пишут. Для node js я так же использую WebStorm от реактивных мозгов. |
Ответ: HTML, оторажение текста с переносами из textarea
Цитата:
Если изучаешь - лучше как раз блокнот. Т.к. не будешь полагаться на автодополнение и будешь запоминать. А если требуется продуктивность и есть конкретные цели - то да, IDE с хорошими фичами. Либо по хардкору: vim или vintage mode в sublime text, имхо, ничего круче vim нету... Гуру когда на нём кодят, просто мозг выносит.. |
Ответ: HTML, оторажение текста с переносами из textarea
|
Ответ: HTML, оторажение текста с переносами из textarea
Цитата:
У каждого свои возможности по запоминанию. Я, например, не могу все подряд помнить, особенно в какой последовательности параметры в функции вставлять. С блокнотом за каждой функцией придется лезть в онлайн документацию, что очень медленно (хотя я и с ide так же гуглю все что мне нужно). Да и чтобы стать гуру надо много лет практики. IDE для меня спасение, особенно когда что-то новое приходится изучать. Возможно это касается только меня, но кто знает какой процент таких же как я? :pardon: PS: с текстовым редактором кстати еще и много уйдет времени на исправление орфографических ошибок, если такие часто делаешь. |
Ответ: HTML, оторажение текста с переносами из textarea
Цитата:
|
Ответ: HTML, оторажение текста с переносами из textarea
оч советую PSPad - тот же блокнот, но код подсветит + форматировать проще, чем в блокноте. А остальное - то же самое. + там таблица ASCII котов есть, что иногда выручает
|
Часовой пояс GMT +4, время: 18:35. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot