Проблемы с кодировкой mysql, вместо русских букв ????

Discussion in 'PHP' started by Kruzak, 13 Feb 2012.

  1. Kruzak

    Kruzak New Member

    Joined:
    21 Dec 2010
    Messages:
    126
    Likes Received:
    4
    Reputations:
    1
    Перенес сайт на новый серв, теперь вместо русских букв выходят ?????
    Решение нашел, делать запрос каждый раз SET NAMES UTF8 - проблема вроде как решилась, но мне не нравится такой вариант, не хочу во все места добавлять, это не правильно.
    Ну и вопрос - в чем именно проблема? можно ли в одном месте подкрутить и чтобы везде всё заработало?
     
  2. krypt3r

    krypt3r Elder - Старейшина

    Joined:
    27 Apr 2007
    Messages:
    1,507
    Likes Received:
    389
    Reputations:
    101
    Почему же вы считаете, что этот вариант плохой? Ну, заюзайте тогда mysql_set_charset(). Если сервер запущен в дефолтной кодировке latin1, у вас нет иного выхода (если сервак не ваш и рутовых прав у вас нет).
    Только в том случае, если вы имеете доступ на редактирование /etc/my.cnf
     
  3. Kruzak

    Kruzak New Member

    Joined:
    21 Dec 2010
    Messages:
    126
    Likes Received:
    4
    Reputations:
    1
    есть полный рут доступ
     
  4. krypt3r

    krypt3r Elder - Старейшина

    Joined:
    27 Apr 2007
    Messages:
    1,507
    Likes Received:
    389
    Reputations:
    101
    Вроде так (/etc/my.cnf):
    Code:
    [mysqld]
    default-character-set=utf8
    default-collation=utf8_general_ci
    character-set-server=utf8
    collation-server=utf8_general_ci
    
    И рестарт демона
     
    1 person likes this.
  5. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,325
    Likes Received:
    1,194
    Reputations:
    252
    Изменять кодировку в конфиге не имеет смысла потому как скрипт когда-нибудь придется переносить на другой хостинг.
    Чтобы не менять настройки каждый раз, надо всего-лишь один раз в скрипте, сразу после mysql_select_db() писать
    PHP:
    mysql_query("SET NAMES UTF8");
    Всего 1 раз!
     
Loading...