いつもお世話になっております。

今、携帯電話へメールを送信するPHPを組んでいるのですが、
仕組みは、
  (1) 入力フォームで送信内容を入力(絵文字付き)
  (2) 入力確認後、携帯電話へメール送信
という仕組みです。

その中で、Docomo、auは難なく上手くいくのですが、
Softbankの一部機種で文字化けが発生してしまいました。

具体的な内容は、
 ○文字数が400文字を超えると文字化け(意味不明な英字が
  ズラズラと表示されるイタメール)してしまいます。
上記のような文字化けが発生するのはあくまでもSoftbank(または
Vodafone)の一部機種で、全ての機種が文字化けをするわけではな
いです(文字数が400文字以内であれば、文字化けしませんでした)。

プログラムの送信方法は、
$subject = "=?shift_jis?B?" . base64_encode($subject) . "?=";
$body = base64_encode($body);
$headers = "From: hoge@hoge.com\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Type: text/plain; charset=Shift-JIS\n";
$headers .= "Content-Transfer-Encoding: base64";
$res = mail("hoge@softbank.ne.jp", $subject, $body, $headers);
上記のようにしています。

同じご経験がある方、ご教授をお願い致します。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

これってHTMLメールですか?


テキストだとすると本分はJISエンコードですよね?

この回答への補足

すみません。もっと詳しく書けば良かったですね…。

内容はテキスト形式です。
一応shift_jisで書かれています。

補足日時:2009/05/21 18:35
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング

おすすめ情報