それは文字化けするよね、と思いつつ、調べて、なんとか解決することができました。 以下が参考にさせていただいたサイトです。 »ページの文字コードとは違う任意の文字コードをformから送信する方法|web bibo 一番参考になったサイトがこちらです。 既存のサイトにあるフォームの確認ページへ飛ばすということになりました。, »ページの文字コードとは違う任意の文字コードをformから送信する方法|web bibo 携帯での文字化けということなので役に立つかわかりませんが、 $mbody .= "名前:$in{'name'}\n\n"; ・CGIで特定の文字(表・予・申・能など)が文字化けする 自動バックアップ・テスサーバー付きの新機能スマートリリース. CGIやPHPなどの技術系でSuper FAQ(よくある質問)がこれです。下記のような文字化けが発生します。 のような感じになると思います。なお、この不具合はWindows版ネットスケープ4.Xでは発生しませんでした。 次のページは、Windows版ネットスケープ4.Xで、右クリックを禁止すると、フォームの中で日本語入力が文字化けしまくる現象について考えます。 $msub_b . use MIME::Base64; https://triple-underscore.github.io/RFC2616-ja.html $msub_bがエンコードされたサブジェクトということになります。 参考URL:http://www.securehtml.jp/utf-8/perl_utf_mail.html, 私もサブジェクトが文字化けしてしまい苦しみました。 print MAIL "To: $mailto\n"; > 送信すると文字化けしてしまいます http://www.securehtml.jp/utf-8/perl_utf_mail.html $headers = $_[2]; メールフォーム用に書き直してみたものです。 フォームから違うサイトへ行き、ブラウザの戻るボタンかなにかで戻った場合、 メールの内容? ##Perlの冒頭に入れる1行 文字コードがそのままになってしまい、文字化けしてしまうということです。, どこかでcodeChange()を呼び出せばOKです。 To: $u...続きを読む, 私もサブジェクトが文字化けしてしまい苦しみました。 ・CGIで特定の文字(表・予・申・能など)が文字化けする 自動バックアップ・テスサーバー付きの新機能スマートリリース. 送信すると文字化けしてしまいます。 $mbody = $_[1]; 掲示板などでハンドルネームをクッキーに記憶させているような場合に注意が必要。, a) CGIスクリプト自体の文字コードを UTF-8N で保存する。これで問題が出なければ無理に use utf8; する必要はない。, b) 各CGIスクリプト冒頭に use utf8; と binmode(STDOUT, ":utf8"); を書く (複数のスクリプトをrequireしてる場合はそのすべてに書く), c) 外部から読み込んだ全角文字列には、早い段階で utf8::decode() 関数を通してフラグを付けておく。, d) クッキーへの書き込みなど若干の例外処理が必要な場合がある。, CGIスクリプトの文字コードをUTF-8Nに変更する場合、この書き換えは必須。(use utf8; 宣言をするしないに関わらず),   などから 携帯での文字化けということなので役に立つかわかりませんが、 あるwebサイトをリニューアル(正確には別サイトですが・・)制作していたんですが、 POST-MAIL (UTF-8)を使用しているのですが、フォームの送信完了まで問題無く完了するのですが、メールが文字化けするのです。 tmpl内のhtml(HTML5)、は保存もcharsetもUTF-8Nになっています。 送信ボタンを押して、確認画面に飛ぶのですが、メールの内容もinputのname="名前"部分も文字化けします。, form要素に追加したaccept-charset="shift_jis" がIE以外用の設定、submitのinput要素に元々あったonclickはIE用の設定のようです。. 0, 回答 httpのメソッドは、その用途によってgetとpostで使い分ける必要がある。(他にもputとかdeleteとかあるけど、本記事ではgetとpostだけ扱う) get. $eol = ""; getとpost. 今後のこともあってUTF-8でファイル、HTMLの出力をおこなっております。 teratailを一緒に作りたいエンジニア, "http://www2.tba.t-com.ne.jp/cgi-bin/form.cgi", , . $msub_b = encode_base64($msub,$eol); 一番参考になったサイトがこちらです。 3 / クリップ CGIやPHPなどの技術系でSuper FAQ(よくある質問)がこれです。下記のような文字化けが発生します。 http://www.securehtml.jp/utf-8/perl_utf_mail.html ##MIME::Base64がインストールされていることが前提 To: $user_mail 以下のサイトを参考にして、 ##Perlの冒頭に入れる1行 $msub = "テスト送信完了通知"; $msub_b = "=?utf-8?B?" print MAIL "Subject: $msub_b\n\n"; リクエストボディ(POSTパラメータ), https://www.ietf.org/rfc/rfc2616.txt(rfc2616) 1 / クリップ $msub = $_[0]; Web開発を始める中でたまに遭遇することがある文字化け問題。HTMLにJavaコードを埋め込むことができるJSPでのWebアプリケーション開発でTomcatを利用している場合にもよくあります。ここではTomcatでPOSTやGETリクエストのパラメータを扱う時に文字化けする問題についての解決方法をご紹 … binmode(STDOUT, ":utf8"); # 自動でフラグを剥がすという指示(4.c), utf8::decode($buf); # ファイルから読み込んだあと、他の処理に入る前にutf8フラグを付ける (4.a), # uri escape されたものを元に戻して (4.b), utf8::decode($val); # utf8フラグを付けてやる (4.b), # 何もせずそのまま書き込む ∵binmode(STDOUT, ":utf8");してある (4.c), # uri escape されたものを元に戻してから (4.b), utf8::encode($str); # フラグを剥がしてから(4.c補足), Kent Web等のCGI掲示板プログラムを文字コードを, ・print文のところで文字化けしてしまう(エラーが出てしまう)。, ・クッキーで憶えさせたはずの名前などが文字化けしてしまう。.