最新閲覧日:

簡単な掲示板を作成していますが、
CGIで記述した文字が画面に表示されると文字化けしてしまいます。
作成した掲示板の入力文字は、文字化けせずにファイルに書き出され
表示できます。
CGI内で記述した文字だけ出来ません?
OSはWIN/ME,
編集は ワードパッドで行っています。

A 回答 (6件)

例えば「表示」と記述したら文字化けしてしまうという事ですね。


それの対処法は文字化けしている文字の前に「\」をつけると解決します。
やってみてください。
    • good
    • 0

いろいろアドバイスがついてますが、まずは CGI の出力できちんと META タグを


かいて、このページのコードはどれだ、というのを明記しましょう。

ワードパッドで CGI の編集を行っているということは Shift-JIS のはずですね。
であれば、

<META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=Shift_JIS">

を <HEAD> にきちんと記述しましょう。

後は No.3 の回答に有るようにメッセージをシングルクォートで括って、
エスケープを無効にしておくことです。
    • good
    • 0

文字化けする文字一覧は、こちらを見ていただくといいと思います。



個人的にはEUCで書くことをお勧めします。Windowsでは、EUCであっても読み書きできるEditorも結構あると思いますので、そういうのを使えば不便さはほとんどありません。
ぜひ試してください。

参考URL:http://www.psl.ne.jp/perl/skillup.html
    • good
    • 0

 inoue64さんのおっしゃる通り、2バイトコードの2バイト目のコードが5Cの場合に、これが\と認識されて文字化けがおきます。

(5Cは「\」の文字コードです。)

 文字化けの可能性がある(2バイト目が5Cの)漢字一覧を載せたHPなども検索すれば見つかるので、それら全てを「表\示」のように書いてもいいのですが、シングルクオートで囲んで\の働きを無効化すれば化けることはないので、こっちの方がラクではあります。

 変数などを表示する際は、
   print '変数の内容は' . $val . 'です。<BR>' . "\n";
のようにすればOKです。
多少面倒ですが。
    • good
    • 0

「表示」が「侮ヲ」になること


(最初の文字の2バイト目が5Cのとき)と同じならば、
「表\示」というようにやれば、うまくいきます。

参考URL:http://tohoho.wakusei.ne.jp/wwwkanji.htm

この回答への補足

ありがとうございます。
早速やってみまして、文字化けはなくなりましたが、
コンボボックス風に作ってましたが、次の設定してる人
が消えてる現象も起こってまして・・・
とりあえず、何かやってみます。

補足日時:2001/07/04 08:36
    • good
    • 0

Shift-JISで記述されたCGIの場合、ある特定の文字で


文字化けが生じることがあります。
EUC-JPで書き直せば一番いいのですが、化ける文字を
エスケープコード "\" で挟むことでも解決可能ですの
で、処理後に再度アップロードして下さい。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


このカテゴリの人気Q&Aランキング

おすすめ情報