Иконка ресурса

Client Name Fixer 1.1

rejchev

менеджер клоунов
Сообщения
1,669
Реакции
1,291
@September, @Truyn, могу, но в лс дискорда, если сильно надо...

По мне дк лучше адаптировать таблицу под работу с utf8mb4
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
  • Команда форума
  • Автор ресурса
  • #65
По мне дк лучше адаптировать таблицу под работу с utf8mb4
 

defron

Участник
Сообщения
342
Реакции
138
Это будет фиксить то что не показывается звание в табе, когда у чела ник странный?
 

SniffRx

Участник
Сообщения
74
Реакции
75
Есть ли какие нибудь другие способы решения проблемы?
 

Overlord

Участник
Сообщения
537
Реакции
108
Поставил плагин. Но ошибка осталась.
[vip/VIP_Core.smx] SQL_Callback_ErrorCheck: Incorrect string value: '\xF0\x9D\x95\x8E\xF0\x9D...' for column 'name' at row 1
[vip/VIP_Core.smx] SQL_Callback_OnVIPClientAdded: Incorrect string value: '\xF0\x9D\x95\x82 \xE2...' for column 'name' at row 1
Как можно фиксануть?
База mysql
 

romeo7

Участник
Сообщения
189
Реакции
93
Поставил плагин. Но ошибка осталась.
[vip/VIP_Core.smx] SQL_Callback_ErrorCheck: Incorrect string value: '\xF0\x9D\x95\x8E\xF0\x9D...' for column 'name' at row 1
[vip/VIP_Core.smx] SQL_Callback_OnVIPClientAdded: Incorrect string value: '\xF0\x9D\x95\x82 \xE2...' for column 'name' at row 1
Как можно фиксануть?
База mysql
Попробуй Player Name Fixer
 

_wS_

Участник
Сообщения
383
Реакции
760
Пытался еще потестить, но не получается воспроизвести вашу ошибку "Incorrect string value".
Уже много символов перепробовал и даже ломал их:

C++:
char z[16];
strcopy(z, sizeof(z), "😞"); // 4 bytes (f0 9f 98 9e)
char s[2];
strcopy(s, sizeof(s), z); // И s для INSERT/UPDATE (с Escape и без пробовал)

В итоге значение поля в таблице просто становится пустым без ошибок (кодировка utf8).
Тут не могут исправить ошибку, а я наоборот не могу её воспроизвести.

@Kruzya, почему запрещаешь 3-байт символы?
Судя по гуглу, mysql выделяет utf8 символам 3 байта и проблемы возникают только с 4 байтовыми.

[levelsranks.smx] [Levels Ranks Core] SaveDataPlayer - Incorrect string value: '\xD0' for column 'name' at row 1
Он не сможет исправить; символ битый, обрезанный.
Битый/обрезанный ты имеешь в виду как в примере выше, когда обрезан 4 байт символ? Если да, то обрезанный s (в примере) по прежнему остался 4 байтовым, но уже таким: f0 0 0 0. Может, видя эту нули, просто меняем символ (подправляя байты) на точку, считая его невалидным?

Дайте кто-нибудь запрос, который вызовет эту "Incorrect string value" ошибку.
 
Последнее редактирование:

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
  • Команда форума
  • Автор ресурса
  • #72
А кодировка базы, подключения, таблицы и строк - utf8? не utf8mb4? На них точно оно вылетает.
 

_wS_

Участник
Сообщения
383
Реакции
760
А кодировка базы, подключения, таблицы и строк - utf8? не utf8mb4? На них точно оно вылетает.
Да. Плг:

C-подобный:
g_hDatabase.SetCharset("utf8");
"CREATE TABLE ... ENGINE=InnoDB DEFAULT CHARSET=utf8;"

База:
1.jpg


2.jpg


Зашел под ником: ABCD😞FGHI
В базе ник: ABCD
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
  • Команда форума
  • Автор ресурса
  • #74
sql_mode не тот, значит.
У базы есть настройка, которая регулирует, как ей проявлять свою реакцию на явные ошибки. Например, есть режим работы базы, который разрешает писать в таблицы в колонки null, даже если это запрещено на уровне структуры таблицы. Видимо, что-то подобное есть и для строк, только с обрезанием строки до последнего "валидного" символа.
 
  • Мне нравится
Реакции: _wS_

_wS_

Участник
Сообщения
383
Реакции
760
Да, у меня sql_mode NO_ENGINE_SUBSTITUTION, а изменить хостер не даёт, найс потестировал)
В теме наверно стоит упомянуть, что если есть такие ошибки и возможность изменить sql_mode, то мб проще его и изменить.
 

Black_Yuzia

Зарабатываю на жизнь Мемами про Крузю.
Сообщения
693
Реакции
372
@Kruzya может ли быть конфликт с плагином который, например, убирает ссылки из никнейма?
Например: Из ника убирается ссылка, твой плагин ренеймит но ссылка остается, плагин убирает из ника ссылку, твой плагин ... больше не ренеймит?
 

Ferks

Участник
Сообщения
24
Реакции
1
Sem título.png

Самый обновленный плагин установлен и запущен на моем сервере, однако проблема все еще сохраняется.
 

zeta211

Участник
Сообщения
5
Реакции
0
L 03/20/2021 - 18:24:04: [levels_ranks/levelsranks.smx] SQL_Callback Error (2386): Incorrect string value: '\xF0\x9D\x94\xBB\xF0\x9D...' for column 'name' at row 1

Такая же проблема актуальна, буду рад если поможете решением.
 

ANDY

Участник
Сообщения
206
Реакции
7
Ребят ник такого плана ����� не меняет! почему?
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
  • Команда форума
  • Автор ресурса
  • #80
@ANDY, это заменяющие символы. Их клиент рисует сам, если просто обрезается какой-то символ. Плагину они не видны.
 
Сверху Снизу