[Typo3] Indexed Search (CVS Version) + MySQL 4.1 + UTF-8 => no results with special chars

Ernesto Baschny [cron IT] ernst at cron-it.de
Fri Dec 2 17:45:33 CET 2005


Torsten Schrade schrieb am 02.12.2005 11:49:

>> Some versions of mysql do not support utf-8 natively. Some other
>> databases do not support utf-8 too. This is why typo3 handles it all.

> this is very interesting. Is it then possible to store say characters
> from latin1, big5, and greek within the same iso-8859-1 database? I
> always thought that this was precicely what utf8 was for...

I think bytes are bytes, and this is what is being stored into the
database, as long as you don't instruct the DB to do any transformation.

If you save 2 bytes for an UTF-8 "Ä" in an ISO-Latin-1 database, the
database won't bother, as those two bytes probably represent some other
characters in Latin-1. The DB-layer just won't be able to sort correctly
on that information.

Later you retrieve the same bytes "as is" (in ISO-Latin-1 mode): the DB
will just hand you all bytes back, and you have the original UTF-8
character that you needed.

If you set the DB-tables to "UTF-8", and you request some data in
ISO-Latin-1 mode, which is what TYPO3 probably does, the DB will try to
do some conversion, which will probably corrupt the data that TYPO3 will
work with.

Well, I haven't really looked at the code or how DBs handle this, this
is just my intuitive guess! :)

Cheers,
Ernesto



More information about the TYPO3-english mailing list