Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Длинная строка
 
 автор: Shorr Kan   (04.10.2005 в 14:49)   письмо автору
 
 

Мне нужно сохранить и переносы, и общее форматирование из textarea. <pre> и nl2br вполне помогают, но только до тех пор - пока человек не введет в текстареа БЕЗ переносов - сплошную строку. Тогда все разъезжается. Как с этим можно справиться? Возможно, есть функция, которая делает автоматический перенос после N количеста сплошных символов? Или разбивает после этого N в массив?

   
 
 автор: cheops   (05.10.2005 в 00:21)   письмо автору
 
   для: Shorr Kan   (04.10.2005 в 14:49)
 

Да, это функция wordwrap().

   
 
 автор: Shorr Kan   (05.10.2005 в 06:32)   письмо автору
 
   для: cheops   (05.10.2005 в 00:21)
 

Хм... я бы не сказал, что она у меня работает. Я пробовал и перед вносом в базу... и при выборке из нее... Не помогает. Она просто не работает - все происходит так же, как и было.

Я попробовал даже так: wordwrap($word,20,"|"); - палки ставит только там, где есть абзацы, переносы и т.д. .... а сплошное слово, состоящее из двух сотен букв - нет. Ни одной вертикальной палочки...

<td><pre><?print nl2br(wordwrap($msg,20,"|"));?></pre></td>


$msg - это поле TEXT из базы. Пробовал и

$msg=mysql_escape_string(wordwrap($_POST['msg'],20,"|"));


перед добавлением.
Разумеется, вертикальные - это я уже для проверки... нужны или \n или <br>

   
 
 автор: sancho   (05.10.2005 в 09:02)   письмо автору
 
   для: Shorr Kan   (05.10.2005 в 06:32)
 

Не знаю, может вам это поможет

<td width="200 px" style="word-break: break-all;">

   
 
 автор: Shorr Kan   (05.10.2005 в 09:14)   письмо автору
 
   для: sancho   (05.10.2005 в 09:02)
 

Ну.... это не слишком универсальный метод. IE, Opera, Mozilla, Gecko, и т.д.... вы понимаете..

   
 
 автор: Shorr Kan   (05.10.2005 в 10:56)   письмо автору
 
   для: Shorr Kan   (05.10.2005 в 09:14)
 

Хм... Решил все путем выдачи написанного в <textarea>

   
 
 автор: cheops   (05.10.2005 в 13:35)   письмо автору
 
   для: Shorr Kan   (05.10.2005 в 06:32)
 

Если вы хотите резать в том числе и сплошное слово из 100 символов, необходимо добавить true, в качестве четвёртого аргумента функции
<td><pre><?print nl2br(wordwrap($msg,20,"|",1));?></pre></td>

   
 
 автор: Shorr Kan   (05.10.2005 в 18:51)   письмо автору
 
   для: cheops   (05.10.2005 в 13:35)
 

о! Понял, благодарю...

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования