名づけのページを作っています。 漢字の組み合わせで名前を作るため 例えば 亜xあyあい 井xい のようなデーターを作り while(<FILE>){ chomp; $key=$_; ($key,$values)= split(/x/, $_); $t3{$key}=$values; } のような連想配列に入れていました。 (色々と考えて漢字のデータはeuc,cgiスクリプトはsjisです) これを使って名づけのCGIをホームページで公開しているのですがある人から「治」という字が使えないとメールがありなぜかなと考えてみました。 ローカル(windowsXP)な環境ではキチンと表示されます。がプロバイダにアップロードすると使えなくなります。(wakwakとNETAGEどちらも) そこでアップロードして実験してみました。 @rkey= values %t3; @rkey2= keys %t3; これでキチンと配列が作られているか---連想配列は出来ていました。 次に $nnn='治'; &jcode'convert(*nnn,"euc"); $us=$t3{$nnn}; とやってみたのですがこれだと$usの値が見つかりませんでした。 そこで コードのせいかと思い単純に $nnn='治';#これはsjis &jcode'convert(*nnn,"euc"); として$nnnをHTML(euc)で表示したらコードの変換がうまくいかないようで文字化けします。 そこで $nnn='治'; &jcode'convert(*nnn,"euc"); $code=&jcode'getcode(*nnn); としてコードのチェックをしてみたのですが何もコードの判別ができないのです。 ちなみに違う漢字では上の実験はキチンと反応しました。 結果どうも治の文字コードの変換がうまくいかないように思うのですがどうしたらいいのかわからないのです。何かいい方法はありませんか?教えてください。お願いします。 |