• 締切済み

簡単なメールフォーム niftyサーバ側のエラーページが文字化け

niftyをつかっていまして、かんたんなCGIで、知識がなくともメール送信フォームが作成できるというものを作りました。 ところが、その送信フォーム。メールアドレスを入力しないまま送信するとエラーページが表示されるのですが、このエラーページがときどき文字化けします。 FireFoxでは文字化けはしません。文字化けするのはIE7を使っていて、そのIE7でエンコーディングを自動選択にしていないときだけのようです。(safariでもデフォルト設定で文字化けしました) ちなみに、送信フォームは自分でhtmlを用意しますけれども、 エラーページはニフティ側が用意するもので、エンコードの指定等はありません。ユーザーがhtmlを変更することができません。 そのメールデコードのくわしい設定はこれ http://www.nifty.com/biz/support/manual/web/08/02.htm 表示されるエラーページはこれです http://mdec.nifty.com/mdec-error7.htm ねんのため、エラーページのソースはこんなのです。文字コードがないのが悪いのですが、サーバが用意しているものなのでこちらでは変更できません。 <HTML> <HEAD> <TITLE>エラーメッセージ</TITLE> </HEAD> <BODY BGCOLOR="#ffffff" LINK="#ff6600" ALINK="#ff0000" VLINK="#330066" TEXT="#000033"> <CENTER> <BR><BR><hr size="3" width="500"> <CENTER> <BR><b>エラーメッセージ</b><br><br><FONT SIZE="4"><B>メールアドレスが記入されていないか形式が不正です。</B></font> <BR><BR><b><FONT SIZE=2>ブラウザの戻るボタンで戻ってください。</FONT></b> </CENTER> <BR><BR><BR><hr size="3" width="500"> </BODY> </HTML> このページの文字化け、shift-JISにすると解決します。だから自分が用意する送信フォームのHTMLをshift-JISにしましたが、shift-JISの送信フォームからエラーページに移動しても、IE7でやはり文字化けします。 (エンコーディングは、その前に表示したページの影響をうけるらしいです。理論の上では、送信フォームがshift-JISなら、エラーページに文字コー度がなくても自動的にshift-JISで表示されて文字化けが発生しないだろう、と思ったのですが、ダメでした) IE7で、エンコードの指定のないページを表示するときに文字化けしない方法を教えてください。 ただし、IE7の設定やエンコーディングを変更しないでできる方法がいいです。(webサイトをみてくれる他人のPCの設定は、わたしが指示や変更するべきものではないという考え方です) そのうえ、表示させるhtml(エラーページ)にも変更を加えないで出来る方法を探しています。 知恵をおかしください。

noname#119359
noname#119359

みんなの回答

  • web2525
  • ベストアンサー率42% (1219/2850)
回答No.1

>IE7の設定やエンコーディングを変更しないで >表示させるhtml(エラーページ)にも変更を加えないで 両方の条件下での実現は無理でしょ。

関連するQ&A

  • perlのメールフォームが文字化け

    perlのメールフォームが文字化けして困っています。 メールフォームの出力HTMLは、shift_jis それを、ISO-2022-JPに直して、送信しています。 また、jode.pl、mimew.plを使用しています。 何が原因で文字化けしているのか、教えていただけないでしょうか? よろしくお願いします。

    • ベストアンサー
    • Perl
  • 突然文字化けしました(泣)

    ホームページを初めて作成している初心者です。 一通り作業を終え、アップできました。 が、その後修正作業や更新を続けていく中で、突然文字化けしました。 解決の糸口をご教授いただけると助かります。 ...途方に暮れています。 考えられる原因として... ◆POST MAIL使用にあたり、途中からUTF_8からShift_JISに書き換えした ことが考えられますが、書き換え後に何度か確認したり更新したりしていく中で文字化けの発生はありませんでした。 が、なぜか突然文字化けしました。 文字化けしたページを、ブラウザのテキストエンコーディング表示をUTF_8で見ると、表示されます。 ただ、HTMLをUTF_8に変えてもDreamweaver上ではエラーとなり保存ができないですし、 コードビュー画面は文字化けしています。 希望としてはPOSTMAILを使用したいので、Shift_JISにまとめたいです。 なぜ始めにUTF_8で作ったかというと、参考にしたCSSのテンプレートがそうだったからです... 宜しくお願いします。

    • ベストアンサー
    • HTML
  • フォームメールが文字化け

    アングラーズネット社の「インターネットショップCGI&受注管理」という書籍に付属されている「fmail」というCGIファイルを使ってメールフォーム作成してサイトにアップロードしたのですが、メール送信確認画面で文字化けします。そのメールフォームで受信したメールも文字化けしています。AdobeGoLiveCS2でホームページを作成しています。最初GoLiveでCGIファイルを読み込むとファイル内容が文字化けになっていたので、エンコーディングを日本語シフトjisに設定すると文字化けが解消されました。しかし、相変わらずメールフォーム及び受信メールは文字化けしたままです。 OSはWindowsXPです。 アドバイスよろしくお願い致します。

  • フォームメールを受信すると文字化けをします。

    携帯サイトに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
  • メールフォームで文字化けが出る

    http://okwave.jp/qa5038084.htmlの引き続きです。(メールフォーム) <meta http-equiv="Content-Type" content="text/html;charset=shift_jis"> &jcode'h2z_sjis(*contenido) &jcode'convert(*subject,'sjis'); &jcode'convert(*infor,'sjis'); &jcode'convert(*contenido,'jis'); &jcode'convert(*res_msg,'jis'); print "Content-type: text/html;charset=shift_jis\n\n"; ↓ sjis関連をutf8に書き換え、jcodeの頭文字をJに書き換え <meta http-equiv="Content-Type" content="text/html;charset=utf8"> &Jcode'h2z_utf8(*contenido) &Jcode'convert(*subject,'utf8'); &Jcode'convert(*infor,'utf8'); &Jcode'convert(*contenido,'utf8'); &Jcode'convert(*res_msg,'utf8'); print "Content-type: text/html;charset=shift_utf8\n\n"; require 'jcode.pl'をuse Jcode;に書き換え ※jcode::" となっている箇所はありません 結果 メールフォームはエラーや文字化けは出なくて成功しましたが、メール受信の際、ThunderbirdPortableメーラーでは全て文字化け(文字エンコーディングは「日本語ISO-2022jp」となっています)、ウェブメールのgmailでは内容は文字化けになっていませんが、タイトルが文字化けになっています。 どこが悪かったのでしょうか? 宜しくお願いします。

    • 締切済み
    • CGI
  • 文字化け

    登録フォームを作成し、入力した内容でDBに追加を行うなかで、PHPmyadminで実際に見てみると文字化けしています。 レンタルサーバ(OS:linux) (1)登録フォーム(shift_jis) ↓各値を渡す (2)確認ページ(shift_jis) ↓各値をmb_convert_encoding(shift_jisに変更) (3)追加 すると文字化けします。 以前、cgi-lib.plを用いてperlで書いていたものは、 文字化けしていません。 どこがおかしいのでしょうか? ちなみに (1)登録フォーム(euc-jp) ↓各値を渡す (2)確認ページ(euc-jp) ↓各値をmb_convert_encoding(euc-jpに変更) (3)追加 としても文字化けしています。 (DBだけでなく、ページ全体も)

    • ベストアンサー
    • PHP
  • AppleMail 文字化けについて

    MacOSX 10.4.11を使っています。 AppleMailで送信していて、文字化けをするという事をよく言われたので文字化けをしない様にエンコーディングをISO-2022-jpに変更しました。 変更は様々なサイトで提供されているやり方 1.デフォルトのエンコーディングを“UTF-8”エンコーディングから“ISO-2022-JP”エンコーディングに設定   方法:      1.「ターミナル」(/アプリケーション/ユーティリティ/)を開きます。      2. プロンプトの後に次のコマンドを入力します。       defaults write com.apple.mail NSPreferredMailCharset "ISO-2022-JP"      3. コマンドの入力後、「Return」キーを押します。      4.「ターミナル」を終了します。 を参考にしました。 ですが、どうしてか文字化けが治りません。 Thunderbird3で確認してみたところ、タイトルは普通に見えるのですが、本文が文字化けをしています。 エンコーディングはSHIFT-JISになっているのですが、再度Shift-JISを選択すると、今度は本文が見える様になってタイトルが文字化けをします。 思うにタイトルと本文のエンコーディングが違うのかと思いいろいろエンコーディングを変えたら、タイトルはISO-2022-jpで本文がShiftJISで送られている様に思います。 何か解決方法があれば教えて頂きたいと思います。 よろしくお願いします。

    • ベストアンサー
    • Mac
  • フォームで文字化けしてしまって....

    googleで検索しても答えが見つからなかったので、皆様のお力をお貸しいただければと。 携帯サイト用のフォームをつくってみたのですが、文字化けを起こしてしまい、解決法が分からずに困っております。 文字コードをEUCにしてソースも変えると【au】では HTML(フォーム1ページ目の入力画面)も、処理後(入力した内容を確認する画面)も化けてしまいます。 ※docomoとsoftbankはオールクリアでした。 また 文字コードをShift_JISにしソースも変えると HTML(フォーム1ページ目)は3キャリア共化けません。処理後(確認画面)はdocomoとsoftbankで文字化けします。 些細な事でもかまいません。 アドバイスいただけたら幸いです。

  • サーバーにアップすると文字化けするんです

    PHP初心者です。 文字化けの原因がわからず、困っております。 サーバーにphpファイルをUPして、 IEで確認すると文字化けをしてしまうんです。 IEの[表示/エンコード]で[日本語(自動選択)]をクリックすると、文字化けは解消されますが、 ページを切り替えると、また文字化けしてしまって・・・。 <meta http-equiv="Content-Type" content="text/html; charset=shift_jis" />の記述は怠っていません。 ローカルホストから確認したときは、文字化けせずに表示されています。 何が原因なのか見当がつきません。 どうすれば、文字化けを解消できるでしょうか。 お力をお貸しくださいませm(__)m

    • ベストアンサー
    • PHP
  • フォームメールの文字化け

    こんにちは。 フォームメールで携帯宛にメールを送ると、docomoの件名だけが文字化けします。 途中までは正常な表示で、後半文字化けしたり要らない文字が最後に入ったりという状態です。 au、softbankやPC宛には正常に送れているのですが… エンコーディングは↓こんな感じです mb_language("Japanese"); mb_internal_encoding("EUC-JP"); $subject = mb_convert_encoding($subject,"JIS", "EUC-JP"); 考えられる原因や解決方法などありましたら 教えて下さい。 よろしくお願いします。

    • 締切済み
    • PHP

専門家に質問してみよう