- ベストアンサー
apacheの動作について
こんばんは。 変数の計算結果をブラウザに出力するというcgiを書きました。しかし、ダブルクォーテーションでくくった変数($number1,$number2,$answerという変数です)は、表示されるのですが日本語の部分が文字化けします。 しかし、日本語だけを表示するcgiプログラムを書いてみると、こちらはきちんと表示できました。 その後、最初の計算プログラムを表示してみたら、すべて上手く表示できました。 これは、どういうことなのでしょうか?Apacheがおかしいのですか? だれか、原因の分かる方は教えてください。よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
記述ソースの文字コード絡み 例えば「表示」という文字がShiftJISでは化ける等 ブラウザとの兼ね合い HTMLとブラウザの文字コード設定が違う時 Apache2のデフォルト文字コード デフォルトでヨーロッパ系の文字コードが出力されるため 等が、よくあるパターンだと思いますが、 具体的なソースコードを見ないことには原因の特定は難しいと思います。 もう少し情報を提示されると回答がつくのではないでしょうか。
お礼
どうも、ありがとうございます。 本のとおりに忠実にやったので、natsuki_tkさんのおっしゃるようにブラウザの文字コードが原因かな?と思います。恥ずかしながら、指摘されて気づきました。。。 ちなみに、ソースコードは以下のとおりです。 #!D:\Applications\Perl\bin\perl print "Content-type: text/html\n\n"; $number1 = 10; $number2 = 5; $answer = $number1 + $number2; #計算の結果を書き出します print "$number1 + $number2 の答えは $answerです。"; #ここで終わり、のしるし _END_ ブラウザのせいだと思いますが。。。2度目からはしっかり表示されています。 どうも、ありがとうございました。すっきりしました。またよろしくお願いします。