Jump to content

Как исправить текстовые поля

Featured Replies

Я только что понял, что все настраиваемые текстовые поля показывают странные символы в базе данных.

Например, «João» получается как «Jo\u00e3o».

Я думаю, что это связано с system\Text\Parser.php, но я не уверен, что нужно изменить, чтобы символы отображались правильно.

Настройки базы данных выглядят правильно:

chrome_rfgRTKxNS5.png.d16ccc68b6ee42f470a6bd90827b27f8.png

Edited by BlackShot

Link to comment
https://ipbmafia.ru/topic/24089-kak-ispravit-tekstovye-polya/
Share on other sites

Seems to be something related with JSON_UNESCAPED_UNICODE and json_encode().

Link to comment
https://ipbmafia.ru/topic/24089-kak-ispravit-tekstovye-polya/?&do=findComment&comment=178043
Share on other sites

U about custom profile fields? 

Link to comment
https://ipbmafia.ru/topic/24089-kak-ispravit-tekstovye-polya/?&do=findComment&comment=178053
Share on other sites
1 hour ago, Desti said:

U about custom profile fields? 

That's right! They use some kind of logic I still don't understand apparently.

Link to comment
https://ipbmafia.ru/topic/24089-kak-ispravit-tekstovye-polya/?&do=findComment&comment=178056
Share on other sites
2 hours ago, Desti said:

standard setup, no problem

image.png.fddaa5ceaa8edc08137a2d43edb69599.png

Пробовали ли вы создать пользовательское *текстовое* поле в Nexus/Commerce? Я получил этот ответ от кого-то:

Quote

Прежде всего, \u00e3 не генерируется MySQL. Однако он может быть сгенерирован функцией PHP json_encode(). Обязательно используйте JSON_UNESCAPED_UNICODE во втором аргументе этой функции.

Для использования в таблицах MySQL я предпочитаю, чтобы настройки подключения и сервера были постоянно установлены на utf8mb4, чтобы данные Unicode просто появлялись и исчезали без преобразования.

 

Link to comment
https://ipbmafia.ru/topic/24089-kak-ispravit-tekstovye-polya/?&do=findComment&comment=178077
Share on other sites
7 часов назад, BlackShot сказал:

*текстовое* поле в Nexus/Commerce?

image.png.3b96b2627d032db25cde0399b32518a4.png

Link to comment
https://ipbmafia.ru/topic/24089-kak-ispravit-tekstovye-polya/?&do=findComment&comment=178080
Share on other sites
18 hours ago, Desti said:

image.png.3b96b2627d032db25cde0399b32518a4.png

Mine doesn't have that cm prefix. Maybe it's an older/newer version? Anyway, how about core_pfields_data (pf_content) or nexus_support_fields (sf_extra)?

image.png.09430ed3cf5137a467386c5e40077d58.png

Link to comment
https://ipbmafia.ru/topic/24089-kak-ispravit-tekstovye-polya/?&do=findComment&comment=178121
Share on other sites

system/CustomField/CustomField.php - 

Search json_encode and edit string

$values[ static::$databasePrefix . $k ] = ( $k === 'content' ? json_encode( $_value, JSON_UNESCAPED_UNICODE ) : $_value );

All custom field (and nexus too) must work properly

Edited by Desti

Link to comment
https://ipbmafia.ru/topic/24089-kak-ispravit-tekstovye-polya/?&do=findComment&comment=178125
Share on other sites
18 hours ago, Desti said:

system/CustomField/CustomField.php - 

Search json_encode and edit string

$values[ static::$databasePrefix . $k ] = ( $k === 'content' ? json_encode( $_value, JSON_UNESCAPED_UNICODE ) : $_value );

All custom field (and nexus too) must work properly

Aha! Works perfectly now - you're a legend! Why do you think IPS didn't have that added in the first place? You think they just missed it, didn't consider their international userbase, or does it affect performance/security? 🤔

Link to comment
https://ipbmafia.ru/topic/24089-kak-ispravit-tekstovye-polya/?&do=findComment&comment=178151
Share on other sites

I suspect that for them the great revelation was the existence of other languages :)

Link to comment
https://ipbmafia.ru/topic/24089-kak-ispravit-tekstovye-polya/?&do=findComment&comment=178153
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.


Guest
Ответить в этой теме...

Последние посетители 0

  • No registered users viewing this page.