<TD bgcolor="#ffffff" align="center">¥36000<BR>個数
<SELECT name="商品名:白雲">
<OPTION value="" selected>--</OPTION>
<OPTION value="1"> 1</OPTION>
<OPTION value="2"> 2</OPTION>
</SELECT></TD>
上記記述がHTML内にあるのですが、これをmail.cgiを使って送信すると
確認画面や送信されたメールで文字化けをしてしまいます。
文字化けするのは「雲」という文字で、雲の文字を空などにしても文字化けしません。
他の項目もあるのですが、こちらも文字化けしません。
ちなみに、textエリア内に書き込まれた雲と言う文字も文字化けしません。
なぜ、雲という文字だけ文字化けしてしまうのでしょうか?
どうにかして雲を表示させる方法はありますか?
No.1
- 回答日時:
文字コードはEUCでしょうか?SJISでしょうか?
書き出すhtmlに明示しているでしょうか?していなければ下記のように明示すると
どうなるでしょうか?
<META HTTP-EQUIV="Content-type" CONTENT="text/html;charset=EUC-JP">
とか
<META HTTP-EQUIV="Content-type" CONTENT="text/html;charset=Shift_JIS">
No.2
- 回答日時:
漢字コードには、メーカーや研究機関などの思惑や利権などの関係から、いくつもの種類が制定されてしまいました。
現在ではUTFと呼ばれる「Unicode」が主流になりつつありますが、WindowsやMac系は「Shift-JIS」、UNIX系は「EUC」、IBM系メインフレームは「EBCDIC(EBCDIK)」というコードで発展してきました。
それらには一部コードを「改行」など特殊な用途に割り当てられるコードもあり、そういうコードを、他のコード系では文字に割り当てていたりしますので、文字化けなどの現象に悩まされることになります。
サーバが何かはわかりませんが、ANo.1さんの解答通りホームページのコードはしっかり設定するのが前提条件です。 できれば、Perlなどの言語で処理加工を行うのであればCGI及びフォーム共、EUCで統一するのが望ましいと思います。
メールに関しても基本的には7ビットコードしか送れない仕組みになっていますので、漢字は「JIS」コード(Shift-JISではありません)に変換して送信する必要があります(用件やあて先などの漢字はさらにMIMEエンコードしてやる必要があります)。
「雲」に限らず「Shift-JIS」では状況に応じてほぼ化ける覚悟で作ってください。
#3さんへのお礼にも書かせていただきましたが、無事解決しました。
追記すると、メール本文は問題なかったのですが、メールタイトルが文字化けしてしまいましたが、
print MAIL "Content-type: text/plain; charset=ISO-2022-JP\n";
をprint MAIL "Content-type: text/plain; charset=euc-jp\n";
にしたら文字化けも治りました。
これで問題ないのかな?
No.3
- 回答日時:
No.1ですが、補足しておきます。
先に書いた、文字コードのエンコードの問題であれば、現状で化けたときに、IE等の
ブラウザで文字のエンコードの選択ができると思いますので、そこで自動選択や、
日本語(~)のどれかを選択して文字化けが解消するようであれば、やはり、
HTMLの出力で明示するか、或いは、SJISからEUCに変更するなどで解決する
可能性が高いです。
まず、確認してみてください。
質問する前に、自分でも検索してHTMLとCGIはEUCに変えましたが出来ませんでした。
CGI内を初めから目を通していたら、&jcode'convert(*name,'sjis');というのがあり、
そこをEUCに変えたら文字化け治りました。
ただ、他が文字化けしてしまいましたけど。。。
でも、CGIはEmEditorで編集していたのですが、S-JISで編集しておりました。
これをEUCで読み直すことによりCGI内の日本語が全て文字化けし、その文字化けした文字をを入力しなおすことにより解決できました。
ありがとうございました。
No.4ベストアンサー
- 回答日時:
今更ですが、他のエディタでも便利なものは色々有りますがTeraPadなどを使用すると、
任意の文字コードで開けるのはもちろん、開いた文書をEUCやSJIS他色々な
文字コードに変換したり、改行コードも指定して保存することも可能です。
これを使えば入力しなおさなくても良かったかと思い、今後役立つかもしれませんので
一応、紹介させていただきました。
http://www.vector.co.jp/soft/win95/writing/se104 …
No.5
- 回答日時:
>print MAIL "Content-type: text/plain; charset=ISO-2022-JP\n";
>をprint MAIL "Content-type: text/plain; charset=euc-jp\n";
>にしたら文字化けも治りました。
>これで問題ないのかな?
微妙に問題があるような…
昔のインターネットのメールは、文字データは、7bitで送信していました。(今はどうなのか知らないですが)
この為、メール送信に使用する文字コードは、7bitで日本語を表わせるJISコードが使われています。(半角カナがNGなのはこのせい)
ということは、8bit使用している、シフトJISやEUCだと、昔の仕組みを使用しているサーバーを通ったときに、文字ばけしてしまいます。
また、日本語はJISコードでくるだろ!と決めうちしているメーラーが存在するかもしれない(ないと思うけど)ので、その手のメーラで受けとったら、文字化けしまくるでしょう。
という問題があると思うので、メールの送信内容は、もう一度、JISコードに変換してあげてから、送ったほうが、良いと思います。
とりあえず、適当に検索したものですが、参考にしてみてください。
http://www.watch.impress.co.jp/Internet/www/arti …
http://www.atmarkit.co.jp/fwin2k/win2ktips/711ma …
http://tech.bayashi.net/pdmemo/sendmailbyperl.html
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
中国語のためのアンケートフォ...
-
エクセルシート名の制限を変更...
-
UTF-8で5~6バイトになる文字コ...
-
10Mバイトて文字数に すると何...
-
Excel 1セル当りの文字数が2...
-
CD R の書き込み
-
Excel VBA メール作成について ...
-
DataGridViewの特定列に入力さ...
-
DOSのdirコマンドで思うように...
-
C++/CLIのオブジェクト型配列
-
printfの%eで指数部分の桁数を...
-
COBOLのCOMP形式について
-
連想するもの教えてください
-
URLは最高何文字まで可能なので...
-
pythonにCでのexternはありますか
-
ピクセル,dpiから容量(バイト...
-
1バイト文字から2バイト文字に変換
-
ListView重複データ削除
-
ビットスワップとバイトスワッ...
-
MIDIにおいて ステータスバイト...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
&jcode'convert(しても文字化け...
-
フォームメールを受信すると文...
-
utf-8でメールを送信すると件名...
-
ESC/Pのテキスト印字の制...
-
応募フォームなどの住所欄で最...
-
Perl でメール送信プログラム。
-
Perlのcgiを中国語で表示可能に...
-
CGIメールフォームのメールが文...
-
HttpURLConnection転送で漢字表示
-
アクセスログから検索キーワー...
-
文字コードsjisをUTF8に書き換...
-
秀丸でCGIを開いたら文字化...
-
文字化け
-
文章の編集の自動化
-
JavaScriptからCGI
-
文字化け
-
SQLServerへの出し入れで文字化け
-
ソ噂浬欺圭構蚕十申曾箪貼能表...
-
フォームメールで名前を全角の...
-
perl cgi のエンコード SHIFT...
おすすめ情報