• ベストアンサー

メール送信する際にメールサーバを選ぶことはできますか?

trabと申します。 早速ですがご質問です。 mail1.○○○.jp mail2.○○○.jp mail3.○○○.jp という風に複数のメールサーバを用意して phpのプログラム上から条件によって メールサーバを選択してメール送信することは 可能でしょうか? 例えばAさんならmail1.○○○.jp、 Bさんならmail2.○○○.jpという具合です。

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

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

sendmailではなく直接SMTPで出せば良いと思うけど。 もしPHP.INI情報が都度変えられなければ、phpmailerなどの独立したプログラムで送ってはどうでしょう。

trab
質問者

お礼

教えていただいて、ありがとうございます。 参考にしてやってみます。

その他の回答 (2)

  • tany180sx
  • ベストアンサー率63% (239/379)
回答No.2

send_mail関数を使わずに自前で接続すれば可能とは思いますが。

参考URL:
http://www.1x1.jp/php/manual_pear/html/package.networking.net-smtp.html
trab
質問者

お礼

教えていただいて、ありがとうございます。 丁寧にURLまでありがとうございます。

  • nikuq
  • ベストアンサー率22% (8/36)
回答No.1

通常のmb_mail_submit関数を使い、メール送信フォームからメールを送る際に、if関数等で送信元のメールアドレスを変更すればいいのではないでしょうか。 例:Aさんのメルアドがa_san@hoge.jp、Bさんがb_san@hoge.jp、cさんがc_san@hoge.jpだとします。 $header = ""; $header .= "Content-Type: text/plain; charset=ISO-2022-JP\n"; $header .= "Content-Transfer-Encoding: 7bit\n"; if("${to_mail}" == "a_san@hoge.jp") { $header .= "from: hoge@mail1.○○○.jp\n"; } elseif("${to_mail}" == "b_san@hoge.jp") { $header .= "from: hoge@mail2.○○○.jp\n"; } elseif("${to_mail}" == "b_san@hoge.jp") { $header .= "from: hoge@mail3.○○○.jp\n"; } //送信先メールアドレスの定義 $mail = "${to_mail}"; //メールタイトルの定義 $subject = "\nめーるだよん。"; //メール本文の定義 $body = "これで、メールアドレスや、名前等から\n"; $body .= "個人を識別して、\n"; $body .= "fromのメルアドが変更できますよん。これじゃだめ?\n"; という様にしてはいかがでしょう??

trab
質問者

お礼

詳しい説明、ありがとうございます。 試してみます。

関連するQ&A