投稿者 ?-?  (その他) 投稿日時 2009/9/4 04:52:48
今までの話から推測すると、フォームに、送信先メールアドレスと、件名と、メール本文を書く部分があって、それらを書いた後に、送信ボタンを押すとメール送信がされるというのをやりたいのだろうなあということなのかなと思います。
もちろん、送信するときに使うSMTPサーバなんかは指定しないことにして、誰でも簡単にメール送信が出来るように、と。

まあ、気持ちはわからないでもないんですが、少々落ち着いて、メールってどうやって送られているか考えて(あるいは調べて)欲しいのですが、基本的には、SMTPという方式でサーバ間あるいはクライアント(PC)とサーバ間でメールは送信されています。
乱暴に言うと、SMTPサーバには、ドメインを解釈して、SMTP送信先のメールサーバを決定したり、自分のメールボックスに送ったりというのをやっています。
そのSMTPでのやりとりの最初を最初にやってくれるのが、PHPの場合はmb_send_mailなんですが、これは、PHPの設定の中にあるsendmail_pathなど、メール設定にあわせたサーバに最初にメールを送っています。

あきらさんが
> でもそれは自分が使用しているSMTPサーバーを指定しなければなりません。
と書いている部分は、管理者が変わりにPHPの設定を指定している(多分自分のマシンのメール機能を指定しているはず)から意識しないで出来ていたことで、それを考えると本来、PHPだろうとなんだろうと最初に接続をするSMTPサーバを指定しなければなりません。

もし、mb_send_mailのように、SMTPサーバを意識しないで出来るようにしたいなら、DNSやSMTPの知識などを総動員して、自らSMTPサーバになるようなものをプログラムに入れて、それを呼び出すようにしなければなりません。(どちらにしても、現状日本では、ISPのSMTPサーバ経由でメールを送信しなければならないことになると思いますが。)

他の方法だと・・・WindowsXPやVistaなら、IISというのをインストールできるはずです。
それには、SMTPサーバの機能がありますので、それを経由することでメール送信等は出来ると思いますが、これも、上位SMTPサーバの指定などをしてISPのSMTPサーバを指定する必要があると思いますので、あまり現実的ではないと思います。

それと、SPAMがどうのと私は書きましたが、これの意味するところは、「Outbound Port 25 Blocking」などの用語を検索して読んでいただければ理解してもらえると思います。