Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
Buskopan

Запрос ников в php

Рекомендованные сообщения

Купил забугорный чат для форума. Все хорошо да не понимает до конца он кириллицы. А саппорт тугодумы.

 

вот такой вот беспредел получается

post-39692-0-78227500-1315398096_thumb.jpg

 

Все ники у которых отображаемое имя введено кириллицей дают такие вот крякозябры в окошке где они собственно должны отображаться.

 

Полагаю за это безобразие отвечает файл cometchat_getid.php

 

Который собственно выглядит так.

 

include_once dirname(__FILE__)."/cometchat_init.php";

$response = array();
$messages = array();

$status['available'] = $language[30];
$status['busy'] = $language[31];
$status['offline'] = $language[32];
$status['invisible'] = $language[33];
$status['away'] = $language[34];

$fetchid = $_POST['userid'];

$time = getTimeStamp();
$sql = getUserDetails($fetchid);
$query = mysql_query($sql);

if (defined('DEV_MODE') && DEV_MODE == '1') { echo mysql_error(); }

$chat = mysql_fetch_array($query);

if ((($time-processTime($chat['lastactivity'])) < ONLINE_TIMEOUT) && $chat['status'] != 'invisible' && $chat['status'] != 'offline') {
if ($chat['status'] != 'busy' && $chat['status'] != 'away') {
	$chat['status'] = 'available';
}
} else {
$chat['status'] = 'offline';
}

if ($chat['message'] == null) {
$chat['message'] = $status[$chat['status']];
}

$link = getLink($chat['link']);
$avatar = getAvatar($chat['avatar']);

if (function_exists('processName')) {
$chat['username'] = processName($chat['username']);
}

$response =  array('id' => $chat['userid'], 'n' => $chat['username'], 's' => $chat['status'], 'm' => $chat['message'], 'a' => $avatar, 'l' => $link);
// session_write_close();
// sleep(10);
header('Content-type: application/json; charset=utf-8');
echo json_encode($response);
exit;

 

либо один из других файлов, что маловероятно.

post-39692-0-78499600-1315398407_thumb.png

 

Вопрос: Как заставить приложение понимать русские ники?

Поделиться сообщением


Ссылка на сообщение

Файл в кодировке utf-8?

 

Как вариант попробуйте добавить

$chat['username'] = mb_convert_encoding( $chat['username'], 'utf-8' );

 

перед

$response =  array('id' => $chat['userid']...

Поделиться сообщением


Ссылка на сообщение

Файл в кодировке utf-8?

да

 

Как вариант попробуйте добавить

не помогло.

 

кстати забыл добавить что кряказябры не только на русских никах. то же самое на китайских и арабских символах, подзреваю что и в остальных тоже.

одним словом all non english nicknames.

Поделиться сообщением


Ссылка на сообщение

Тогда в саппорт, по одному этому куску кода мало что можно сказать. Ajax работает в utf-8, странно что не заработало. Надо проследить весь "путь", от запроса данных до отображения в браузере.

Поделиться сообщением


Ссылка на сообщение

Плохо. Видимо придется думать как конвертировать русские ники в латинские при запросе.

 

Саппорт окончательно потух с моим билетиком.

Поделиться сообщением


Ссылка на сообщение

А на каком этапе портится ник? На выводе в этом всплывающем окошке, или вообще везде там у них в системе?

 

Как он читает ники с форума? Через mysql? Может, там где-то поискать и внедрить "SET NAMES utf8"? :)

Поделиться сообщением


Ссылка на сообщение

А на каком этапе портится ник? На выводе в этом всплывающем окошке, или вообще везде там у них в системе?

Не отображается вообще. Везде. Ссылки на ники активные правда. Нужно догадываться по мелким аватарам.

 

Как он читает ники с форума? Через mysql?

да.

 

Может, там где-то поискать и внедрить "SET NAMES utf8"?

знать бы где да как :( мне наверное легче будет запретить кириллицу в никах при регистрации.

 

спасибо.

Поделиться сообщением


Ссылка на сообщение

Баг исправили.

 

It is a IPB specific issue. Has been resolved. Three lines need to be commented in cometchat_init.php

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×
×
  • Создать...