Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.

Реклама


 
IP:176.32.36.96:7777 Ha6op adm,liderov + bonuse.

**Как получить V.I.P** (Перейти)
Чтобы заказать рекламу на Pro-Pawn.Ru, обращайтесь в Skype.
Баннерная реклама 100руб/мес, Текстовая 50руб/мес.
Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 20
  1. #1
    Аватар для $continue$
    Пользователь

    Статус
    Оффлайн
    Регистрация
    02.08.2014
    Адрес
    г. Киров (aka Вятка)
    Сообщений
    1,321
    Репутация:
    232 ±

    Решение проблемы с кодировкой в MySQL | R33+

    Доброго времени суток! В интернете есть много решение данной проблемы (на форумах по Pawn), но они то не работают, то выбивают ошибку в лог. Пример кода при котором в лог идет ошибка:
    PHP код:
    mysql_set_charset(!"utf8_bin");
    mysql_function_query(MYSQL_ARG, !"SET NAMES 'utf8'"false"""");
    mysql_function_query(MYSQL_ARG, !"SET CHARACTER SET 'cp1251'"false""""); 
    Ошибка в логах:
      Открыть/закрыть



    Решение данной проблемы я все таки добился. И хочу поделиться с Вами: (до версии R40)
    PHP код:
    SetMySQLEncoding(var_connection)
    {
        
    mysql_function_query(var_connection, !"SET CHARACTER SET 'utf8'"false"""");
        
    mysql_function_query(var_connection, !"SET NAMES 'utf8'"false"""");
        
    mysql_function_query(var_connection, !"SET character_set_client = 'cp1251'"false"""");
        
    mysql_function_query(var_connection, !"SET character_set_connection = 'cp1251'"false"""");
        
    mysql_function_query(var_connection, !"SET character_set_results = 'cp1251'"false"""");
        
    mysql_function_query(var_connection, !"SET SESSION collation_connection = 'utf8_general_ci'"false"""");

    После версии R40:
    PHP код:
    SetMySQLEncoding(MySQL:var_connection)
    {
        
    mysql_tquery(var_connection, !"SET CHARACTER SET 'utf8'""""");
        
    mysql_tquery(var_connection, !"SET NAMES 'utf8'""""");
        
    mysql_tquery(var_connection, !"SET character_set_client = 'cp1251'""""");
        
    mysql_tquery(var_connection, !"SET character_set_connection = 'cp1251'""""");
        
    mysql_tquery(var_connection, !"SET character_set_results = 'cp1251'""""");
        
    mysql_tquery(var_connection, !"SET SESSION collation_connection = 'utf8_general_ci'""""");

    Пример использование (сразу после mysql_connect):
    PHP код:
    SetMySQLEncoding(mysql_connect_ID); // Где mysql_connect_ID - Подключение к базе данных 
    Почитать о character_set.
    Возможно у Вас есть более простое решение данной проблемы. Я буду рад если Вы поделитесь решением.
    Последний раз редактировалось $continue$; 20.10.2016 в 15:29.
    Value your freedom or you will lose it, teaches history. "Don't bother us with politics," respond those who don't want to learn. (c) Richard Stallman

  2. 2 пользователя(ей) сказали cпасибо:
    #Vito (17.06.2016)Sp1ke (23.04.2016)
  3. #2
    Аватар для DmX
    Пользователь

    Статус
    Оффлайн
    Регистрация
    22.04.2013
    Адрес
    Краснодар
    Сообщений
    277
    Репутация:
    23 ±
    Очень полезный урок, Данил очень помог мне :)

  4. #3
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    3,111
    Репутация:
    1253 ±
    PHP код:
    SetEncodingMySQL(var_connection

        
    mysql_function_query(var_connection, !"SET CHARACTER SET 'utf8'"false""""); 
        
    mysql_function_query(var_connection, !"SET NAMES 'utf8'"false""""
        
    mysql_function_query(var_connection, !"SET character_set_client = 'cp1251'"false""""); 
        
    mysql_function_query(var_connection, !"SET character_set_connection = 'cp1251'"false""""); 
        
    mysql_function_query(var_connection, !"SET character_set_results = 'cp1251'"false""""); 
        
    mysql_function_query(var_connection, !"SET SESSION collation_connection = 'utf8_general_ci'"false""""); 

    Точки с запятой нет в конце :)
    PHP код:
    mysql_function_query(var_connection, !"SET NAMES 'utf8'"false""""
    Связаться со мной можно в личных сообщениях этой группы

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  5. Пользователь сказал cпасибо:
    $continue$ (19.03.2016)
  6. #4
    Аватар для $continue$
    Пользователь

    Статус
    Оффлайн
    Регистрация
    02.08.2014
    Адрес
    г. Киров (aka Вятка)
    Сообщений
    1,321
    Репутация:
    232 ±
    Thank, DeimoS. Fix, update.
    Value your freedom or you will lose it, teaches history. "Don't bother us with politics," respond those who don't want to learn. (c) Richard Stallman

  7. #5
    Аватар для Daniel_Cortez
    new fuck_logic[0] = EOS;

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Адрес
    Novokuznetsk, Russia
    Сообщений
    1,515
    Репутация:
    2043 ±
    Цитата Сообщение от $continue$ Посмотреть сообщение
    Thank, DeimoS. Fix, update.
    "Благодарить, DeimoS. Исправлять, обновлять."
    Lol'd.
    Индивидуально в PM и Skype по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).
    SA-MP 0.4 is a lie

  8. Пользователь сказал cпасибо:
    Anton Styazhkin (23.03.2016)
  9. #6
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    3,111
    Репутация:
    1253 ±
    Цитата Сообщение от Daniel_Cortez Посмотреть сообщение
    "Благодарить, DeimoS. Исправлять, обновлять."
    Lol'd.
      Открыть/закрыть
    Связаться со мной можно в личных сообщениях этой группы

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  10. #7
    Аватар для $continue$
    Пользователь

    Статус
    Оффлайн
    Регистрация
    02.08.2014
    Адрес
    г. Киров (aka Вятка)
    Сообщений
    1,321
    Репутация:
    232 ±
    Да, да ты опять поймал меня с плохим знанием English/Russian Language :(
    Цитата Сообщение от Daniel_Cortez Посмотреть сообщение
    "Благодарить, DeimoS. Исправлять, обновлять."
    Lol'd.
    Value your freedom or you will lose it, teaches history. "Don't bother us with politics," respond those who don't want to learn. (c) Richard Stallman

  11. #8
    Аватар для seriu
    Пользователь

    Статус
    Оффлайн
    Регистрация
    29.11.2013
    Сообщений
    59
    Репутация:
    5 ±
    Уже давно как-то сделал только это:
    PHP код:
    mysql_function_query(base, !"SET NAMES cp1251"false"""" ); 
    И никаких "???????" нету.

  12. #9
    Аватар для $continue$
    Пользователь

    Статус
    Оффлайн
    Регистрация
    02.08.2014
    Адрес
    г. Киров (aka Вятка)
    Сообщений
    1,321
    Репутация:
    232 ±
    Включи полное логирование (HTML формат) и скинь логи. Вот только сервер под управлением Linux
    Цитата Сообщение от seriu Посмотреть сообщение
    Уже давно как-то сделал только это:
    PHP код:
    mysql_function_query(base, !"SET NAMES cp1251"false"""" ); 
    И никаких "???????" нету.
    Последний раз редактировалось $continue$; 03.06.2016 в 21:54.
    Value your freedom or you will lose it, teaches history. "Don't bother us with politics," respond those who don't want to learn. (c) Richard Stallman

  13. #10
    Аватар для seriu
    Пользователь

    Статус
    Оффлайн
    Регистрация
    29.11.2013
    Сообщений
    59
    Репутация:
    5 ±
    Цитата Сообщение от $continue$ Посмотреть сообщение
    Включи полное логирование (HTML формат) и скинь логи. Вот только сервер под управлением Linux
    http://i.imgur.com/MofrHLe.png
    https://yadi.sk/d/r2ZnXERmsF9rW
    хостинг: myarena ( linux )
    п.с я сделал отдельную таблицу для команды "/su" т.е записывается в бд "wanted" причину
    "11:41:05 CMySQLResult::GetRowDataByName OK row: '0', field: "Reason0", data: "ÒÅÑÒ ïàì ïàì "
    Но, на сервере все отображается как нужно.
    Последний раз редактировалось seriu; 04.06.2016 в 11:52.

 

 
Страница 1 из 2 12 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •