я никак не могу сделать нормальный вывод краткой новости..
если я текст вывожу этим
$comment3=mb_substr($row3["comment"],0,600);, то он выводит как пологается, 600 первых символов.. (но не использует bbcode, что меня и не устраивает)
если это
$comment3=format_comment($row3["comment"],0,600);, то он выводит всю новость! но с ббкодами..
вот format_comment
function format_comment($text, $strip_html = true) {
global $smilies, $privatesmilies, $BASEURL;
if ($strip_html)
$text = htmlspecialchars($text);
$text = unesc($text);
$f=@fopen('badwords.txt','r');
if ($f && filesize ('badwords.txt')!=0) {
$bw=fread($f,filesize('badwords.txt'));
$badwords=explode("\n",$bw);
for ($i=0,$total=count($badwords);$i<$total;++$i)
$badwords[$i]=trim($badwords[$i]);
$text=str_replace($badwords,'*censored*',$text);
}
@fclose($f);
$text=bbcode($text);
// [*]
$text = preg_replace('/\[\*\]/', '<li>', $text);
// Maintain spacing
$text = str_replace(' ', ' ', $text);
$smilies=array_merge($smilies, $privatesmilies);
reset($smilies);
while (list($code, $url) = each($smilies))
$text = str_replace($code, '<img border="0" src="'.$BASEURL.'/images/smilies/'.$url.'" alt="'.$url.'" />', $text);
return $text;
}
Спустя 58 секунд (14.06.2010 - 10:09) tmt0086 написал(а):
как сделать чтоб было и 600 символов, и ббкоды использовались
Спустя 3 минуты, 44 секунды (14.06.2010 - 10:12) tomash написал(а):
Вы бы в начале функции обрезали бы строчку! А то у вас в функцию 600 передается, но самой функцией не принимается!
Спустя 21 минута, 5 секунд (14.06.2010 - 10:33) tmt0086 написал(а):
tomash
а можно пример?
а можно пример?
Спустя 3 минуты, 54 секунды (14.06.2010 - 10:37) tomash написал(а):
function format_comment($text, $strip_html = true, $cnt = 600) {
global $smilies, $privatesmilies, $BASEURL;
$text = substr($text, 0, 600);
......
}
где-то так ))
global $smilies, $privatesmilies, $BASEURL;
$text = substr($text, 0, 600);
......
}
где-то так ))
Спустя 5 минут, 55 секунд (14.06.2010 - 10:43) Guest написал(а):
tomash
спасибо тебе огромное!!!
спасибо тебе огромное!!!
Спустя 4 минуты, 26 секунд (14.06.2010 - 10:48) tomash написал(а):
ой блин! затупил!
Вот так ))) а то переменную сделал, использовать забыл))))))
$text = substr($text, 0, $cnt);
Вот так ))) а то переменную сделал, использовать забыл))))))
Спустя 49 минут, 49 секунд (14.06.2010 - 11:37) twin написал(а):
Если резать посимвольно, все равно можно попасть в тег и нарушить его. Если резать по пробелам (по словам), то можно нарушить парность тегов.
Так просто тут не отделаться.
Так просто тут не отделаться.
Спустя 2 часа, 8 минут, 40 секунд (14.06.2010 - 13:46) tomash написал(а):
Просто не отделаться, согласен! Программист делает не то что от него хотят, а то о чем его просят)))) Проверку на корректную обрезку и парность тэгов нужна.