менял базу
в html задал кодировку
каждый файл через notepad++ также поменял на utf-8
и осталось одна проблема в котором не могу понять что не то

вот подметил что происходит, где крякозаторы выводится на картинке
вот php код код отвечающий за это
$symbolsdesc = strlen($description);
if ($symbolsdesc > 25)
{
$sdesc = $symbolsdesc-5;
$startbut = rand(5,$sdesc);
}
else
{
$sdesc = $symbolsdesc-3;
$startbut = rand(0,$sdesc);
}
$newdesc = substr($description,0,$startbut);
$newdesc .= "<a class=\"serfgo\" href=\"adview-".$row['id'].".html\" target=\"_blank\" onclick=\"goserf('".$row['id']."');\">";
$endbut = $startbut+3;
$frees = substr($description,$startbut,3);
$other = substr($description,$endbut);
$newdesc .= $frees.'</a>'.$other;
когда был windows-1251 работал нармально все это после кодировки сайта в utf-8
как решать проблему ?
Спустя 10 минут, 20 секунд (30.01.2012 - 21:41) Winston написал(а):
Добавь в начало файла заголовок
А так же изменить
substr на mb_substr
header("Content-Type: text/html; charset=utf-8");
А так же изменить
substr на mb_substr
Спустя 1 минута, 39 секунд (30.01.2012 - 21:43) Winston написал(а):
А так же, в кодировке utf-8, strlen возвращает количество байт, а не символов. Для того, чтобы получить количество символов используй mb_strlen
Спустя 1 минута, 22 секунды (30.01.2012 - 21:44) okapo написал(а):
сделал, не помогло

Спустя 2 минуты, 7 секунд (30.01.2012 - 21:46) nugle написал(а):
попробуй в конце поставить 'UTF-8' mb_substr($var, 'UTF-8')
Спустя 4 минуты, 39 секунд (30.01.2012 - 21:51) Winston написал(а):
Выведи просто переменную, без substr. Текст нормально выведется?
nugle
Ты не правильно записал.
nugle
Ты не правильно записал.
Спустя 1 минута, 59 секунд (30.01.2012 - 21:53) okapo написал(а):
Вот в конце делал
но так же не помогло
$frees = mb_substr($description,$startbut,3);
$frees = mb_substr($frees, 'UTF-8');
$other = mb_substr($description,$endbut);
$other = mb_substr($other, 'UTF-8');
но так же не помогло
Спустя 2 минуты, 35 секунд (30.01.2012 - 21:56) Winston написал(а):
okapo
Ты не правильно записал формат! Вот http://ua.php.net/manual/ru/function.mb-substr.php
Попробуй вывести текст без использования substr/mb_substr, Нормально будет выведено?
Ты не правильно записал формат! Вот http://ua.php.net/manual/ru/function.mb-substr.php
Попробуй вывести текст без использования substr/mb_substr, Нормально будет выведено?
Спустя 1 минута, 45 секунд (30.01.2012 - 21:57) okapo написал(а):
Цитата (Winston @ 30.01.2012 - 18:51) |
Выведи просто переменную, без substr. Текст нормально выведется? nugle Ты не правильно записал. |
пробовал
что возле шарика уже нету этих
а вот в тексте только по 1 ой этой крякозатора есть
Чи�Читаем новости проектаЧитаем новости проекта
ДОЛЛАРО�ДОЛЛАРОВЫЙ SEOSPRINT !!!ДОЛЛАРОВЫЙ SEOSPRINT !!!
Спустя 2 минуты, 46 секунд (30.01.2012 - 22:00) nugle написал(а):
Winston
я же указал в конце поставить 'UTF-8'. Между $var и 'UTF-8' естественно сама обрезка идет
я же указал в конце поставить 'UTF-8'. Между $var и 'UTF-8' естественно сама обрезка идет
Спустя 13 секунд (30.01.2012 - 22:00) Winston написал(а):
При соединении с базой написал?
mysql_query('SET NAMES utf8');
$frees = mb_substr($description,$startbut,3, 'UTF-8');
Спустя 15 минут, 38 секунд (30.01.2012 - 22:16) okapo написал(а):
да там есть mysql_query('SET NAMES utf8')
вот картинка как теперь

код
вот картинка как теперь

код
$frees = mb_substr($description,$startbut,3, 'UTF-8');
$other = mb_substr($description,$endbut, 'UTF-8');
Спустя 1 минута, 57 секунд (30.01.2012 - 22:18) nugle написал(а):
$other = mb_substr($description,$endbut, 'UTF-8');
тут один аргумент упущен
Спустя 4 минуты, 12 секунд (30.01.2012 - 22:22) okapo написал(а):
Цитата (nugle @ 30.01.2012 - 19:18) |
$other = mb_substr($description,$endbut, 'UTF-8'); тут один аргумент упущен |
$frees = mb_substr($description,$startbut,3, 'UTF-8');
$other = mb_substr($description,$endbut,3, 'UTF-8');
если так то поставил, изменений опять нету
Спустя 2 минуты, 23 секунды (30.01.2012 - 22:24) nugle написал(а):
strlen поменял на mb_strlen?
Спустя 9 минут, 46 секунд (30.01.2012 - 22:34) okapo написал(а):
Цитата (nugle @ 30.01.2012 - 19:24) |
strlen поменял на mb_strlen? |
да сделал так тоже ничего
Спустя 9 минут, 35 секунд (30.01.2012 - 22:44) okapo написал(а):
еще, до шарика есть называния, то что после него уже отсутствует
Спустя 2 минуты, 12 секунд (30.01.2012 - 22:46) bob marley написал(а):
okapo
Попробуй поставить в notepad кодировку UTF-8(без BOM)
Попробуй поставить в notepad кодировку UTF-8(без BOM)
Спустя 2 минуты, 40 секунд (30.01.2012 - 22:49) okapo написал(а):
Цитата (bob marley @ 30.01.2012 - 19:46) |
okapo Попробуй поставить в notepad кодировку UTF-8(без BOM) |
сделал везде и на этот файл, так как они ваще все кряказаторах был, но после utf8 без bom вот такой результат
Спустя 2 часа, 23 минуты, 48 секунд (31.01.2012 - 01:12) veolancer написал(а):
Создай файл с расширением .htaccess и в нём напиши
AddDefaultCharset UTF8
Положи его в корень сайта и по идее должно всё норм быть
AddDefaultCharset UTF8
Положи его в корень сайта и по идее должно всё норм быть
Спустя 1 час, 54 минуты, 54 секунды (31.01.2012 - 03:07) inpost написал(а):
В разделе "Кодировки" есть прикреплённая тема.
И ещё, почему создаёшь тему в неподобающем разделе?
И ещё, почему создаёшь тему в неподобающем разделе?

Спустя 1 день, 19 часов, 16 минут, 37 секунд (2.02.2012 - 22:24) okapo написал(а):
Цитата (inpost @ 31.01.2012 - 00:07) |
В разделе "Кодировки" есть прикреплённая тема. И ещё, почему создаёшь тему в неподобающем разделе? :) |
извени не обротил внимание
кстати нашел решение, через mb_substr
только добавил в код выше
ini_set("mbstring.func_overload", 7);
ini_set("default_charset", "UTF-8");
ini_set("mbstring.language", "Russian");
ini_set("mbstring.internal_encoding", "UTF-8");
ini_set("mbstring.encoding_translation", 1);
ini_set("mbstring.http_input", "UTF-8,KOI8-R,CP1251");
ini_set("mbstring.http_output", "UTF-8");
ini_set("mbstring.detect_order", "UTF-8,KOI8-R,CP1251");