WordPress初心者の方も、愛用者の方も、
楽しく学べるフォローサイト!

WP-Master.club ヘッダーロゴ

古いメールフォームで起こる文字化けを解消する方法

古いサイトって、エンコードがShift_JISで作られていることが多いです。

古いサーバーから新しいサーバーに引っ越した場合は、新しいサーバー(殆どUTF-8と思われる)とhtmlで指定した文字コードが一致せず、文字化けを起こす場合があります。

そういう時は、htmlの<head>~</head>内で、文字コードをutf-8に指定してあげれば大体解決できます。

 

しかし、、、フォームメールとなると一筋縄ではいかない例がありまして、その備忘録としてここに記載させていただきます。

 

まず、基礎知識として、これは私も知らなかったのですが、日本語のメールを送信する場合、メールソフトは文字コード「JIS」で作成されるそうです。

フォームメールからの受信文字が化けるとなると、そのエンコードが違っている可能性があります。

何でもかんでもUTF-8にすれば解決するわけではないのです。

例えば下記のようなphpが書かれている場合、mb_convert_encordingの第二引数(変換後の文字コード)は、「UTF-8」ではなく、「JIS」にしてみると、メールを受信した際に文字化けがなくなる例がありました。

charset

 

もう一度。

「何でもかんでもUTF-8に変えればいいというわけではない」という事です。

 

参考になれば是非^^;。