• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:フォーム検索先の文字コードが自動的にEUC-JPに)

フォーム検索先の文字コードが自動的にEUC-JPになってしまって困っています

このQ&Aのポイント
  • フォーム検索先の文字コードが自動的にEUC-JPになってしまって困っています。最終的には、フォームの検索先をUTF-8の文字コードを指定して開きたいです。
  • phpファイルをUTF-8で作成し、FC2ブログのプラグインを使用してフォームアクション先を設置しました。しかし、検索先の別ウィンドウが自動的にEUC-JPの文字コードで読み込まれてしまい、文字化けが発生します。
  • FC2のテンプレートのメタ部分やHTMLフォームの属性を変更しても、検索出力先がEUC-JPになってしまいます。どのように修正すれば良いでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

単純にPHP側で取得したPOSTリクエストをmb_convert_encoding関数を用いてUTF-8に変換してから処理するようにしてみてはどうでしょうか。 入力フォームに問題は見られません。 出力するHTMLにはmetaタグで文字コードを指定してあげるなど、文字化けを防ぐ方法はいろいろあります。 また、そのURLにあるソースを拝見しましたが、処理中にShift-JISに変換しているようですが、UTF-8で書いているのであればこのような変換は無意味ではありませんか?今一度ご確認ください。

walsch
質問者

お礼

ありがとうございます! PHP側のHTMLのヘッドにメタタグ<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />を挟み込んだら解決しました! 仰る通りHTMLのフォーム側はこれで問題なかったです。 本当に助かりました!ありがとうございます。

walsch
質問者

補足

回答ありがとうございます。 なるほど、PHP側で取得したPOSTリクエストをmb_convert_encoding関数を用いてUTF-8に変換してから処理する、出力するHTMLにはmetaタグで文字コードを指定してみる、等の方法があるのですね。 少しやり方がわかりませんが試してみます。 Shift-JISへの変換はPHPのURLの回答者様に同じご指摘を受け、修正して解決しました。

関連するQ&A

専門家に質問してみよう