Задавайте вопросы, мы ответим
Вы не зашли.
как передалать функцию что бы заменить все знаки \r\n на \n, затем все знаки \n на <br>, а знаки \r на ничего,
понимаю, что надо юзать str_replace но как именно - хз
базе все хранится так как ввел пользователь, типа так:
строка 1 нажимаю ентер
строка 2 нажимаю ентер
строка 3
я сразу в базу пишу программой MySQL-Font
function сontent($id){
$id = intval($id);
$query="SELECT content1, content2 FROM site_content WHERE visible='yes' AND id='".$id."'";
$result=mysql_query($query);
$row=mysql_fetch_array($result);
$text = '<table width="100%" border="0" cellspacing="12" cellpadding="0"><tr><td valign="top">';
$text .= $row['content2'];
$text .= '</td></tr></table>';
return $text;
}
Спасибо!
Отредактированно vladimirov (02.02.2008 09:47:05)
Неактивен
Если я правильно понял Вам нужно \r\n и \n заменить на <br>, а \r на ничего.
mixed str_replace ( mixed search, mixed replace, mixed subject [, int &count] )
Эта функция возвращает строку или массив subject, в котором все вхождения search заменены на replace.
С версии PHP 4.0.5, любой аргумент str_replace() может быть массивом.
В Вашем случае:
$text .= str_replace(array("\r\n", "\n", "\r"), array('<br>', '<br>', ''), $row['content2']);
Не понял зачем Вы выбираете из базы content1, content2, если потом используете только content2.
Вообще данную замену лучше делать один раз при добавлении в базу, чем потом при каждой выборке.
Неактивен
Спасибо Василий! Попробую сделать так как вы посоветовали. О результатах отпишусь.
vasya написал:
Не понял зачем Вы выбираете из базы content1, content2, если потом используете только content2.
Я на самом деле оба использую. Просто на примере кое что убрал что бы пример был покороче)
Неактивен
заработало. еще раз спасибо. выручили.
Неактивен