За последние 24 часа нас посетили 55124 программиста и 1784 робота. Сейчас ищут 854 программиста ...

Кодировки MySQL

Тема в разделе "PHP для новичков", создана пользователем xak2, 3 фев 2008.

  1. xak2

    xak2 Guest

    Если я редактируют какоенибудь поле через phpMyAdmin (2.11.00), все русские символы отображаться каракулями:
    Код (Text):
    1. Çàãîëîâîê ãëàâíîé ñòðàíèöû ìàãàçèíà
    А на сайте знаками вопроса.

    Если поле было отредактировано через контент сайта, все отображается слегка другими каракулями:
    Код (Text):
    1. Больше
    А на сайте как следует.

    Все таблицы в базе в utf8_general_ci кодировке, кодировка страницы тоже utf-8, помимо этого в страницы добавлены:

    PHP:
    1. mysql_query("SET NAMES utf-8");
    2. mysql_query("SET CHARACTER SET utf-8");
    Вопрос не имел бы смысла еслибы в phpMyAdmin все работало как следует... В чем дело?
     
  2. RomanBush

    RomanBush Активный пользователь

    С нами с:
    5 дек 2007
    Сообщения:
    798
    Симпатии:
    0
    Адрес:
    200 км от Москвы
    А "SHOW STATUS;" в phpMyAdmin что про кодировки говорит?
     
  3. xak2

    xak2 Guest

    ничего связанного с кодировками там нету, 2 колонки только Variable_name и Value, и там надпись и циферка.
     
  4. RomanBush

    RomanBush Активный пользователь

    С нами с:
    5 дек 2007
    Сообщения:
    798
    Симпатии:
    0
    Адрес:
    200 км от Москвы
    Пардон, ашипся.
    SHOW VARIABLES;
     
  5. xak2

    xak2 Guest

    [sql]character_set_client utf8
    character_set_connection utf8
    character_set_database utf8
    character_set_filesystem binary
    character_set_results utf8
    character_set_server utf8
    character_set_system utf8
    collation_connection utf8_unicode_ci
    collation_database utf8_general_ci
    collation_server utf8_general_ci[/sql]
    Все что нашел кусающее кодировок.
     
  6. RomanBush

    RomanBush Активный пользователь

    С нами с:
    5 дек 2007
    Сообщения:
    798
    Симпатии:
    0
    Адрес:
    200 км от Москвы
    Всё вроде нормально настроено.
    Вот эти строчки:
    в данном случае не имеют смысла.

    Что-то с сервером, имхо.
    А скрипт точно в utf страницы отдаёт? А сами страницы в utf лежат?
     
  7. xak2

    xak2 Guest

    Нет нет с сайтом все в порядке и он работает как следует а phpMyAdmin выдает не правильно.

    Те строки для другой осервера где латин1 стоит, сайт я делаю на локалке.

    Мистика...
     
  8. xak2

    xak2 Guest

    Теперь слегка другая проблема, после установки на сервер, в ПМА все отображается как следует, а вот в сайте знаки впопроса... Все это при выше упомянутых параметрах +:
    Код (Text):
    1. character_set_client    utf8
    2. character_set_connection    utf8
    3. character_set_database  utf8
    4. character_set_filesystem    binary
    5. character_set_results   utf8
    6. character_set_server    latin1
    7. character_set_system    utf8
    8. character_sets_dir  /opt/lampp/share/mysql/charsets/
    9. collation_connection    utf8_general_ci
    10. collation_database  utf8_general_ci
    11. collation_server    latin1_swedish_ci
     
  9. RomanBush

    RomanBush Активный пользователь

    С нами с:
    5 дек 2007
    Сообщения:
    798
    Симпатии:
    0
    Адрес:
    200 км от Москвы
    Ага. Вот это уже интереснее. Это значит, что база лежит в latin1, отдаётся клиенту в utf-8, а, раз на странице кракозябры, значит страница генерится либо в cp1251, либо koi8-r.

    А на первый вопрос - фик знает. Похоже на криво настроенный сервер. Возможно - он физически хранит в какой-нибудь latin1, а тебе почему-то говорит, что в utf8.
    Попробуй убить базу, потом создать заново и подобавлять инфу. Возможно поможет.
    Только при создании новой базы проследи на тем, чтобы кодировка была сразу utf8, без всяких конвертаций.
    И вообще - обрати внимание, какую кодировку он при создании сам предложит.
     
  10. xak2

    xak2 Guest

    Код (Text):
    1. collation_server    latin1_swedish_ci
    2. character_set_server    latin1
    Как это поправить?
     
  11. Sergey89

    Sergey89 Активный пользователь

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
    Нет utf-8, есть utf8.
     
  12. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    сервер твой? тогда поправить my.conf
     
  13. xak2

    xak2 Guest

    Нет хостинг
     
  14. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    xak2

    тгда как уже сказали SET NAMES