- ベストアンサー
メールフォームの文字化け問題 PHPでのISO-2022-JP-MS変換の原因と解決方法は?
- メールフォームページのHTMLで指定している文字コードがUTF-8であるにもかかわらず、一部の文字化けを防ぐためにISO-2022-JP-MSに変換しているが、一部の環境では文章全体が文字化けしてしまう問題が発生している。
- 原因として考えられるのは、受信者側のメーラーの設定やOutlookのバージョンの影響が挙げられる。一部の環境ではメーラーが間違った文字コードを指定してしまう可能性があり、Outlookのバージョンによっても文字化けする場合がある。
- 解決方法としては、受信者側のメーラーの設定変更や、文字コードの指定方法の見直し、あるいはISO-2022-JP-MSではなく別の文字コードに変換するなどの対策が考えられる。具体的な対策方法については、問題が発生している環境や使用しているメーラーによって異なるため、問題の原因を特定し、それに応じた対策を行う必要がある。
- みんなの回答 (4)
- 専門家の回答
関連するQ&A
- iso-2202-jpのメールについて
メールのヘッダを見てみると、文字コードは、 iso-2202-jpが指定されているのですが、この場合 丸囲みの1は使えるものなのでしょうか。 iso-2202-jpは丸囲みの1を含んでいないと思っているのですが 正常に使うことができています。
- 締切済み
- その他(メールサービス・ソフト)
- VS2005C#でメールを受信すると文字化け
VS2005C#でメールを受信するときに文字コードをiso-2022-jpで変換し、 大抵のメールはこれでOKなのですが、 たまに文字化けしてしまうメールがあります。 しかし普通のメーラーで見ると文字化けせずに見えます。 ヘッダにもiso-2022-jpと書かれています。 C#で受信したときに文字化けしてしまう理由は何かあるのでしょうか? バイトが欠損しているからでしょうか? (そうなら普通のメーラーでも文字化けすると思うのですが)
- ベストアンサー
- Microsoft ASP
- latin-1 (ISO-8859-1)への変換
教えてください。 latin-1 (ISO-8859-1)への変換になると思いますが、Amazon等にテキストデータを送信するのですが、UTF-8では文字化けします。 artículosなどのaやiの上にダッシュがある文字です。 サーバ側はlatin-1 (ISO-8859-1)で送信するように言っているのですが、そのテキストを作るやり方が不明なので、ご教授願います。 artículosをUTF-8で送信するとartÃculosのように文字化けします。 アスキーコードが異なるからだと思いますが、どこかのサイトやエディタで変換できますでしょうか? さくらエディタなどは使えなかったので、出来ればWindows環境で変換できる方法をご教授頂きたいです。 よろしくお願いします。
- ベストアンサー
- その他(プログラミング・開発)
- PEAR::Mailでエンコードの指定はどうすれば
PEAR::Mailを使ったメールフォームを作りました。 一般的なUTF-8ではなく、事情があってISO-2022-JP-MSに変換して送ってるもんですから、メーラーによっては文字化けしてしまうようです。 で、メールのヘッダで文字コードを指定してやれば上手くいくみたいな話を教えていただきまして、その方法を探っております。 PHPで作ってるんですが、PHPに用意されてる関mail関数だと参考になるサイトが見つかるんですが、PEAR::Mailでのヘッダで指定する方法がいまいちみつからず、困っている次第です。 そもそもISO-2022-JP-MS自体が特殊なようで、これをこのまま指定しても良いものなのかとか。 shift-jisとして指定する? その辺も含めてお分かりになる方、よろしくお願いいたします。
- 締切済み
- PHP
- フォームメールを受信すると文字化けをします。
携帯サイトにCGIフォーム(CGIの文字コードは全てshift_jis)を設置しています。 iMacや、iPatや、ThanderBirdで、受信をすると、すべて、文字化けします。 Macで、POPを返さない方が文字化けをしないと聞いたので、受信アドレスをgmailアドレスに変えましたら、Mac系では、文字化けがなくなりました。 が、同時に、普通のメールアドレスを設置し、ThanderBirdで受信をしましたら、やはり文字化けをします。 ThanderBirdのエンコード設定は、ISO-2022-JP となっていて、少し調べましたら 「インターネットでは7bitの文字コードでやりとりするのが標準なので、日本語の場合は7bitの「JIS(ISO-2022-JP)」という文字コードを使うよう定められている。Shift-JISやEUCは8bitの文字コードなので、送信の際、メールソフトがこれをJISに変換するのが普通だ。」とのこと。 半角カタカナなどは、含まれていないのですが、やはり、フォームメールを受け取りますと、文字化けをしてしまいます。 届いたメールは、タイトルは正しく表記され、中身が、文字化け。 メールのエンコードをShift-JISに変換すると、逆に、タイトルが文字化けし、本文(中身)が、正しく表記されます。 OUTLOOKなどWindowsの仕様のものを試していないのですが、 何かを修正すると、文字化けせずに、閲覧できるのか、もし、方法があれば、おおしえいただければと思いました。 使っていますCGIフォームは http://www.kurohama.net/c5.shtml 今は、Shift-JISですが、UTF-8に変換はできるようです。 どうぞ よろしくお願いいたします。
- 締切済み
- CGI
- メール(iso-2022-jp-2)のデコード
お世話になります。 C#.NETまたはVB.NETでiPhoneから送られたメールを解析するメーラーを作っているのですが、 charset=iso-2022-jp-2、charset=iso-2022-jp-3で送られてくる場合があり、 そのデコードができずに困っております。 charset=iso-2022-jpですと、下記でデコードできるのですが、 charset=iso-2022-jp-2、charset=iso-2022-jp-3はそもそも Encodingクラスで扱えるエンコーディング名に存在しないので、 どのように変換してよいか分かりません。 string mailtext = "?"; // ←メール内容をそのまま入れます byte[] bytes = Encoding.ASCII.GetBytes(mailtext); string body = Encoding.GetEncoding("iso-2022-jp").GetString(bytes); 宜しくお願い致します。
- 締切済み
- Visual Basic
- メールの文字化け?
CGIレスキューのフォームメールを使ってフォームの内容をメールする仕組みを作りました。 ほとんどの方は、文字化けをおこさずに受信できるのですが、1人だけですが文字化けをおこすという報告を受けました。 会社内の特殊なメーラーで読んでいるようですが、そのメーラーには文字コードなどの設定項目はありませんでした。 確かに文字化けするのですが、そこから他に文字化けしたメールを転送すると、受け取った方はちゃんと読むことができます。自分自身に化けたメールをそのまま転送した場合も、化けずにうまく受信できます。 メールサーバー ↓ ある人のメーラー(化けてしまう) ↓ 自分自身に転送する(今度はばけていない) という感じです。 どういった原因が考えられるでしょうか?
- 締切済み
- CGI
- php自動返信メール本文の一部の文字化け
phpでメールフォームを作成したのですが、自動返信のときの本文の一部が文字化けしてしまいます。 全体が文字化けではなくて一部で、どう対処していいかわからないです。 すいませんがお教えいただけないでしょうか? フォームもphpも文字コードEUCです。 文字化けする本文は 「本メールの最下段にお控えが記載してございます。」 という部分です。 メール送信部分のソースは $rebody=mb_convert_encoding($rebody,"JIS","EUC-JP"); if (get_magic_quotes_gpc()) { $rebody = stripslashes($rebody); } $resbj="=?iso-2022-jp?B?".base64_encode(mb_convert_encoding($resbj,"JIS","EUC-JP"))."?="; $reheader="From: $to\nReply-To: ".$to."\nContent-Type: text/plain;charset=iso-2022-jp\nX-Mailer: PHP/".phpversion(); です。 今悩んでて3時間ぐらいいろいろ試したのですがダメでした。 すいませんがよろしくお願いします。
- 締切済み
- PHP
- メール送受信、コード変換
類似した質問が過去にたくさんあるのですが、、 perlでメールを送受信するプログラムを作成しております。 その時の文字化けに備えメールヘッダや本文はコード変換する 必要があることはわかったのですが、それぞれについてどんな コード変換をしなければいけないのか?またなぜなのか?が良くわかりません。 いろいろなサイトや過去ログを調べてみて、OSの、使用するコード、メーラなど 十人十色だかららしいのですが、 たとえば、日本語を扱う時は、機種に依存しないISO-2022-JP (JIS)にするとか あったのですが、すべてをそれに変換すればよいのでしょうか?? それともSubjectは違うコードが推奨とか、いろいろとルールがあるのでしょうか? 曖昧な質問ですみません。宜しくお願いします。
- ベストアンサー
- Perl
- perlのメールフォームが文字化け
perlのメールフォームが文字化けして困っています。 メールフォームの出力HTMLは、shift_jis それを、ISO-2022-JPに直して、送信しています。 また、jode.pl、mimew.plを使用しています。 何が原因で文字化けしているのか、教えていただけないでしょうか? よろしくお願いします。
- ベストアンサー
- Perl
お礼
ご回答ありがとうございます。 まさにそのリンク先を見て作りました(笑) その処理を行って、pear:mailで送信するようにしています。 恥ずかしながらPHPを勉強し始めて1年経たないくらいなので、いまいち旗手依存文字をはじく方法が分からず終いでして(^_^; ただ、この事象のように全部が文字化けするくらいなら、特殊記号とかはもう無視して、おおまかでも文章を読める状態にした方が良いのかもしれませんね。何の記号が文字化けしてるかは、文脈から大体想像できるでしょうし。 UTF-8のメールにしたいのは山々なんですが、ガラケーでも文字化けせずに受け取れるのかが不安で・・・。 手持ちのドコモのガラケーだと本文は平気なようですが、タイトルが文字化けしたりするんで、なかなか踏み切れず(^_^;