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

Кодировки MySQL (output)

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

Статус темы:
Закрыта.
  1. xak2

    xak2 Guest

    Скоро поседею уже от этих кодировок!

    В базе (и phpMyAdmin 2.11.4) все хранится в кодировке utf8_general_ci все таблицы и столбики.

    Вот ответ на SHOW VARIABLES;
    Код (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
    При выводе данных на сайт, все данные в виде восклицательных знаков. В чем проблема, вроде все красиво, не так ли?
     
  2. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Локаль поставьте на сайте и в метатеге утф пропишите, потому как по дефолту вин-1251
     
  3. xak2

    xak2 Guest

    Kreker
    Поясни пожалуйста что такое локаль или напиши хотябы английское звучание слова. В метатеге давно utf-8 везде.
     
  4. RomanBush

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

    С нами с:
    5 дек 2007
    Сообщения:
    798
    Симпатии:
    0
    Адрес:
    200 км от Москвы
    setlocale
    Ещё глянь AddDefaultCharset
     
  5. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Может и не помочь -
    setlocale(LC_ALL, "ru_RU.utf-8");

    Еще, как более подходящий вариант - запрос в базу:
    SET NAMES 'utf-8'
     
  6. RomanBush

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

    С нами с:
    5 дек 2007
    Сообщения:
    798
    Симпатии:
    0
    Адрес:
    200 км от Москвы
    Это, по идее - не должно помогать, потому как уже:

    То есть - отдаётся-то уже в utf8. Осталось понять, почему скрипт на страницу неправильно выводит.
     
  7. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    RomanBush
    Лично мне такой запрос помогал.
     
  8. xak2

    xak2 Guest

    Не помогло.

    П.С. я делаю мульти язык для Shop-Script PREMIUM и ранее проблем с кодировками небыло (знал как поправить), но в данном случаи какаято мистика, вроде бы все сделал, везде категории и на одном и на другом, описание также, все что касается самого сайта все красиво, на странице одновременно отображаются порой и Латышский и Русский. А вот в Админке дела обстоят плохо (Не помню с каких пор). Все что касается редактирования данных через формы, все чудесно а вот простое отображение текста в хтмл в вопросиках.
     
  9. RomanBush

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

    С нами с:
    5 дек 2007
    Сообщения:
    798
    Симпатии:
    0
    Адрес:
    200 км от Москвы
    хм. А по моему как раз в Shop-Script PREMIUM, где-то в админке, был глюк - там кодировку занесли в html. То есть - она не берётся из базы, а просто жёстко прописана на странице.
    Короче - <ALT>+F7 - "charset" - по всем файлам админки пройдись.
     
  10. xak2

    xak2 Guest

    Щас рискну
     
  11. xak2

    xak2 Guest

    У меня Vista ;-)
     
  12. xak2

    xak2 Guest

    Не сработало. Ну в общем... причем тут пользовательская сторона, я понимаю еслибы приходили бы каракули тагда было бы ясно, кодировка страниц или метатеги, т.к. из базы приходят знаки вопросов я могу пологать только что при оутпуте mysql сервера чтото происходит.
     
  13. xak2

    xak2 Guest

    [​IMG]
    [​IMG]

    Голова уже болит...
     
  14. RomanBush

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

    С нами с:
    5 дек 2007
    Сообщения:
    798
    Симпатии:
    0
    Адрес:
    200 км от Москвы
    блин, я это уже где-то видел. Там точно была выставлена кодировка iso-85..какая-то.
    Поищи в скриптах "iso-".
     
  15. Sergey89

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

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
    Без всяких дефисов.
     
  16. Sergey89

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

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
    Это дефолтовые значения, которые можно переопределить при помощи SET NAMES. Они используются, только когда SET NAMES не используется.
     
  17. xak2

    xak2 Guest

    Уже давно поправлено, писал от руки просто. Если использовать этот запрос 0 реакций, было бы все проще еслибы был овсе проще :?... Обычно SET NAMES, метатег и перекодировка самого файла быстро помагают, в этом случаи ... буду искать ISO найду сообщю
     
  18. xak2

    xak2 Guest

    В общем разобрался в чем проблема.

    PHP:
    1. function settingGetAllSettingGroup()
    2. {
    3.    
    4.     $q = db_query( "select settings_groupID, settings_group_name, sort_order from ".
    5.             SETTINGS_GROUPS_TABLE.
    6.             " where settings_groupID != ".settingGetFreeGroupId().
    7.             " order by sort_order, settings_group_name " );
    8.     $res = array();
    9.     while( $row = db_fetch_row($q) )
    10.         $res[] = $row;
    11.     return $res;
    12. }
    добавил:

    [sql]SET NAMES utf8[/sql]

    Если поставить этот запрос на главной странице куда вызывается эта функция, то не срабатывает. Тепер ьвсе нормально, спасибо вам всем.
     
Статус темы:
Закрыта.