Исправляем проблемы с кодировкой utf-8

Тема в разделе "NewsGrabber", создана пользователем esencija, 1 фев 2007.

Статус темы:
Закрыта.
  1. esencija

    esencija Прохожие

    У кого были проблемы с кодировкой в выводе новостей. Выводились:
    заголовок - кракозяблы
    короткая новость - кракозяблы
    путь до файла - кракозяблы_кракозяблы.html

    Всё исправлено. Замените файл /admin/cron/source.getcontent.php


    Проблема с кодировкой возникала, если на сервере был установлен пхп 5, в моём случае у хостера стоит 5.2

    Добавлено через 14 минут
    Не могу файл прикрепить. лопатим код:

    110-113 строка
    Код:
                    if ($xml[0] != "<") $xml = substr($xml, strpos($xml, "<"));
                    if (strpos(strtolower($xml), "encoding=\"koi8-r\"") !== false) $xml = convert_cyr_string($xml, "k", "w");
                    if (strpos(strtolower($xml), "encoding=\"utf-8\"") !== false) $xml=iconv("UTF-8", "Windows-1251", $xml);
    				$headers = iconv("UTF-8", "Windows-1251",$headers);
    167-169
    Код:
                    if (strpos(strtolower($xml), "encoding=\"koi8-r\"") !== false) $xml = convert_cyr_string($xml, "k", "w");
                    if (strpos(strtolower($xml), "encoding=\"utf-8\"") !== false) $xml=iconv("UTF-8", "Windows-1251", $xml);
    				$headers = iconv("UTF-8", "Windows-1251",$headers);
    336 строка
    Код:
    $item["news_trans_title"] = to_translit(trim(iconv("UTF-8", "Windows-1251",$item["news_title"])));
    358-359
    Код:
                        $news_title = iconv("UTF-8", "Windows-1251",$item["news_title"]);
    					$news_description = iconv("UTF-8", "Windows-1251",$item["news_description"]);
    388 строка
    заменяем news_description на $news_description и news_title на $news_title



    Хочу предупредить, эти изменения были сделаны для интеграции NG в DLE. Строки даны примерные, у вас могут быть другими. Но смысл думаю понятен.

    Вроде ничего не забыл
     
  2. Seodan

    Seodan SEO Модератор

    Регистр.:
    20 ноя 2006
    Сообщения:
    199
    Симпатии:
    131
    Спасибо большое. Сейчас попробую.
     
  3. Inter

    Inter Постоялец

    Регистр.:
    14 янв 2007
    Сообщения:
    54
    Симпатии:
    22
    А это подойдет, если - база в utf-8, сайт (джомла) в utf-8?

    На сайте новости отображаються нормально. Проблема с кракозяблами осталась только в админке граббера. Я так понимаю, что сам граббер в win1251, а новости в админку выводит в utf.

    Если пробую исправить, чтобы в админке было нормально, тогда на сайте выводиться некорректно...
     
  4. esencija

    esencija Прохожие

    Я уже говорил, что я правил код для интеграции NG в DLE, там вырезаны почти все функции, осталась только функция парсера. В админке не выводятся новости, они сразу автоматически добавляются на сайт без премодерации. Посмотри файлы вывода новостей и исправь там кодировку функцией iconv
     
  5. Dinia

    Dinia Создатель

    Регистр.:
    27 сен 2007
    Сообщения:
    24
    Симпатии:
    0
    Незнаю, перепробывал все ничего не помогает. Можа конечно хостер зашил у ся по умолчанию UTF-8. Нокак ни пытался что либо поменять, ничего не вышло. В базе такие же кракозяблы, хотя стоит 1251 сравнение. Если у кого какие мысли есть подскажите.
     
  6. Katze

    Katze Писатель

    Заблокирован
    Регистр.:
    3 янв 2008
    Сообщения:
    7
    Симпатии:
    0
    на локалке тестил?
     
  7. cat33

    cat33 Создатель

    Регистр.:
    27 дек 2007
    Сообщения:
    17
    Симпатии:
    2
Статус темы:
Закрыта.