Длина поля в байтах, про которые юзверь ничего не знает
От: vitorg Россия  
Дата: 06.03.09 10:33
Оценка:
Есть веб-страничка, на которой есть поле name, в БД поле имеет тип — длина 20 байт (тип этого поля и длину мы менять не можем, оно не наше).
Понятное дело, что пользователь может ввести имя как в однобайтовой кодировке, так и в мультибайтовой (2,3,4 байта на символ).

Если пользователь англичанин и вводит в латинице, то проблем нет, но если русскоязычный (у нас UTF-8) или китаец, то он может ввести 15 символов и это будет 30 байт, соответственно он увидит сообщение "Извините, не больше 20 символов" и будет сбит с толку, он ведь ввёл 15 символов и про байты ничего знать не знает.

Как быть в такой ситуации? Какое сообщение показать пользователю или может есть какие-нибудь неочевидные элегантные решения в подобных случаях?
Jabber: vitorg@jabber.org
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.