CGI-BBS > SO−HO > ショッピングバスケット > ショッピングバスケットで商品フォームの項目名を日本語にしたい


カレッヂ
カレッヂ


質問者 keiko  投稿日 7/15(月) 19:19:50
はじめまして。
ショッピングバスケットのバージョン5を使用させていただいています。
商品フォームでcargo.cgiへ渡す項目名をローマ字から日本語表記に変更できますか?
他のサンプルを参考に見てもローマ字で書かれているのですが、
CGIでは日本語が書けないのでしょうか?
改造なんてとても無理なのですがどうしても変更させたいのです。
教えてください。

プロバイダ参照:
サーバのOS:WINサーバ
パソコンのOS:WinNT系
エディタ:秀丸
FTPソフト:
サーバ移転:していない
改造:(未選択) 改造前正常動作
CGI習熟度:middle

回答者 呑兵衛@大阪  [削除]  投稿日 7/15(月) 23:48:14
perl スクリプトにおいて、「日本語」「ローマ字」という概念はありません。
これはサーバーでスクリプトを扱う上での基本です。
通常「日本語」と称される文字は2バイト文字、「英数字」と称される文字は1バイト文字に分類されます。
これを処理するための操作は存在します。
何かをやってみて意図したとおりに行かない、という場合、
どうしたいところ、こうなった。
これをこうしたいがどうすればいいか?
という質問形式に変えて下さい。ここはそれに答えるための場所です。
質問者 keiko  [削除]  投稿日 7/16(火) 09:07:24
最終的にメールで注文を受けた際に
CODE=○○ではなく、商品コード=○○
などというようにするために
CGIで設定してある項目名を漢字にしたいのですが
InternalServerErrorと出てしまいます。
すべて変更しているはずなのですが、
単純に置き換えるだけではダメなのでしょうか?

回答者 呑兵衛@大阪  [削除]  投稿日 7/16(火) 18:49:07
難しい理由はさておき、「 = 」とその場所に問題あり、と見ます。
メールのみに出すだけであれば、
cargo.cgi 462行目付近
$line = "◎$GNAME[$i] ($CODE[$i]) @$TANKA[$i] × $KAZU[$i]\n";
を
$line = "◎$GNAME[$i] (商品コード=$CODE[$i]) @$TANKA[$i] × $KAZU[$i]\n";
にするだけです。

返信(回答)する


Web裏技