Краткие новости

Заботясь о безопасности своего сайта, ставя только проверенные расширения и периодические обновляя Joomla до последних версий Вы всё же рискуете в один ужасный момент потерять всё свои данные. Аппаратные сбои, механические проблемы или просто неоплаченный заранее хостинг может навсегда лишить Вас всей информации с сайта.
 
Главная arrow Блог arrow Кодировка latin1 против cp1251 на Joomla
Кодировка latin1 против cp1251 на Joomla

???????????? Вместо букв - страшный джинн последствий разных кодировок в настройках mySQL.

     До сих пор это великое колдунство не дает покоя попавшим на это.  Но иногда это все же решаемо.Надеюсь, все Вы уже освоили использование Sypex Dumper Lite 1.0.8? так вот с помощью него и рекомендаций от его создателя, оказывается решить эту проблему можно.
    Итак действие первое: Делаем бэкап  БД при помощи Sypex Dumper Lite 1.0.8, НО! происываем там следующие строчки: в dumper.php , CHARSET = 'auto', RESTORE_CHARSET = 'forced->cp1251'), Понятно, что для полного контроля, тут же восстанавливаем этот дамп, чтобы знание о том, что все в порядке  вселилось и более не уходило. ЧТо имеем : у дапма БД Joomla та  кодировка,  что нам необходима. И phpmyadmin показывать и сортирует кириллицу правильно. 
    А теперь мы переносим сайт на новый хостинг в далекие североамериканские штаты. В данном случае это  servage.net

    Процесс переноса  не вполне простой - т..к. имеется в наличии только данные mySQL и ftp доступ, посему просто закачиваем файлы на хост, и проводим первичную установку Джумлы как это написано в руководстве.
    А потом... А за этим запускаем Dumper и вписываем наш дамп, принесенный из России, в кодировке DEFAULT CHARSET=cp1251 и глядим, что получилось.

latin1 против cp1251 на Joomla

    Конечно картина нисколько не радует. Даже печалит. Не беда! - сейчас все исправим!
Достаем файл database.php из includes и находим там строку содержащую mysql_select_db. А потом прсот добавляем перед ней магическую  строчку
mysql_query("/*!40101 SET NAMES 'cp1251' */") or die("Error: " . mysql_error());
    И, волшебство побеждает колдунство! - вот результат!

Кодировка  latin1 против cp1251 на Joomla 

Комментарии (8)Add Comment
...
Автор: аффтар, Август 05, 2007
Пока что нет опыта по проделыванию обратной операции, - т.е. по переносу из latin1 на cp1251, если кто-то поделится опытом - то ему респект.
...
Автор: Vladimir, Декабрь 12, 2007
Спасибо! Помогло в phpbb2!
...
Автор: Анатолий, Февраль 14, 2008
Можно ли более подробнее описать куда вставлять! у меня функция
if ( $db != '' && !mysql_select_db( $db, $this->_resource ))
за ранее благодарен!!!
...
Автор: SayDan, Июль 08, 2008
Человек молодец! коротко и ясно написал.
Респектус!
...
Автор: Алексей, Сентябрь 02, 2008
А какже быть с версией 1.5, там файл database.php пактически пустой
...
Автор: Railerg, Май 05, 2009
Огромное СПАСИБО
...
Автор: Doroh, Май 17, 2009
Спасибо. Действительно помогло. Все заработало. А то замучился с этой латиной :)
...
Автор: Adam, Июнь 23, 2009
Поздравляю, эта замечательная http://european-countries.com.ua/ придется как раз кстати

Написать комментарий

joomla.tj
busy
 
« Пред.   След. »
Страница сгенерирована за 0.033098 секунд

74ru.net объявления Челябинск вакансии

Екатерина шикарные cвадебное фото и остальные фото на заказ

Каталог фото сайтов