Re:PRO5にて文字化けします


このメッセージの投稿者: ベルコールさん 2002/10/26 15:59:33

元メッセージ: PRO5にて文字化けします 投稿者: 斉藤さん 2002/10/25 17:20:09

>ShoppingCart PROv5を試用していますが、表、ソ、という2つの文字が必ず文字化けしてしまいます。
>過去ログに掲載されていたものは古いバージョンのものであり参考になりませんでした。
>shopadmin.cgiは$charcode='Shift_JIS';として設定してあります。
-----
サブカートの中に書き込んだ文字が意図したように表示されない、ということだと思いますが、まず、理解しておいていただきたいことは、
1)TPLファイルはプログラムです。
2)プログラムの中では \x5c(バックスラッシュ=日本語キーボードでは \ マークで表示されるのが多い)には特別な意味(エスケープ文字)があります。
それで、
日本語文字などの2バイト文字を Shift_JIS で扱う場合、2バイト目が \x5c の文字があります。(ソ噂圭構十申貼能表予 など)
これらの文字をプログラムの中で使うと2バイト目がエスケープ文字と解釈されて表示上の文字コードがずれてしまいます。
ということで、これらの文字を使うときはその後にバックスラッシュを付けてやれば意図したように表示されます。
サンプルの subcart.tpl の「法定表示」の "表" がそうなっていますから見てください。
なお、文字列を '(シングルクォート)で括って変数に代入したり、関数に渡す場合はバックスラッシュの解釈は行われません。
詳しくは perl の参考書などをご覧ください。


このメッセージへの返事:

218.44.146.186/big.bellcall.co.jp