- ベストアンサー
メールフォームを初めて作ります
初めてPHPを使ってメールフォームを作ろうと思っています。本も買ったのでこの通り作って部分部分自分好みに変えればいいかな…と思いましたが、せっかく完成したというのに基本的なトコロから謎だらけです…。 HTMLオンリーだとformのactionトコに自分のメールアドレスを入れたりしますよね。ところがたいていmailform.phpとか入れますよね?これって一体送ったメールはどこへ行ってしまうのですか(汗)?お借りしているところではこういった質問がいっさいダメなもので…スミマセンがよろしくお願いします。。。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
#1 です。 mb_send_mail は mail のラッパーなので、使い方は mail関数と同じです。 第4パラメータに、追加ヘッダーが指定できるので、 $mail_to = "xxxxxx"; $subject = "メールフォーム送信内容"; $body .= "(省略)\n"; $addheader = "From: xxxx@xxxx\r\n" . "X-Mailer: xxxx"; mb_send_mail( $mail_to, $subject, $body, $addheader); などとすると良いでしょう。
その他の回答 (2)
- Dpop
- ベストアンサー率51% (279/544)
#1, #2 です。 先ほど、#1 で To: を指定する。と書きましたが、From: を指定する。ですね。 混乱させてしまって、申し訳ございません。 回答は、#2 に示してありますので、試して見てください。
- Dpop
- ベストアンサー率51% (279/544)
メールヘッダの To: に設定してください。 どの様な形式でメールを送信しようとしているのか、分かりませんが、メール送信を行う時には、From:, To:, Subject: が付きます。 PHPの関数を利用するなら、パラメータに。Sendmailなどを直接呼び出すのであれば、メールヘッダに、From:. To:, Subject: の情報を付けて挙げてください。
お礼
さっそくの回答ありがとうございますっ! もしやもしやものすごい恥ずかしいカンチガイをしていたのでしょうか…自分は(真っ青) 例えば $mail_to = "xxxxxx"; $subject = "メールフォーム送信内容"; $body .= "(省略)\n"; mb_send_mail( $mail_to, $subject, $body ); こんな感じです。 自分は"xxxxxxのトコロ、submitしてくれた人「だけ」のメールアドレスにするよう設定していました…ココを自分のアドレスにすればフツウに送れるのですね。。。上みたいな書き方で送ってくれた人に確認メールも出したい場合、どのように複数設定すればよいのでしょうか…コチラもご教授いただければ幸いです~ すばやいご回答ありがとうございました。
お礼
いえいえ、ココまで丁寧に教えていただいてありがとうございます。ああ、こういうふうにできるんですね。そもそもの発端はmail関数の使い方を自分がちゃんと理解していなかったということが原因ですね(汗)。大変丁寧に教えていただきありがとうございました!