форум vBSupport.ru > vBulletin > Old vB versions (3.0.x & 2.x.x) > vBulletin 3.5.x > vBulletin [3.5] Troubleshooting and Problems
  • »
VBsupport перешел с домена .ORG на родной .RU Ура! Пожалуйста, обновите свои закладки - VBsupport.ru
 
 
 
 
RelaXX
Продвинутый
Default Кириллица в ArticleBot RSS Feed Poster
0

Хак ArticleBot RSS Feed Poster позволяет импортировать rss-фиды и размещать их от имени определенного юзера в определенных разделах форума как темы.
Все работает, все круто, но он не понимает кириллицу. Т.е. перерабатывает и выдает из себя в utf-8 весь материал. Вместо русского текста одни "??????"
На официальном форуме автор скрипта разводит руками, он использовал парсер MagpieRSS как компонент скрипта и что там внутри него и почему нет поддержки кириллицы и как ее сделать он разбираться не хочет.
Кто нибудь решал проблему импорта rss в форум с этим хаком? Или посоветуйте другой, аналогичный по функциям.
Bot
Yandex Bot Yandex Bot is online now
 
Join Date: 05.05.2005
Реклама на форуме А что у нас тут интересного? =)
 
 
RelaXX
Продвинутый
Default
0

вот нашел какое то решение проблемы
так как сам не программер, прошу знающих объяснить кууда вставлять описанные ниже автором переменные и функции применительно к Article Bot'у
источник
Quote:
webdev | Кодировка в Magpie
Потратил больше 4х часов на изучения проблемы кодировок в РНР. Как же там криво это построено.
Проблема заключалась в том, что движок Magpie скачивает rss-ленты в одной кодировке, и должен представлять их в другой. В нём даже специальные механизмы для этого есть. Только они не работают.
Покопавшись внутри движка выяснилось, что там приличное количества кода как раз для исправления проблем с кодировками. Все входные потоки, не попавшиеся в «счастливую тройку» поддерживаемых кодировок РНР ( UTF-8, US-ASCII, ISO-8859-1), конвертируются в UTF-8, иначе будут работать не правильно. Затем предпринимается (где-то) попытка конвертировать обратно в нужную кодировку, а именно в windows-1251.Но всё это не работает. Пытался воздествовать на страничку с помощью апача. В .htaccess можно прописать:
AddDefaultCharset windows-1251
<IfModule mod_charset.c>
CharsetRecodeMultipartForms Off
CharsetSourceEnc windows-1251
</IfModule>
Что сделает основной кодировкой windows-1251. Не помогло. Можно было обработать входной массив XML-данных самостоятельно используя iconv(), что обнулировалось бы из-за поголовного перевода Magpie входных потоков в UTF-8. Обрабатывать выходной многоветковый массив я не стал ввиду непредсказуемого вывода.
Я сделал проще. Все строки в РНР – это символы. А представлением символов в выходные потоки занимаются encoding, правильнее их называть кодеками. Эти кодеки в РНР можно переопределить:
iconv_set_encoding("input_encoding", "UTF-8");
iconv_set_encoding("internal_encoding", "UTF-8");
iconv_set_encoding("output_encoding", "windows-1251");
Это input_encoding, internal_encoding, output_encoding. Затем можно захватить весь вывод на экран специальной функцией (в самом начале документа)
ob_start("ob_iconv_handler"); // start output buffering
Она преобразует весь выходной поток на экран из внутреннего представления (internal_encoding) в конечное (output_encoding). Т.е. из UTF-8 в windows-1251.
В конец документа (даже после работой с smarty) добавляем строчку:
ob_end_flush();
и вывод в нужной кодировке. Аминь, танцуем.
 
 
elnick
Продвинутый
Default
0

помогайте
 
 
atomar
Продвинутый
 
atomar's Avatar
Default
0

Тоже интересует как решить эту траблу.
 
 
elnick
Продвинутый
Default
0

Что и в каком файде надо поменять???
никак не получается
 
 
elnick
Продвинутый
Default
0

Давайте помогайте
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off




All times are GMT +4. The time now is 01:34 AM.


Powered by vBulletin® Version 3.0.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Loading...