【PHP】チェックボックスで選択した人にメールを送信するスクリプトを具体的に教えてください。高ポイント&イルカ差し上げます。


必要なもの◆送る人選択用のチェックボックス、件名(一行テキスト)と内容(テキストエリア)、送信ボタン

回答の条件
  • 1人3回まで
  • 登録:2007/11/09 16:31:45
  • 終了:2007/11/10 18:11:55

回答(3件)

id:tanukichi800 No.1

tanukichi800回答回数31ベストアンサー獲得回数32007/11/09 17:21:30

ポイント50pt

簡単に書くとこんな感じです。

もしも外部から見える場所に置くならセキュリティなども考えましょう。


#------------- 送信画面

<form action="my_mail.php" method="post">

<input name="to_address[]" type="checkbox" value="aaa@example.jp" />aaa@example.jp

<input name="to_address[]" type="checkbox" value="bbb@example.jp" />bbb@example.jp

<input name="to_address[]" type="checkbox" value="ccc@example.jp" />ccc@example.jp

<textarea name="txt"></textarea>

</form>


#------------- 送信処理(my_mail.php)

$from_address = 'admin@example.jp'; //差出人アドレス

$subject = "お知らせメール"; //件名

$to_address = $_POST['to_address'];

for($i=0;$i<count($to_address);$i++){</p>

mail ($to_address[$i], $subject, $txt,"From: $from_address");

}

?>

id:tsuntsuku

送信できませんでした・・・

あ、ちょこちょこいじってたらできました!

送信完了したら送信完了しましたって出すことは可能ですか?

2007/11/09 18:29:36
id:tanukichi800 No.2

tanukichi800回答回数31ベストアンサー獲得回数32007/11/09 19:57:59

ポイント50pt

>送信完了したら送信完了しましたって出すことは可能ですか?

これで一応出ますね。

# 送信失敗のことは考えてないんで

# 堅牢なものとするにはエラー処理とかしたほうがいいです

#------------- 送信処理(my_mail.php)

$from_address = 'admin@example.jp'; //差出人アドレス

$subject = "お知らせメール"; //件名

$to_address = $_POST['to_address'];

for($i=0;$i<count($to_address);$i++){</p>

mail ($to_address[$i], $subject, $txt,"From: $from_address");

}

?>

<h1>送信完了</h1>

id:tsuntsuku

それはそうなんですが・・・

送信できたのか、エラーなのかを出したかったんです。

2007/11/09 21:04:36
id:dkitagawa No.3

dkitagawa回答回数7ベストアンサー獲得回数12007/11/10 13:28:36

ポイント50pt

メールに関しては送信のエラーチェックが出来るだけで、実際に届いているかどうかはチェックできません、という前提ですが。。

>mail ($to_address[$i], $subject, $txt,"From: $from_address");

>for($i=0;$i<count($to_address);$i++){</p>

> mail ($to_address[$i], $subject, $txt,"From: $from_address");

>}

ここを

for($i=0;$i<count($to_address);$i++){</p>

$result = mail ($to_address[$i], $subject, $txt,"From: $from_address");

echo '<p>';

if ($result === TRUE) {

echo '送信した! : ';

}

else {

echo '送信あれ? : ';

}

echo $to_address[$i].'</p>';

}

って感じでしょうか。メール関数のリファレンスの「例」の所に結構分かりやすく書いてあるので、ご覧あれ。

http://search.net-newbie.com/php/function.mail.html

※と言うか、mail()って文字化け大丈夫でしたっけ。

id:tsuntsuku

ありがとうございます。

mail関数でもなぜか文字化けしなかったのですが、

mb_send_mail関数に変えて利用させてもらいました。

2007/11/10 18:10:51
  • id:tsuntsuku
    あ”・・・イルカ忘れた・・・
    ごめんないさい・・・
    ほんとにわざとじゃないです・・・

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません