Кто работал с этим классом, скажите что надо сделать, чтобы буковки русские были, а не странные кракозябры, а то я не вкурил в кодировку совсем...
Пробовал сделать вот так, но не прокатило =/
PHP |
$qweqwe = mb_convert_encoding($msg['message'], "windows-1251"); |
PHP |
<?php |
PHP |
$icq->send_message($msg['from'], iconv('cp1251','utf-8',$qweqwe)); |
PHP |
<?php |
PHP |
$this->packTLV(0x16, 0x010A, 'n'). |
PHP |
$this->packTLV(0x0F, 'ru'). |
PHP |
$this->packTLV(0x0F, 0x02, 'ru'). |
Цитата |
Но сейчас вылазит другая ошибка: Call to undefined function mb_convert_encoding() =/ Гугл говорит что надо php_mbstring.dll Скачал ее, установил, все равно не работает =/ |
Цитата |
string iconv (string in_charset, string out_charset, string str) Функция выполняет преобразование строки str из кодировки in_charset в out_charset. Возвращает преобразованную строку или FALSE в случае неудачи. |
Цитата |
Исправил ошибку ↓ 1) Находим функцию ClientMd5Login, в ней удаляем строку PHP $this->packTLV(0x16, 0x010A, 'n'). 2) Вот эти строки PHP $this->packTLV(0x0F, 'ru'). $this->packTLV(0x0E, 'ru'); заменяем на PHP $this->packTLV(0x0F, 0x02, 'ru'). $this->packTLV(0x0E, 0x02, 'ru'); © http://wip.asminog.com/forum/index.php/topic,461.0.html |
Цитата (ВитЁЁк @ 13.07.2009 - 23:12) |
if (isset($msg['encoding'])) { if ($msg['encoding']['numset'] == 'UNICODE') { $msg['realmessage'] = $msg['message']; $msg['message'] = mb_convert_encoding($msg['message'], 'cp1251', 'UTF-16'); } if ($msg['encoding']['numset'] == 'UTF-8') { $msg['realmessage'] = $msg['message']; $msg['message'] = mb_convert_encoding($msg['message'], 'cp1251', 'UTF-8'); } } попробуй.. у меян так работает.. угумс) |
PHP |
<?php |
if($msg['message'] != '' && is_string($msg['message']) && (strstr($msg['message'], "\x00") || strstr($msg['message'], "\x04"))) {
if(function_exists('iconv')) $msg['message'] = iconv('utf-16be', 'cp1251', $msg['message']);
elseif(function_exists('mb_convert_encoding')) $msg['message'] = mb_convert_encoding($msg['message'], 'cp1251', 'utf-16be');
}