|
|
|
| $new = substr($news['news'], 0, 200);
В $new содержится обрезанный текст а в конец добовляется непонятный символ везде "Р" зачем он и как избавится? | |
|
|
|
|
|
|
|
для: sidPR
(19.04.2007 в 02:00)
| | Нету ни чего такого.
<?php
$news['news']=<<<BLOCK
В ходе статистической обработки многократных наблюдений иногда выясняется,
что некоторые результаты значительно отличаются от ожидаемого, то есть результат содержит грубую погрешность
Самое разумное по трудозатратам и удобству решение
BLOCK;
$new = substr($news['news'], 0, 200);
echo $new;
?>
|
| |
|
|
|
|
|
|
|
для: indexer
(19.04.2007 в 02:11)
| |
function out_news(){
$sql = mysql_query("SELECT * FROM `news` ORDER BY `id` DESC LIMIT 2");
echo "<table border='0' cellpadding='0' cellspacing='0' class='out_news'>";
while($news = mysql_fetch_array($sql)){
$new = substr($news['news'], 0, 200);
$new = preg_replace("<br>", " ", $new);
echo "<tr><td><b>$news[date]</b></td></tr>";
echo "<tr><td style='PADDING-LEFT:15px;PADDING-RIGHT:15px;'>$new</td></tr>";
echo "<tr><td height='30' class='stroke'></td></tr>";
}
echo "</table>";
}
|
а у меня хрень какаето на выводе выходит а если я ничего не пишу после $new то обрезает близ лежащий тег ... при этом символ рядом который ставится кодировку всю корежит исходного кода | |
|
|
|
|
|
|
|
для: sidPR
(19.04.2007 в 02:14)
| | Сделай возврат значения из функции через return.
Мож попробуй вот так. если не пойдет то функцию надо будет переписывать в нормальный вид без html
<?php
function out_news(){
$sql = mysql_query("SELECT * FROM `news` ORDER BY `id` DESC LIMIT 2");
$data= "<table border='0' cellpadding='0' cellspacing='0' class='out_news'>";
while($news = mysql_fetch_array($sql)){
$new = substr($news['news'], 0, 200);
$new = preg_replace("<br>", " ", $new);
$data.="<tr><td><b>$news[date]</b></td></tr>";
$data.= "<tr><td style='PADDING-LEFT:15px;PADDING-RIGHT:15px;'>$new</td></tr>";
$data.="<tr><td height='30' class='stroke'></td></tr>";
}
$data=$data."</table>";
return $data;
}
?>
|
[поправлено модератором] | |
|
|
|
|
|
|
|
для: indexer
(19.04.2007 в 02:36)
| | Безполезно всеравно все ломается :( ума не приложу изза чего как вообще такое возможно | |
|
|
|
|
|
|
|
для: sidPR
(19.04.2007 в 07:48)
| | Дело было не в бабине ответ на тему по этому адресу: http://softtime.ru/forum/read.php?id_forum=4&id_theme=36121 | |
|
|
|
|
|
|
|
для: sidPR
(19.04.2007 в 02:00)
| | Выводите сразу сообщение $new? Не может непонятный символ добавляться при выводе echo? | |
|
|
|
|
|
|
|
для: cheops
(19.04.2007 в 22:46)
| | просто substr некоректно работает с UTF-8 я поставил mb_substr вместо нее все запахало на ура...
Ситуация такая при выводе обрезанного текста которые в переменно $new в конце строки добовляется какойто ероглиф либо обрезается </TD> ближ лижаший и получается "мой текст/TD>"
вот при этом со страницой и кодировкой на странице вродебы ничего не происходит.. но стоит заглянуть в исходный код страници все становится ясно что кодировка сбита ...тоесть русские символы привращяются в каракули... после mb_aubstr проблемы была решена на корню :) | |
|
|
|
|
|
|
|
для: sidPR
(19.04.2007 в 23:28)
| | substr работает не с символьным, а с байтовым потоком ( в мануале даже стоит явный акцент, что эта функция может работать с двоичными данными.) Совершенно естественно, что текстом в многобайтовой кодировке она будет работать некорректно. | |
|
|
|