![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Spectre |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 38 Регистрация: 18.1.2006 Где: Беларусь, г. Минс к Репутация: нет Всего: нет |
Проблема вот в чем.. Я создал БД там создал таблицу в ней поля. Id, title, body - таблица для хранения статей..
Когда я пробую забить в базу что нибудь через интерфейс phpMySQL то он пропускает ентеры. То есть приходится писать вручную в нужном месте <br>... Так вот вопрос. Если я сделаю на страничке php форму ввода новой статьи, то и в textarea придется вписывать <br> и другие форматирования? И второй вопрос. При выводе на экран статьи все хорошо, но когда я в титле хочу отобразить например первых 50 символов статьи, при наведении на ссылку, то там я увижу и html-теги. В общем мне надо сделать так что бы я нормально вводил текст без <br> и он потом нормально отображался. Помогите. |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
Spectre, я НЕ знаю, как происходит ввод в базу через указанный интерфейс, но HTML - броузерами перевод строки игнорируется. Потому у тебя текст из базы вполне может идти с переводами строк(ентерами), но т.к. браузер ожидает для перевода строки специального тега(<br>), то переход на новую строку не происходит.
|
|||
|
||||
| Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: 10 Всего: 73 |
Данный вопрос к БД имеет очень косвенное отношение.
Скажите, на каком языке пишите и я перемещу в нужный раздел. -------------------- Теперь при чем :P |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
варианты:
- выводить текст статьи между тегами <PRE> и </PRE>, или(что лучше) использовать соответствующие стили - забыть о принудительном переходе. Касательно первых 50 символов - что тебе мешает экранировать теги? |
|||
|
||||
| Spectre |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 38 Регистрация: 18.1.2006 Где: Беларусь, г. Минс к Репутация: нет Всего: нет |
Пишу на php...
skyboy, видел как то эти теги, но не знаю что они значать. Можете пояснить? И экранировать тэги, как это? |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
под экранированием я имел в виду:
- либо выдирать всё, что похоже на тег. Тут тебе регулярные выражения в помощь. - либо выводить как HTML. Тогда браузер сам на даст увидеть теги. <PRE> выводит текст моноширинным(кажется) шрифтом с тем форматированием(переносы строк, спецсимволы), которое имеет текст. Но лучше поискать соотвествующий стиль, если есть. А ещё лучше - справочник открыть. Например, этот ------------- Ссылку исправил. Это сообщение отредактировал(а) skyboy - 21.7.2006, 10:20 |
|||
|
||||
| ZlojEzh |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 285 Регистрация: 8.10.2005 Где: Киев, Украина Репутация: 10 Всего: 15 |
1. варианты:
- str_replace("\n","<br>",$str) - при выводе - REPLACE(`field_name`,"\n",'<br>') - при выборке из БД (в строке запроса в PHP надо писать '\\n') - <pre></pre> (как и советовал skyboy) - 2. substr(strip_tags($str),0,50) если надо, чтоб слова не обрывались на середине - можно использовать:
а тему, имхо, стоит перенести в PHP для начинающих |
|||
|
||||
| Spectre |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 38 Регистрация: 18.1.2006 Где: Беларусь, г. Минс к Репутация: нет Всего: нет |
Вот... создал статейку. в Базу забил без <br> вручную... теперь в alt ссылки все нормально отображается, а если просто на экран вывести, то без энтера. Пробовал вывести как <pre>{$row["body"]}</pre> он мне испортил вид странички, и при этом кажется так и не сделал перевода...
Он растянул первый абзац в одну строчку. вот что он сделал. А по ссылке сейчас посмотрю. Это сообщение отредактировал(а) Spectre - 21.7.2006, 10:24 |
|||
|
||||
| igorold |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 557 Регистрация: 22.12.2005 Где: Россия->Урал-& gt;Миасс Репутация: нет Всего: 17 |
вставляй <br> - там где надо переход на новую строку ... тебе уже советовали ...
-------------------- ... у семи нянек 14 сисек ... Putin here, Putin there, Putin almost everywhere! |
|||
|
||||
| Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: 10 Всего: 73 |
Хотелось бы услышать ответ автора. Подразумевать, что MySQL используется только ПХП нельзя. -------------------- Теперь при чем :P |
|||
|
||||
| Spectre |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 38 Регистрация: 18.1.2006 Где: Беларусь, г. Минс к Репутация: нет Всего: нет |
Тут больше связано с MySQL помоему. Вывод на экран. Кстати без тегов все хорошо отображается если выводить в <textarea> но мне не в ней надо... Ведь должно же что то быть. Справочник попробовал открыть, нужный раздел в разработке.
Пробовал вводить через форму с помощью техтареи, ничего не вышло... Так же отображает без энтеров при выводе... |
|||
|
||||
| Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: 10 Всего: 73 |
-------------------- Теперь при чем :P |
|||
|
||||
| Spectre |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 38 Регистрация: 18.1.2006 Где: Беларусь, г. Минс к Репутация: нет Всего: нет |
Я его указал уже выше - PHP
|
|||
|
||||
| Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: 10 Всего: 73 |
-------------------- Теперь при чем :P |
|||
|
||||
| Spectre |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 38 Регистрация: 18.1.2006 Где: Беларусь, г. Минс к Репутация: нет Всего: нет |
Проблема решена всего с помощью двух строчек добавленных в нужном месте
|
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |