strip_tags("<br/>", "<br>")

alexblade

Новичок
Почему strip_tags("<br/>", "<br>") вернет пустую строку?

он должен обрезать все кроме br тэгов так ведь ?
 
Потому что тэг "br/" не соответствует тэгу "br". Более того в HTML вообще не существует тэга "br/".
 
хм.... а почему тогда - у меня в коде есть <img/> и псоле strip_tags($html, "<img>") <img/> остается ?
 
Доброго времени суток! Под шумок, что бы не создавать схожей темы, подскажите пожалуйста, вот моя форма для редактирования:

PHP:
<?php 
$result = mysql_query("SELECT * from mainmenu WHERE id=2");
$myrow = mysql_fetch_array($result);		
print <<<HERE

<form name="form1" method="post" action="update_index.php">
  <p>
	<br>
  <label>Введите краткое описание статьи (для SEO) - 250 символов<br>
<textarea name="meta_d" cols="50" rows="5" id="meta_d">$myrow[meta_d]</textarea>
  </label>
	<br>
	<br>
  <label>Введите ключевые слова для статьи (для SEO) - 250 символов<br>
<textarea name="meta_k" cols="50" rows="5" id="meta_k">$myrow[meta_k]</textarea>
  </label>
	<br>
	<br>
  <label>Текс верхнего блока<br>
<textarea name="dopinfo" cols="100" rows="7" id="dopinfo">$myrow[dopinfo]</textarea>
  </label>
	<br>
	<br>
  <label>Текст нижнего блока<br>
<textarea name="text" cols="100" rows="7" id="text">$myrow[text]</textarea>
  </label>
	<br>


  <br>
  <input name="id" type="hidden" value="$myrow[id]">
  <br>
  <label>
    <input type="submit" name="submit" id="submit" value="Сохранить изменения">
  </label>
  <br>
  
  </p>
</form>
HERE;

?>

в базе запись по переменным $meta_d, $meta_k пустые их не трогаю, а вот $dopinfo и $text имеют запись:

к примеру $dopinfo имеет содержание:
PHP:
1. Ремонт,.... мебели; <br><br>
2. Реставра....мебели;<br><br>
3. Изгото....каз;<br><br>
Также в ...............ли.
(текст повырезал но суть не поменялась)

Поставил задачу, что бы из базы вытягивался чистый текст без кода, а когда текст отредактировался, уходил в базу с кодом, что бы на сайте нормально отображался, подскажите как это лучше реализовать, я нарыл модификатор переменной strip_tags, и даже кучу примеров нашел:

Пример 1. Пример использования strip_tags()
PHP:
<?php
$text = '
<p>Параграф.</p>
<!-- Comment -->
Еще немного текста';

echo strip_tags($text);

echo "\n\n-------\n";

// не удалять <p>
echo strip_tags($text, '<p>');
?>

Этот пример выведет:

Параграф.



Еще немного текста



-------



<p>Параграф.</p>



Еще немного текста

но нигде не нашел как этот модификатор работает в функции printf, тобиш когда переменная выводится через echo я понял куда его вставлять, а когда через printf не совсем понимаю. И еще если эта функция срежет переносы строк, после сохранения они улетят с кодом? или без?
 
Поставил задачу, что бы из базы вытягивался чистый текст без кода, а когда текст отредактировался, уходил в базу с кодом, что бы на сайте нормально отображался
трудно придется будущим редакторам, обьяснить твоему скрипту, что они хотят!
 
WMix
по идеи ведь это идет обычное "блоговское"\"форумское" окно? ведь я не думаю, что на форумах особенно когда большой объем данных это окно беда? Я думал мб просто есть уже готовое решение? На данный момент рою уроки с блогами, ищу правду в них, но покачто толку нет =\
 
я о том, что если
PHP:
<b>bbbb</b> <i>iiii</i>
превратить в техт bbbb iiii а после исправить на bbbb ddd iiii то уже не понятно как должны тэги расставляться так
PHP:
<b>bbbb ddd</b> <i>iiii</i>
или
PHP:
<b>bbbb</b> <i>ddd iiii</i>
я посоветывал бы либо BB коды либо wysiwyg редактор
 
WMix благодарю за wysiwyg! однако столкнулся с проблемой, у меня есть админка, и есть страница сайта, в админке я установил окно для BB кодов, а вот на странице куда я выгружаю ВВ код выводится как код. Я так понял я не объяснил странице сайта, что означает BB код? На сайте есть мануалка как сделать окно для редактирования, а вот для его вывода не написано, вернее думаю написано, но я не нашел.

1.jpg
 
видать старые html тэги остались и они мешают жить, те < переводятся функцией типа htmlspecialchars в сущьности &lt; отсюда и проблемы, читай сорцы

ерунду написал, да конечно же браузер не понимает что такое BB ему нужно это обьяснять, вернее заменять на обычный html
 
WMix да вроде подтер все такого рода, и в базе не осталось кодов (там их не было, но я проверил, что бы наверняка). Вот к примеру сам код вытащенный из базы из вышеуказанной ячейки:

PHP:
[b]1. Ремонт, обивка и перетяжка мебели;[/b]
2. Реставрация кожаной и антикварной 
мебели;<br><br>
3. Изготовление мягкой мебели на заказ;<br><br>
Также в продаже большой выбор тканей, искуственной и натуральной кожи, поролона, латекса, механизмов и запчастей к мягкой мебели.

Остался только код <br>, но когда стираю все сообщения на странице сайта слипшиеся, а вот если захожу в админку в редактирование, там они красиво пасочками разложены по строкам =)
 
можешь обернуть весь вывод в nl2br на страничке сайта
 
WMix nl2br все решил! Выражаю огромную благодарность!

Я когда искал инфу, находил nl2br, но тогда решил его не пробовать, как оказалось зря! Все решилось и кстате я попутно разобрался как раз и с wysibb. Интересный мод, однако для того функционала который я закладываю в сайт это будет лишнее =) За оба совета благодарю! wysibb в дальнейшем пригодится! =)
 
Сверху