こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

PHPから携帯へメール送信

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

PHPから携帯電話へ"絵文字付き"でメールを送るプログラムを作成している
のですが、『base64_encode』等を使用して絵文字の表示までは行う事がで
きました。

ですが、本文が途中で途切れてしまうのです・・・。

PHP側は、

$to = mb_convert_encoding(mb_decode_mimeheader($structure->headers['from']), 'SJIS', 'ISO-2022-JP');
$subject = mb_convert_encoding(mb_decode_mimeheader($structure->headers['subject']), 'SJIS', 'ISO-2022-JP');

(省略)
 ・
 ・
$body = $structure->body;
$body = preg_replace('/\s*>\s.*/', '', $body);
$body = mb_convert_encoding($body, 'SJIS', 'ISO-2022-JP');
//----------------------------------
// base64_encode
//----------------------------------
$subject = "=?shift_jis?B?" . base64_encode($subject) . "?=";
$body = base64_encode($body);
//----------------------------------
// ヘッダを作成
//----------------------------------
$headers = "From: test@mail.com\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Type: text/plain; charset=Shift-JIS\n";
$headers .= "Content-Transfer-Encoding: base64";
//----------------------------------
// メール送信
//----------------------------------
$res = mail($to, $subject, $body, $headers);
 ・
 ・
(省略)

上記のように記述しています。
メールは送れます。絵文字も表示されます。ですが、本文が途中で途切れ
てしまいます。

どなたかご教授をお願い致します。

投稿日時 - 2008-07-04 15:05:18

QNo.4150752

すぐに回答ほしいです

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

> 本文が途中で途切れてしまいます。

この現象が起きるのは、受信側の携帯電話でのことですか?
途中というのは、本文の何文字目のことですか?

どの通信事業者の携帯(機種がからむのかもしれません)に送ったときに、
本文が何文字以内ならOKだがそれを超えるとNGになる、
というような、具体的な情報はありませんか?

こういった情報を集めることで、問題の切り分けができます。

投稿日時 - 2008-07-05 22:33:51

補足

ご回答ありがとうございます。

この現象が起きているのは携帯電話の方です。
いつも770文字目の所で切れてしまいます。

今のところAUのみでテストしているのですが、
必ず770文字目で文字が切れてしまいます。

現在、他のキャリアでも試しています。

投稿日時 - 2008-07-08 15:27:28

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問