Помощь Проблема с кодировкой

Тема в разделе "DLE", создана пользователем nopss, 28 ноя 2009.

Информация :
Актуальная версия DataLife Engine 12.0
( Final Release v.12.0 | Скачать DataLife Engine | Скачать 12.0 demo )
Нужно ли обновляться | Как обновиться | Изменения в шаблонах
> Нет русских символов <
[Приватная тема DLE (Все подробности в ЛС к модератору раздела)]

Версии 11.3 и ниже - уязвимы!

Локализации | F.A.Q. | Внешний вид
Правила раздела | Правила форума
Обсуждение хайда карается баном!
В каждом сообщении указывайте версию DLE, которого они касаются!
Статус темы:
Закрыта.
Модераторы: killoff
  1. nopss

    nopss Создатель

    Регистр.:
    21 ноя 2009
    Сообщения:
    15
    Симпатии:
    0
    Друзья. У меня проблема, незнаю как решить, подскажите что сделать.

    У меня свой выделенный сервер, на нём хостится сайт.

    Слил DLE 8.2, залил на хост. Запускаю инсталятор, а у меня квадратики. Ладно, вручную поставил кодировку в браузере cp1251, поставил, Меняю обратно кодировку в браузере "автоопределение".
    Открываю сайт, а там так же квадратики. По русски пишет только когда вручную переключу кодировку в браузере на виндовую кирилицу.

    Подскажите в чём баг, что и где править?
     
  2. FL@SH

    FL@SH Читатель

    Заблокирован
    Регистр.:
    20 июл 2008
    Сообщения:
    193
    Симпатии:
    25
    Проверь кодировку базы данных, кодировку в настройках дле и кодировку в ланг файле. База должна быть на cp1251 (если не менял), а всё остальное на windows-1251
     
  3. BKK

    BKK

    Регистр.:
    21 окт 2009
    Сообщения:
    161
    Симпатии:
    45
    Основная русская кодировка в Linux — это koi8-r. Но иногда требуется работать с текстами в кодировке Windows (cp1251) и другими кодировками русского языка. Для просмотра текстов в кодировках, отличных от koi8-r, существует два способа:

    1. Самый простой путь — это открыть этот текст в браузере и выбрать нужную кодировку. Это универсальный способ.
    2. Использовать специальные программы для перекодировки русских текстов:
    a) iconv — стандартная программа, есть в любом дистрибутиве. Список доступных кодировок можно увидеть по команде iconv --list. Названия кодировок должны соответствовать их именам в /usr/share/i18n/charmaps. Пример использования: iconv -f CP1251 — t KOI8-R file.txt > file.new.txt. Эта команда перекодирует foo.txt из cp1251 в koi8-r.
    b) recode — еще одна стандартная программа для перекодировок текстов под Linux.
    c) Russian Anywhere for UNIX — единственная программа для Linux, которая может автоматически определять кодировку текста.
    d) ManChr 2 — простейший скрипт для перекодировки русских текстов. Занимает всего 3 Kb в исходниках. 5 кодировок, просто и надежно.
    e) Tcod — еще один простейший скрипт.
    В большинстве программ под Linux можно использовать скрипты, так что процесс перекодировки можно элементарно заложить в скрипт и максимально упростить.
    Пример: Midnight Commander + cp1251.
    Вставим в меню Миднайта (вызывается по F2) команды, которые посылают перекодированный текст, например на текстовый редактор less.
    Это делается в файле /usr/ lib/mc/mc.menu. Синтаксис довольно прост: w Read in CP1251 iconv -f CP1251 -t KOI8-R %f | less -M.
    Теперь, для того чтобы прочитать файл в кодировке СР1251, выбираем его на панели, нажимаем F2 и горячую клавишу "w".
    Рассмотрим редактирование текстов в кодировке cp1251. Для этого достаточно выбрать шрифт с кодировкой cp1251. Если есть поддержка TrueType, то просто после того, как шрифты будут положены на место и будет сделана команда ttmkfdir, нужно в файлах fonts.dir и fonts.scale подредактировать некоторые строчки: удаляем из этих файлов все кодировки, кроме "koi8-r" и "koi8-ru", и для каждого шрифта добавляем запись с кодировкой "microsoft-cp1251". Потом считаем, сколько всего получилось строк и в начале файла (там стоит цифра, которая указывает на количество записей шрифтов) указываем то, что получилось. Теперь в X-Window есть возможность использовать шрифты в этих кодировках. Например, в nedit можно на лету поменять кодировку или запустить, к примеру, xedit, указав ему нужный шрифт.
    Подробней тут
     
  4. nopss

    nopss Создатель

    Регистр.:
    21 ноя 2009
    Сообщения:
    15
    Симпатии:
    0
    К сожалению у меня не хватает сообщений для просмотра.

    Но дело вот в чём. Кодировка в базе данных cp1251 всё нормально.
    Проблема в том, что файл руссификации в кодировке cp1251, а мне нужно в utf8. если перевести вручную некоторые файлы, то становится нормально, но появляются проблемы с кодировками в базе.

    Вот и ищу, может есть в кодировке UTF8
     
  5. nops

    nops

    Регистр.:
    10 дек 2008
    Сообщения:
    265
    Симпатии:
    7
    Кодировка на сервере KIO8-R.
    сам скрипт DLE - cp1251, проверял. в винде, при просмотре в блокноте всё по русски.
    Я что сделал, я переконвертировал фсе файлы при помощи программы "Штирлиц" из cp1251 в utf8. стало всё нормально, по русски, но при попытке отправить письмо с сайта, либо письмо с подтверждением регистрации, приходит письмо иероглифами.
    База данных а cp1251 и все таблицы тоже.
     
  6. DkNeRV

    DkNeRV Писатель

    Регистр.:
    12 янв 2009
    Сообщения:
    9
    Симпатии:
    0
    по умолчанию стоит windows-1251. После установки можно выбрать в системных настройках кодировку. utf-8 тоже сойдет
     
  7. t0wer

    t0wer BlackHerald

    Регистр.:
    24 июн 2008
    Сообщения:
    735
    Симпатии:
    423
    Естественно будет казябра. Файлы в одной кодировке, а БД в другой...
    Сливаем базу данных (то бишь делаем ее дамп). Конвертируем все из cp1251 в utf8. Накатываем в новой кодировке в БД.
     
  8. killoff

    killoff CD тихо, и не DVD меня ;)

    Moderator
    Регистр.:
    13 май 2008
    Сообщения:
    2.243
    Симпатии:
    832
    nopss, попробуй в .htaccess добавить в начало AddDefaultCharset cp1251 Мне иногда помогало при проблемах с кодировками.
     
    Jackson Lee и nops нравится это.
  9. yavasilek

    yavasilek vasilek_gorbunok

    Регистр.:
    5 окт 2008
    Сообщения:
    1.174
    Симпатии:
    424
    так ему ведь надо utf8
     
  10. nops

    nops

    Регистр.:
    10 дек 2008
    Сообщения:
    265
    Симпатии:
    7
    нет, смотри какая байда.
    Вообщем если ставлю скрипт без конвертации файлов в UTF8, то всё ромбиками, и письма с сайта уходят нормальные, приходят в нормальной кодировке.
    Если ставлю, вручную перекодированный скрипт в utf8, то всё конечно по русски, но письма корякозяброй.
    Мне было бы лучше конечно cp1251 поставить, но нужно, чтобы с кодировкой небыло проблем.
    Добавлено через 3 минуты
    Огромное смасибо, проблема решилась:) На кодировке cp1251 вставил в .htaccess и всё заработало:yahoo:
    ---------- Post added at 12:43 ---------- Previous post was at 11:32 ----------
    Друзья!
    Появилась другая проблема. Конкретнее при создании статических страниц.
    Создаём статическую страницу, называем её home
    пишем что-нить по русски, сохраняем.
    Открываем http://www.domen.com/home.html а страница пустая.
    После открываю для редактирования статическую страницу, а там пусто. Везде, где было написано по русски, везде пусто.
    Что делать?

    Добавлено через 3 минуты
    вообщем не могу создать статическую страницу с русским содержанием. Все русские буквы удаляются.
     
Статус темы:
Закрыта.