Проблема кодировок: сайт cp1251 .. база utf8

Тема в разделе "Кодировки, ошибки отображения (крякозябры)", создана пользователем volchara, 30.07.2008.

  1. Offline

    volchara Недавно здесь

    Регистрация:
    04.06.2008
    Сообщения:
    39
    Симпатии:
    1
    Пол:
    Мужской
    В общих чертах:
    - сайт у меня в кодировке cp1251
    - база utf8
    - версия Joomla 1.0.15_RE

    Всё красиво работает и отображается .. точнее было красиво пока дело не дошло до поиска по сайту ..

    В результате выяснилось что контент сайта в базу попадает не в кодировке utf8 а в каких-то козючках.

    .. в связи с этим пару вопросов:
    - можно-ли оставить кодировки как есть и что-б это корректно работало?
    - как реанимировать контент сайта из получившихся козючек в нормальный текст?
     
  2.  
  3. Dead Krolik
    Offline

    Dead Krolik специалист

    Регистрация:
    13.04.2007
    Сообщения:
    3 688
    Симпатии:
    101
    Пол:
    Мужской
    Ответ: Проблема кодировок: сайт cp1251 .. база utf8

    >В результате выяснилось ...
    А как это выяснилось? Скриншоты давай что ли. И если сайт вот он красивый, то почему думаешь, что все испорчено.
     
  4. Offline

    volchara Недавно здесь

    Регистрация:
    04.06.2008
    Сообщения:
    39
    Симпатии:
    1
    Пол:
    Мужской
    Ответ: Проблема кодировок: сайт cp1251 .. база utf8

    Сайт записывает и считывает контент с одной и то-же перекодировкой, потому как база utf8 не происходит потери информации, это когда часть символов или все заменяются на вопросики

    кусок страницы сайта:
    0.gif

    в навигаторе по базе это выглядит:
    1.gif

    и кусок дампа:
    2.gif

    .. поверте на слово, кодировка utf8 у меня в навигаторе базы и просмотрщике текста отображается нормальными русскими символами, если их туда записать изначально верно


    Полечил .. если кто аналогично влетел с кодировками то лечится так:
    - получаем дамп файла:
    mysqldump.exe -u root -p sitebase --default-character-set=latin1 > sitedump.sql
    - в файле sitedump.sql заменяем
    CHARSET=utf8; на CHARSET=cp1251;
    плюс в начале добавляем строчку если её нет
    set names cp1251;
    - создаём на всякий случай новую базу, заливаем в неё полученный дамп
    - дальше

    или изменяем настройки базы MySql в файле my.ini
    [mysqld]
    init-connect="set names cp1251"

    или как уже где-то советовалось правим в Joomla - ком файлике includes\database.php
    //@mysql_query("SET NAMES 'utf8'", $this->_resource); на
    @mysql_query("SET NAMES 'cp1251'", $this->_resource);
    - перестартовываем если нужно MySql и перенастраиваем сайт на новый экземпляр

    .. уф, вроде всё
     
    Последнее редактирование: 31.07.2008
  5. Dead Krolik
    Offline

    Dead Krolik специалист

    Регистрация:
    13.04.2007
    Сообщения:
    3 688
    Симпатии:
    101
    Пол:
    Мужской
    Ответ: Проблема кодировок: сайт cp1251 .. база utf8

    О. Это я в фак добавляю. Гран мерси.
     
  6. Offline

    Zii Недавно здесь

    Регистрация:
    10.08.2008
    Сообщения:
    9
    Симпатии:
    0
    Здравствуйте. У меня примерно такая же проблема... Сделал выпадающее меню, оно в кодировке 1251, а весь сайт в кодировке utf8... Получается так, что когда в браузере стоит 1 кодировка, отображается 1 часть сайта правильно, а когда другая кодировка - другая часть сайта. Уже все перепробовал, и факи перечитал, и форумы. Ничего не помогло, уже просто замучался, целую неделю не могу исправить :'( Надеюсь хоть вы сможете помочь.

    Ну или может посоветуете нормальный компонент или модуль для создания выпадающих меню с мануалом, а-то сколько их перепробовал, ни один не работает нормально :(

    Joomla начал изучать недавно, поэтому если знаете как это исправить, то пожалуйста распишите подробно этот процесс...

    Стоит joomla 1.5.3. на денвере. Русифицировал после установки (не с дистрибутива)

    Скрины прилагаю

    В кодировке utf8
    112.gif

    В кодировке win-1251
    113.gif

    Можете писать мне в icq 302-520-666. Либо тут отвечать
     
    Последнее редактирование модератором: 25.11.2014
  7. Dead Krolik
    Offline

    Dead Krolik специалист

    Регистрация:
    13.04.2007
    Сообщения:
    3 688
    Симпатии:
    101
    Пол:
    Мужской
    1.5 предполагает использование UTF. Меню - я так понимаю, что это какой-то компонент? Если да, то надо его перекодировать в утф, перед тем как устанавливать.
     
  8. Offline

    Zii Недавно здесь

    Регистрация:
    10.08.2008
    Сообщения:
    9
    Симпатии:
    0
    В данном случае это не компонент. Я его создавал путем вставки кода в шаблон сайта. как описано тут
    http://www.cybercore.ru/suckerfish-dropdown-menu/

    А как перекодировать в UTF можно? И почему 1.5.3 предполагает страницы в UTF? Это ведь замедлает работу и утяжеляет сайт...
     
  9. OlegM
    Offline

    OlegM Russian Joomla! Team Команда форума

    Регистрация:
    12.04.2007
    Сообщения:
    4 356
    Симпатии:
    370
    Пол:
    Мужской
    Откроешь шаблон в Блокноте Windows -> Сохранить как... -> и выбрать кодироку UTF
     
  10. Offline

    Zii Недавно здесь

    Регистрация:
    10.08.2008
    Сообщения:
    9
    Симпатии:
    0
    Смена кодировки не помогла к сожалению :( Есть еще предложения?
     
  11. Dead Krolik
    Offline

    Dead Krolik специалист

    Регистрация:
    13.04.2007
    Сообщения:
    3 688
    Симпатии:
    101
    Пол:
    Мужской
  12. Offline

    Zii Недавно здесь

    Регистрация:
    10.08.2008
    Сообщения:
    9
    Симпатии:
    0
    :stop:Вот код самой менюшки:

    Код (html):
    1. <div id="container">
    2.  
    3. <ul id="nav">
    4.  
    5.     <li><a href="#">Домой</a>
    6.     </li>
    7.  
    8.     <li><a href="#">Размещение</a>
    9.         <ul>
    10.             <li><a href="#" class="daddy">Remoras</a>
    11.                 <ul>
    12.                     <li><a href="#" class="daddy">Echeneis</a>
    13.                         <ul>
    14.                             <li><a href="#">Sharksucker</a></li>
    15.                         </ul>
    16.                     </li>
    17.                     <li><a href="#" class="daddy">Phtheirichthys</a>
    18.                         <ul>
    19.                             <li><a href="#">Slender Suckerfish</a></li>
    20.                         </ul>
    21.                     </li>
    22.                     <li><a href="#" class="daddy">Remora</a>
    23.                         <ul>
    24.                             <li><a href="#">Whalesucker</a></li>
    25.                         </ul>
    26.                     </li>
    27.                     <li><a href="#" class="daddy">Remorina</a>
    28.                         <ul>
    29.                             <li><a href="#">White suckerfish</a></li>
    30.                         </ul>
    31.                     </li>
    32.                     <li><a href="#" class="daddy">Rhombochirus</a>
    33.                         <ul>
    34.                             <li><a href="#">R. osteochir</a></li>
    35.                         </ul>
    36.                     </li>
    37.                 </ul>
    38.             </li>
    39.             <li><a href="#" class="daddy">Tilefishes</a>
    40.                 <ul>
    41.                     <li><a href="#">Caulolatilus</a></li>
    42.                 </ul>
    43.             </li>
    44.             <li><a href="#" class="daddy">Bluefishes</a>
    45.                 <ul>
    46.                     <li><a href="#">Pomatomus</a></li>
    47.                 </ul>
    48.             </li>
    49.             <li><a href="#" class="daddy">Tigerfishes</a>
    50.                 <ul>
    51.                     <li><a href="#">Amniataba</a></li>
    52.                 </ul>
    53.             </li>
    54.  
    55.         </ul>
    56.     </li>
    57.  
    58.     <li><a href="#">Экскурсии</a>
    59.         <ul>
    60.             <li><a href="#" class="daddy">Climbing perches</a>
    61.                 <ul>
    62.                     <li><a href="#">Anabas</a></li>
    63.                 </ul>
    64.             </li>
    65.             <li><a href="#" class="daddy">Labyrinthfishes</a>
    66.                 <ul>
    67.                     <li><a href="#">Belontia</a></li>
    68.                 </ul>
    69.             </li>
    70.             <li><a href="#">Kissing gouramis</a></li>
    71.         </ul>
    72.     </li>
    73.  
    74.     <li><a href="#">Места отдыха</a>
    75.         <ul>
    76.             <li><a href="#">Burrowing gobies</a></li>
    77.         </ul>
    78.     </li>
    79.     <li><a href="#">Новости</a>
    80.     </li>
    81.     <li><a href="#">Забронировать</a>
    82.     </li>
    83.  
    84.  
    85.  
    86.  
    87. </ul>
    88. </div>




    + чтоб она работала нужно было прописать в index.html следующее:

    Код (html):
    1. <style type="text/css">
    2.  
    3. #container {
    4.     width: 50em;
    5.     background: #F4ECD9;
    6.     text-align: center;
    7.     border: 0px solid #eda;
    8.     margin: 0 auto;
    9. }
    10.  
    11.  
    12. #nav, #nav ul {
    13.     float: left;
    14.     width: 60em;
    15.     list-style: none;
    16.     line-height: 1;
    17.     background: white;
    18.     font-weight: bold;
    19.     padding: 0;
    20.     border: solid #eda;
    21.     border-width: 0px 0;
    22.     margin: 0 0 0 0;
    23. }
    24.  
    25. #nav a {
    26.     display: block;
    27.     width: 10em;
    28.     w\idth: 7em;
    29.     color: #cccccc;
    30.     text-decoration: none;
    31.     padding: 0.25em 2em;
    32. }
    33.  
    34. #nav a.daddy {
    35.     background: url(rightarrow2.gif) center right no-repeat;
    36. }
    37.  
    38. #nav li {
    39.     float: left;
    40.     padding: 0;
    41.     width: 10em;
    42. }
    43.  
    44. #nav li ul {
    45.     position: absolute;
    46.     left: -999em;
    47.     height: auto;
    48.     width: 14.4em;
    49.     w\idth: 13.9em;
    50.     font-weight: normal;
    51.     border-width: 0.25em;
    52.     margin: 0;
    53. }
    54.  
    55. #nav li li {
    56.     padding-right: 1em;
    57.     width: 13em
    58. }
    59.  
    60. #nav li ul a {
    61.     width: 13em;
    62.     w\idth: 9em;
    63. }
    64.  
    65. #nav li ul ul {
    66.     margin: -1.75em 0 0 14em;
    67. }
    68.  
    69. #nav li:hover ul ul, #nav li:hover ul ul ul, #nav li.sfhover ul ul, #nav li.sfhover ul ul ul {
    70.     left: -999em;
    71. }
    72.  
    73. #nav li:hover ul, #nav li li:hover ul, #nav li li li:hover ul, #nav li.sfhover ul, #nav li li.sfhover ul, #nav li li li.sfhover ul {
    74.     left: auto;
    75. }
    76.  
    77. #nav li:hover, #nav li.sfhover {
    78.     background: #eda;
    79. }
    80.  
    81. </style>
     
  13. Dead Krolik
    Offline

    Dead Krolik специалист

    Регистрация:
    13.04.2007
    Сообщения:
    3 688
    Симпатии:
    101
    Пол:
    Мужской
    Плохо ты кодировку менял. Меняй и все будет работать. Ты cp1251 просто вставляешь в утф-файл. Проблема в этом. Не в джумле.
     
  14. Offline

    Zii Недавно здесь

    Регистрация:
    10.08.2008
    Сообщения:
    9
    Симпатии:
    0
    Ладно, попробую. Спасибо за помощь, все же ;) Если че - напишу еще )

    Добавлено через 16 минут
    Есче такая рабла: сайт когда залил работало вроде все отлично. Сейчас че о перестало вроде. Чобы лучше понять суть вопроса можно посмотреть тут www.sacta.ru Главная страница отобраджаеся правильно, а другие страницы - нет :( То есть, так именно картинки не отображаются, а текст весь присутствует... Это не совсем проблема кодировки, но.. Не знаю что делать :(
     
    Последнее редактирование: 18.08.2008
  15. Dead Krolik
    Offline

    Dead Krolik специалист

    Регистрация:
    13.04.2007
    Сообщения:
    3 688
    Симпатии:
    101
    Пол:
    Мужской
    Аааааа. Чего это за шаблон такой, случайно не в ворде его делал? И ссылки странные там.

    Вообщем картинки - это косяк шаблона, а точнее его недоработка. Дело в путях к картинкам. Они относительные, а лучше бы что бы они были абсолютными, т.е начаниющимися с http... а не просто "templates/template_sacta/images/right_shad2.gif".
     
  16. Offline

    Zii Недавно здесь

    Регистрация:
    10.08.2008
    Сообщения:
    9
    Симпатии:
    0
    Да, но я их делаю на денвере на стационарном компе... Можно конечно прописать Z: \\home... но мне это кажется как то неправильно... Ну в общем попробую разобраться с этим... Шаблон сам делал в блокноте - просто это мой первый шаблон, поэтому косяков стока :)
     
  17. Velascues
    Offline

    Velascues Недавно здесь

    Регистрация:
    11.01.2007
    Сообщения:
    31
    Симпатии:
    2
    Пол:
    Мужской
    Привет Кролик!
    Ты мне как-то давал ссылку как править файл в includes
    опять та же проблема с кодировкой - какие то символы при переносе сайта с русского на буржуйский хост.
    Дай еще раз ссылку, я все записывал но не могу поднять свой винт с рейда, а там все...
    http://tayiland.info/
     
  18. Dead Krolik
    Offline

    Dead Krolik специалист

    Регистрация:
    13.04.2007
    Сообщения:
    3 688
    Симпатии:
    101
    Пол:
    Мужской
  19. Offline

    UncleV Недавно здесь

    Регистрация:
    10.10.2008
    Сообщения:
    3
    Симпатии:
    0
    Пол:
    Мужской
    У меня требование заказчика: cp1251. В Joomla 1.0 написался бы header в index.php. А как это сделать в Joomla 1.5.x? (База utf8).
     
  20. Fanamura
    Offline

    Fanamura Доброта

    Регистрация:
    12.03.2007
    Сообщения:
    5 108
    Симпатии:
    159
    Пол:
    Мужской
    У меня требование заказчика: cp1251... смешно даже... не пробовали переубедить?
     
  21. Offline

    UncleV Недавно здесь

    Регистрация:
    10.10.2008
    Сообщения:
    3
    Симпатии:
    0
    Пол:
    Мужской
    Попробуем. Но пока это не тот вариант. Хотелось бы узнать технические детали такой возможности (или невозможности).
     

Поделиться этой страницей

Загрузка...