Smart Trimming of UTF-8 Entities for Database

From: Date: Fri, 08 Apr 2005 02:08:27 +0000
Subject: Smart Trimming of UTF-8 Entities for Database
Groups: php.general 
Request: Send a blank email to php-general+get-212612@lists.php.net to get a copy of this message
I need to be able to store UTF-8 characters from a form into a MySQL table. But I need to support pre-UTF-8 MySQL (< 4.1). So I'm converting UTF-8 characters into their numeric entities (e.g. ñ = &#241;). The problem is that if the user enters a character that gets converted to an entity, the string might end up being longer than the field definition in the table allows. For example, if I have a varchar(5) column and try to insert "señor" (which has been converted to "sen&#241;or"), I get "sen&#" in the table which is useless. Has anyone dealt with this and if so how? Thanks in advance for any advice, or pointers to any code that deals with this.

« previous php.general (#212612) next »