Кодировки БД в DLE

(Ответов: 5, Просмотров: 1039)
  1. Гуру Аватар для MetalMessiah
    • Регистрация: 19.04.2011
    • Сообщений: 726
    • Записей в дневнике: 4
    • Репутация: 187
    Доброго времени суток!

    Есть проблема - после переноса сайта отображение новостей на страницах (кодировка) нормальная, но в админке в списке новостей названия пустые из-за неправильной кодировки. Это появилось после переноса c одного фрихоста где забанили на другой фрихост (начало 2013 г.), сайт был автонаполняемым потому пофиг, списывал на г-хостинг, но сейчас я перенес это на свой VPS, над сайтом будут серьезно работать и продвигать и это уже не смешно :)

    Стоит DLE 9.5, php 5.4.4-14, mysql 5.5.35-0 (MySQLi)
    в БД все таблицы cp1251_general_ci, в phpmyadmin данные отображаются правильно.
    в конфиге 'charset' => "windows-1251",
    define ("COLLATE", "cp1251");

    Переход на DLE-utf не вариант, там вроде много файлов отличаются от версии cp1251 (не даром они разными дистрибутивами шли всегда) а у меня в движке уже много чего допилено, переделывать заново для версии utf8 не хочу. Кто-то пытался исправить код? В чем там суть проблемы?


    добавлено: в engine/inc/editnews.php
    заменил
    Код:
    		//$title = htmlspecialchars( stripslashes( $title ), ENT_QUOTES );
    на
    Код:
    		$title = str_replace('"','"', stripslashes( $title ));
    Костыль, но работает. Думаю, надо будет во всем коде админки пропатчить функцию htmlspecialchars()
    Может, есть более простое решение?
    Последний раз редактировалось MetalMessiah; 21.09.2014 в 15:40.
    Продам сайты на доменах с возрастом - mobilefun ком юа, autosworld орг юа, admintools орг юа - писать в ЛС
    • 0
  2. Гуру Аватар для MetalMessiah
    • Регистрация: 19.04.2011
    • Сообщений: 726
    • Записей в дневнике: 4
    • Репутация: 187
    ап чтоли
    Продам сайты на доменах с возрастом - mobilefun ком юа, autosworld орг юа, admintools орг юа - писать в ЛС
    • 0
  3. Опытный
    • Регистрация: 12.07.2013
    • Сообщений: 278
    • Репутация: 51
    проблема не в кодировке, а в версии php. Скорее всего раньше у вас стояла версия 5.1 -5.2, а сейчас 5.4. Из-за этого у вас и наблюдается вот такая проблема. Если есть возможность выбора версии php, то вернуть на прежнюю 5.1 или 5.2 без переустановки движка.
    • 0
  4. Гуру Аватар для MetalMessiah
    • Регистрация: 19.04.2011
    • Сообщений: 726
    • Записей в дневнике: 4
    • Репутация: 187
    Так и есть с версиями. Дурной пример Microsoft заразителен. Точка входа в процедуру ... не найдена, мать их за ногу. Откат это не самый лучший вариант. Универсального костыля, позволяющего старым движкам работать на новом PHP не существует?
    Продам сайты на доменах с возрастом - mobilefun ком юа, autosworld орг юа, admintools орг юа - писать в ЛС
    • 0
  5. Новичок
    • Регистрация: 06.06.2013
    • Сообщений: 28
    • Репутация: 12
    Универсального костыля, позволяющего старым движкам работать на новом PHP не существует?
    Могу лишь предложить везде заменить htmlspecialchars($string); на htmlspecialchars($string, NULL, ''); Ну по аналогии, если внутри не переменная, а другая функция...

    А так - либо обновляйтесь, либо откатывайтесь...
    • 0
  6. Опытный
    • Регистрация: 12.07.2013
    • Сообщений: 278
    • Репутация: 51
    С VPS/VDS я знаком очень мало, но на том хостинге что я использую есть возможность самому выбирать версию php. С 5.1 - 5.5. Если у них такое возможно, значит в принципе это возможно сделать, но как - ?
    • 0

Похожие темы

Темы Раздел Ответов Последний пост
Программы для быстрого изменения кодировки в шаблонах DLE
DLE 0 16.06.2013 18:31
Смена кодировки сайта не опасно для SEO?
Вопросы от новичков 3 16.12.2012 16:28
[WP & GGL] Тип кодировки страницы при размещении ссылок .рф
WordPress 0 04.05.2012 11:54
Возможно ли совместить 2 кодировки (win-1251 и utf-8) на одном сайте?
Web программирование 9 11.10.2011 16:38
Ньюансы в написании метатега кодировки
Общие вопросы поисковой оптимизации 0 26.08.2011 14:44

У кого попросить инвайт?

Вы можете попросить инвайт у любого модератора:

Информеры