Вы не зашли.
Страницы 1
Сделал вывод последних сообщений с форума SMF на сайт, но из за разницы в кодировок последние сооб-щения на сайте отображаются в UTF-8, а сайт в utf8 и отсюда непонятные иероглифы.
И возможно как нибудь при выводе сообщений на сайт перекодировать в utf8?
xmpp://ngcms@conf.ngcms.ru
Настройка клиента для подключения к конференции
Не в сети
Box, Вопрос необходимости...
xmpp://ngcms@conf.ngcms.ru
Настройка клиента для подключения к конференции
Не в сети
Наверное, поможет iconv. Или конвертер UTF8 => win1251, идущий в составе движка.
При постинге комментариев браузер передаёт запрос через AJAX именно в UTF8 кодировке, а двиг уже делает преобразование.
Не в сети
vitaly, через iconv всё получилось, спасибо.
Тему можно закрывать...:rolleyes:
xmpp://ngcms@conf.ngcms.ru
Настройка клиента для подключения к конференции
Не в сети
graf, Оно и так написано _http://ru2.php.net/manual/ru/function.iconv.php ...:rolleyes:
xmpp://ngcms@conf.ngcms.ru
Настройка клиента для подключения к конференции
Не в сети
Снова схожая проблема. Зделал поагин для вывода последних тем с форума SMF на прямую с БД, но на сайт выводятся лишь ???????
Вот сам код:
<?php
if (!defined('NGCMS')) die ('HAL');
add_act('index', 'smf');
function smf(){
global $config, $mysql, $tvars, $template, $tpl, $forumpref;
if ($prefix = extra_get_param('smf','prefix')) {
$prefix = extra_get_param('smf','prefix');
}
else{
$prefix = 'smf_';
}
$num = extra_get_param('smf','number');
if (($num < 1) || ($num > 50)) {$num = 10;}
$name_length = extra_get_param('smf','topicname');
if (($name_length < 10) || ($name_length > 100)) {$name_length = 20;}
$list = $mysql->select("SELECT id_msg, id_topic, subject FROM ".$prefix."messages ORDER by
poster_time DESC LIMIT $num");
if (mysql_errno() !=0) {
echo"";
}
if (is_array($list) && count($list)){
foreach ($list as $row) {
$row[subject] = iconv("utf-8", "windows-1251", $row[subject]);
if (strlen($row[subject]) > $name_length)
{
$row[subject] = substr($row[subject], 0,$name_length) . "...";
}
$tvars['vars'] = array (
'subject' => $row[subject],
'href' => '?topic=' . $row['id_topic'] . '.msg' . $row['id_msg'] . ';topicseen#new',
);
$tpl -> template('smf', extras_dir."/smf/tpl");
$tpl -> vars('smf', $tvars);
$smf .= $tpl -> show('smf');
$template['vars']['smf'] = $smf;
}
}
else{
$template['vars']['smf'] = "Возникла ошибка MySQL! Вы неправильно ввели префикс форума!";
}
}
В него добавил как и в прошлый раз
$row[subject] = iconv("utf-8", "windows-1251", $row[subject]);
Чтобы с utf-8 он перекодировал в windows-1251, но эо не помогло...:(
xmpp://ngcms@conf.ngcms.ru
Настройка клиента для подключения к конференции
Не в сети
Страницы 1