性格いい人が優勝

HTMLで
<form action="mail.php" method="post">
<input name="aaa" type="checkbox" id="aaa" value="AAA" checked>
<input name="bbb" type="checkbox" id="bbb" value="BBB" checked>
<input name="ccc" type="checkbox" id="ccc" value="CCC" checked>
</form>
として、次に進むボタンを押すとmail.phpに飛び
mail.phpでは、チェックされたものだけを表示したいのですが、どうすればよいでしょうか?

もし、AAAとBBBが選ばれたら

あなたが選んだのは
AAA、BBBです。

と表示したいです。そのあとにメールフォームを続けるつもりです。
ご教授よろしくお願いします。

A 回答 (2件)

>その後、メールフォームを記入してもらって送信


>したいのですが、この選択されたものも表示され
>たまま届くように設定するにはどうすればよいで
>しょうか?

メール系の関数をつかって、メールサーバー経由で
おくってください。system系の関数でsendmailに
なげるのも手だと思います。
自分でなにもプログラムをしたくないならPHPは
やめた方がよいですよ。

参考URL:http://www.php.net/manual/ja/index.functions.php
    • good
    • 0
この回答へのお礼

関数を使って、sendmailになげることが出来ました。
丁寧なご教授ありがとうございました。

お礼日時:2006/01/04 15:41

まず、この質問に不要なidは削ります。


valueとnameを両方同じように設定するのは意味がありません。
簡単にするならこんな感じでphpが配列を受け取れるようにして
あげると良いでしょう。

<form action="mail.php" method="post">
<input name="member[]" type="checkbox" value="AAA" checked>AAA
<input name="member[]" type="checkbox" value="BBB" checked>BBB
<input name="member[]" type="checkbox" value="CCC" checked>CCC
<input type="submit" value="send">
</form>

mail.phpではmember配列があるかどうかを判断して、ある場合は
foreachで廻して文字列をつないでいけばよいでしょう。

<?PHP
if(is_array($member)){
$txt ="あなたの選んだのは";
foreach ($member as $key=>$val){
if ($key==0){
$txt .=$val;
}else{
$txt .="、".$val;
}
}
$txt.="です";
}else{
$txt="あなたは誰も選んでません";
}
print $txt;
?>

この回答への補足

ありがとうございます。
表示されるようになりました。

その後、メールフォームを記入してもらって送信したいのですが、
この選択されたものも表示されたまま届くように設定するにはどうすればよいでしょうか?

たびたび申し訳ございません。どうかご教授お願いいたします。

補足日時:2005/12/30 23:13
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!