1. Соблюдайте Правила форума и проявляйте уважение к другим участникам беседы.

GhostOne sql на хостинге и кодировка кирилицы

Тема в разделе 'Запуск и Поддержка', создана пользователем ELITE, 6 дек 2012.

  1. ELITE Гуру

    Сообщения:
    252
    Спасибы:
    23
    Дата начала использования бота:
    00.00.2012
    помогите натсроить
    в общем базу хостинга использую
    Код:
    character set client    utf8
    (Глобальное значение)    cp1251
    character set connection    utf8
    (Глобальное значение)    cp1251
    character set database    cp1251
    character set results    utf8
    (Глобальное значение)    cp1251
    character set server    cp1251
    character set system    utf8
    collation connection    utf8_unicode_ci
    (Глобальное значение)    cp1251_general_ci
    collation database    cp1251_general_ci
    collation server    cp1251_general_ci
    эти значения НЕЛЬЗЯ изменить
    сайт везде прописан UTF-8
    но никак не могу заставить корректно боту передавать кирилицу в базу
    -------------
    пробовал
    Код:
        mysql_options( Connection, MYSQL_OPT_RECONNECT, &Reconnect );
        mysql_options( Connection, MYSQL_SET_CHARSET_NAME, "utf8");
        mysql_options( Connection, MYSQL_INIT_COMMAND, "SET NAMES utf8"); 
    но так в базе только 1 раз передает в УТФ8 - все последующие разы идет опять непонятно что
    (ну например 3 раза нажимаю бан - первый раз нормально - дальше кракозябры и так до перезапуска бота)

    может еще где надо заменить или дописать этот код???
  2. ELITE Гуру

    Сообщения:
    252
    Спасибы:
    23
    Дата начала использования бота:
    00.00.2012
    итак все настроил
    вот решение
    в ghostdbmysql.cpp
    надо найти
    Код:
    mysql_options( Connection, MYSQL_OPT_RECONNECT, &Reconnect );
    и под него вставить

    Код:
    mysql_options( Connection, MYSQL_SET_CHARSET_NAME, "utf8");
    mysql_options( Connection, MYSQL_INIT_COMMAND, "SET NAMES utf8"); 

    далее находим
    Код:
    mysql_options( (MYSQL *)m_Connection, MYSQL_OPT_RECONNECT, &Reconnect );
    и добавляем под него

    Код:
    mysql_options( (MYSQL *)m_Connection, MYSQL_SET_CHARSET_NAME, "utf8");
    mysql_options( (MYSQL *)m_Connection, MYSQL_INIT_COMMAND, "SET NAMES utf8"); 

    далее находим

    Код:
    mysql_options( (MYSQL *)Connection, MYSQL_OPT_RECONNECT, &Reconnect );
    и дописыпаем под него
    Код:
    mysql_options( (MYSQL *)Connection, MYSQL_SET_CHARSET_NAME, "utf8");
    mysql_options( (MYSQL *)Connection, MYSQL_INIT_COMMAND, "SET NAMES utf8"); 

    последний блок всречается несколько раз - надо везде добавить

    после чего русские буквы корректно добавляются в базу и отображаются на сайте
    --------------------------------
    код проверен и работает
    если понравилось и помогло - жмем спасибо :)
    Execute, Suicider и rost нравится это.
  3. Doterok Старожила

    Сообщения:
    923
    Спасибы:
    171
    Сборка бота GHost:
    Ghost ++ 17.2
    Дата начала использования бота:
    2011
    у меня и без этого отображались норм :palevo:
    Suicider нравится это.
  4. ELITE Гуру

    Сообщения:
    252
    Спасибы:
    23
    Дата начала использования бота:
    00.00.2012
    возможно в ваш бот это уже и так встроено
  5. ELITE Гуру

    Сообщения:
    252
    Спасибы:
    23
    Дата начала использования бота:
    00.00.2012
    да какая разница - если у кого будет такая проблема (а судя по гуглу многие мучаются с таким) - будет откуда информацию взять
  6. Doterok Старожила

    Сообщения:
    923
    Спасибы:
    171
    Сборка бота GHost:
    Ghost ++ 17.2
    Дата начала использования бота:
    2011
    Возможно пора отказаться от Ghost by tekken и у вас норм будет ;)
  7. rost Гуру

    Сообщения:
    1.258
    Спасибы:
    150
    Сборка бота GHost:
    LtG
    Дата начала использования бота:
    01.11.2010
    Skype:
    Мой статус
    Это когда кодировка бызы кирилица! У меня допустим вот кирил... и это не поменять со стороны БД, только ботом.

    Так что прекратите его грузить про кривых ботов...