Есть веб-страничка, на которой есть поле name, в БД поле имеет тип — длина 20 байт (тип этого поля и длину мы менять не можем, оно не наше).
Понятное дело, что пользователь может ввести имя как в однобайтовой кодировке, так и в мультибайтовой (2,3,4 байта на символ).
Если пользователь англичанин и вводит в латинице, то проблем нет, но если русскоязычный (у нас UTF-8) или китаец, то он может ввести 15 символов и это будет 30 байт, соответственно он увидит сообщение "Извините, не больше 20 символов" и будет сбит с толку, он ведь ввёл 15 символов и про байты ничего знать не знает.
Как быть в такой ситуации? Какое сообщение показать пользователю или может есть какие-нибудь неочевидные элегантные решения в подобных случаях?