Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Перенос строки (есть вопрос)

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Jenni
Отправлено: 08 Июля, 2014 - 20:42:11
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Июнь 2014  


Помог: 0 раз(а)




Итак: текст при выводе обрабатывается функцией
PHP:
скопировать код в буфер обмена
  1. function br($br){
  2. $br=str_replace("\r\n","<br>",$br);
  3. return $br;
  4. }

все работает и устраивает. но когда я вывожу участок кода заключенный в bb

перенос строк не работает а выводит тег <br> чтоб в участке кода перенос заработал, нужно переносить \n как мне организовать это, чтоб весь текст без bb кодов переносился <br> а в bb \n подскажите?
 
 Top
Мелкий Супермодератор
Отправлено: 08 Июля, 2014 - 20:47:45
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




Во-первых, nl2br.
Во-вторых - сначала обрабатывайте BB, htmlspecialchars и только потом применяйте nl2br.


-----
PostgreSQL DBA
 
 Top
Jenni
Отправлено: 08 Июля, 2014 - 21:04:57
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Июнь 2014  


Помог: 0 раз(а)




к сожалению, все осталось прежнем пример:
PHP:
скопировать код в буфер обмена
  1. if($head==0)<br />
  2.  {echo'вывод данных';}
  3. ?>
может дело в обработке bb посмотрите как я делаю
PHP:
скопировать код в буфер обмена
  1. function code_bbcode($text)
  2.          
  3.      {  
  4.            
  5.          
  6.           $text = html_entity_decode(trim($text), ENT_QUOTES, 'UTF-8');
  7.           $text = preg_replace_callback('#\[php\](.*?)\[/php\]#si',
  8.           create_function('$matches', '
  9.           $matches[1] = htmlspecialchars_decode($matches[1]);
  10.           $matches[1] = (stripos($matches[1], "<?PHP ") === false)? "<?PHP \r\n".$matches[1]. "\n?>": $matches[1];
  11.           $matches[1] = highlight_string($matches[1], 1);
  12.           $br_num = substr_count($matches[1], "\n");
  13.           $numeric[] = "<table cellpadding=\"0px\" cellspacing=\"0px\" border=\"0\"><tr><td style=\"font-size:13px; border-right:#999999 ; padding-right:5px; font-family:\'Courier New\', Courier, monospace; text-align:right; vertical-align:top;\">";
  14.                  
  15.                  
  16.           for($i=1; $i<=$br_num + 1; $i++)
  17.      {
  18.           $numeric[] = $i."<br />";
  19.      }
  20.           $numeric[] = "</td><td style=\font-size:13px; padding:1px 5px 0px;  vertical-align:top; white-space:nowrap;\">".$matches[1];
  21.           $numeric[] = "</td></tr></table>";
  22.           $matches[1] = implode("", $numeric);
  23.           $result = "<div style=\"background-color:#A9B8C2; padding:1px 5px 0px; border: 1px solid #9fa9b8; font-family: Lucida Grande, Verdana, Helvetica, Arial, sans-serif;font-size:10px; \">PHP</div><div style=\"background-color:#e0e6e9; border: 1px solid #9fa9b8; padding:5px;\">".$matches[1]." </div>";
  24.           return $result;'), $text);


что самое интересное. заменяю <br /> на \n все работает как нужно.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Хранение данных, их вывод и обработка »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB