Re: Particular Problem Kanji
David Emery <[email protected]>
| Newsgroups | gmane.comp.php.internationalization |
|---|---|
| Message-ID | <1081295763.16645.31.camel@hat> |
2004/04/06 () 11:58 Claire Hector : > Hello! > I have a question regarding some particular Japanese words. > > I have a MySQL database and have set the character set for selected > tables to sjis (I have also tried this with ujis and various php > settings) > > php.ini settings for mbstring are as follows: > > mbstring.language=Japanese > mbstring.internal_encoding=SJIS You shouldn't use SJIS for internal encoding or in your DB, or inside your PHP. It's evil and will cause exactly the type of problems you're having. I think the mbstring docs explain this. Setting mbstring.internal_encoding to EUC would be better. UTF is good too, but I don't think it's supported by MySQL. There should be an mbstring.http_output setting as well, which you probably want to set to SJIS. > mbstring.http_input=auto > mbstring.http_input=UTF-8 > mbstring.encoding_translation=on > mbstring.detect_order=auto > mbstring.substitute_character=none > > [the server was configured by our network person so i am not 100% sure > of the reasoning behind these particular settings.] > > The server is Apache using an additional module for Japanese from webDAV > called mod_encoding > with ServerEncoding set to utf-8 & DefaultClientEncoding as > JA-AUTO-SJIS-MS > > Each page is encoded as shift_jis. (i have also played around with these > and the get the same problems if this is changes to utf-8 or euc-jp) > > Generally, the html pages display Japanese without problem, however > there are a couple of particular kanji that do not display properly. > When entered into a html form they look fine, when the query the data is > used for is echoed back to the screen all is fine, but once they are > actually entered into the MySQL database they change. > > Examples of problem kanji... > yo-so-ku -> when this is stored in the database it changes to the kanji > for egg and a small katakana i... > yo-so-u -> when this is stored in the database it changes to the kanji > for egg and a small z... > also > ko-u-chi-ku > ju-u-bu-n > hyo-u-to > hyo-u-sho-u > > Can this be changed by altering the encoding scheme chosen or are these > particular problem kanji and should just be avoided? > > > I would really appreciate your expertise in helping me make sense of > this. > Thanks, > Claire -- -dave -- PHP Internationalization Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php