- 締切済み
PHPの自動返信メールフォームについてです。
PHPの自動返信メールフォームについてです。 docomoの携帯メールを上手く受け取れません。 アンケートの取る為の自動返信メールフォームを作成しています。 メールを受け取る事は出来るのですが DOCOMOの携帯の場合、送信者の メールアドレスが”で囲まれて、後ろに@サーバ名が付きます。 ↓こんな感じ "メールアドレス"@サーバ名 メールを返信しようとすると こういう記述があります。 <"=?ISO-2022-JP?B?Zm9yY2VfMS5mLXkucG9vQHQudm9kYWZvbmUubmUuanA@サーバ名> PHPのソースは mb_language("Ja") mb_internal_encoding("sjis") @mb_send_mail($conf[test@xxx.jp],$title,$mail_str,'From:'.mb_encode_mimehheader("$mail")); mailは変数です。 どなたか対処方法をご教唆願います。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- ida_rdt
- ベストアンサー率75% (3/4)
docomo のメールアドレスに「 ..(連続したドット) 」が入っていると、uhoho001さんの仰るとおり「 "メールアドレス"@サーバ名 」のようになってしまいますね。 もし「"」が問題で送信できないのであれば、シンプルに考えてジャマな記号を削除してしまうのはいかがでしょうか。 // メールアドレス $mailAddress = '"test..test"@test.com'; // 正規表現でダブルクォーテーションを除去 $mailAddress = preg_replace( '/"(.+?)"@/', "$1@", $mailAddress ); // メール送信( TO 以外は、同じ ) mb_language("Ja"); mb_internal_encoding("sjis"); @mb_send_mail( $mailAddress, $title, $mail_str, 'From:'.mb_encode_mimehheader("$mail") ); ※補足 上記のような「"」付きアドレスでも、環境によっては送信できます。 文字コードが UTF-8 のサーバ環境 + postfix ですと、ほとんどの場合送信可能です。
- 1minn
- ベストアンサー率57% (52/90)
提示されているソースはどうみても送信処理ですが・・・ PHPからのメールをdocomoで正常に受信できない って事ですか? > ↓こんな感じ > "メールアドレス"@サーバ名 > メールを返信しようとすると > こういう記述があります。 > <"=?ISO-2022-JP?B?Zm9yY2VfMS5mLXkucG9vQHQudm9kYWZvbmUubmUuanA@サーバ名 これはメールアドレスじゃなくてmessage-idとかかな? もう少し、前後の情報と「こうしたらこうなった」の具体例があれば、回答つきやすいですよ。 「上手く受け取れません」のどこがうまくないのかがよくわからないので。
補足
回答ありがとうございます。 私の説明不足で申し訳ありません。 OutLook Express6で docomoからのメールを受信しますと 送信者が "xxxx@docomo.ne.jp"@サーバ名となります、 その他の携帯会社のメールは 送信者は xxxx@ezweb.ne.jp です。 docomoのメール全部ではなく、文字数が長い時、 . が入って いる時になります。
お礼
回答ありがとうございます。 早速試してみます。