David Emery wrote:

>

> Something's fishy there.


Very.

> so here's a really simple test that works as it should 
> on my system. Try it on yours and see if it's ok.


It works, but there is one problem.

When I enter some japanese into the form your program says:

"The encoding of variable test when it was received by the script was: SJIS
(should be EUC-JP when Japanese has been entered in the form field)"

As you can see the encoding should have been EUC-JP but was in fact 
SJIS. So the user input was not automatically translated into the 
internal encoding ...

Even worse ... the user input become mojibake (garbage). The input 
become ?????> and because of the ">" ruins the html code! Yuck.

So the problem seems to be that the user input is received as SJIS (the 
original user encoding) and not converted automatically to the internal 
encoding (so what is the point of having an internal encoding?)

If I try and output the value of "$test" back to the browser it comes 
out as garbage and if I try mb_convert_encoding($test, "SJIS") it still 
comes out as garbage.

My browser is set to display SJIS (possibly forced because of the 
"nihongo" string you output at the beginning of the script) so I don't 
understand why I can't output $test straight back to the browser since 
it comes in as SJIS, or why I can't display it even after conversion!

Any help and clarifications are greatly appreciated!

I've include my modifications of your code ...

Jc

PS

Here are my settings, they are just like yours except that I don't have 
(can't find) a setting for function overloading.

Multibyte (Japanese) Support enabled

output_buffering: 1
output_handler: mb_output_handler

mbstring.detect_order: auto
mbstring.func_overload: 0
mbstring.http_input: auto
mbstring.http_output: SJIS
mbstring.internal_encoding: EUC-JP
mbstring.substitute_character: no value

-- 
PHP Internationalization Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to