
Hi all, after investigating character sets & languages for quite a while now, and writing a correct implentation of a language system for my phpDNS project, i wanted to propose adding the same system to phpMyAdmin. Features: - Can detect user language and character set from browser, incl regional variants - supports HTTP/1.1 language/charset q-values. - automatically sets correct fonts. - can figure out the most likely language to use if the exact language support is not available. EG if 'fr-ca' is supported (not plain 'fr'), but the user requests 'fr-ch', they will get 'fr-ca' since it's the closest to 'fr-ch' that is available. - all language data stored in a database, for easy updating - able to include mroe than one language, eg load 'fr' and then 'fr-ca' on top of that to redefine only some tags. - supports multiple character sets per language - call to get a string is i18n("String_Name") Implementation: - database uses a single table, and stores data in a tree structure inside the table. - OpTree is the wrapper class for handling the table. - (I also use it to store most of the configuration options for the program) - On login, all the language data for your selected language is stored in a session file, to avoid repeated database access. Known caveats: - don't know if sessions are supported on non-UNIX platforms I think sessions are supported on NT, but not sure beyond that - database overhead on first loadup actualy gets called twice, once for the login page, and once for the rest of the system - size of session files possibly I should reduce the session file lifetime? (can anybody suggest any more?) see the main phpDNS active working tree at http://phpdns-local.orbis-terrarum.net/phpDNS/userspace/ - login: test - password: test see the OpTree testing/modication backend http://phpdns-local.orbis-terrarum.net/phpDNS/learning/options/optree.php - click on 'view tree' to a get a quick dump of the page -- --- Robin Hugh Johnson "Robbat2" QTOD: "I used to be an idealist, but I got mugged by reality." E-Mail : robbat2@orbis-terrarum.net ICQ# : 30269588 or 41961639 Home Page : http://www.orbis-terrarum.net Time Zone : Pacific Daylight (GMT - 8) -----GEEK CODE-{--- Version: 3.12 Serial: 2001041400 GU/CS d- a--- C++++ L++++ U*+++ E---- e* h! tv-- X+ W+++ N+++ w--- M P+ R O- D++ V-- PS+ PE-- Y+ PGP++ r !y t-- 5 s+:- b+++ ---}-GEEK CODE----- -----PGP INFO-{--- Key ID:0x7E20DFA1 FingerPrint: 5447C73A 30FB144C 89521B69 2D6A615E 7E20DFA1 ---}-PGP INFO-----