1

私のウェブサイトには、ユーザーが入力するチェックボックスに応じて、さまざまな電子メールアドレス(さまざまな物理的なオフィスと電子メールアカウント)に電子メールを送信する簡単な連絡フォームがあります。

2つのチェックボックスがあります。1つはNMB、もう1つは値です。

これが私がしたいことです:1つのチェックボックス(NMB)がチェックされている場合、addy1に電子メールを送信します1つのチェックボックス(MB)がチェックされている場合、電子メールaddy2に送信します両方のチェックボックス(NMBとMB)がチェックされている場合、両方に電子メールを送信します

だから、これまでのところ、私はこれを持っていますが、それが機能しないか、複数の電子メールを送信するのではないかと思います...。

    $office  = $_POST['office'];

    if  ($office == "NMB" ){
        $address = "adyy1@narf.com";
    }
    elseif  ($office == "MB" ){
        $address = "adyy2@narf.com";
    }
    elseif  ($office == "NMB"  && $office == "MB" ){
        $address = "addy1@narf.com,addy2@narf.com";
    }

私は近くにいるように感じますが、葉巻はありません。助けてくれてありがとう!

4

3 に答える 3

1

これは機能するはずですが、チェックボックスの名前がわかりません。cb1cb2をそれぞれのチェックボックス名に置き換えることができます。

if  ($_POST['cb1'] == "NMB"  && $_POST['cb2']=='MB'){
    $address = "addy1@narf.com,addy2@narf.com";
}else if($_POST['cb1']=="NMB"){
    $address = "adyy1@narf.com";
}else if($_POST['cb2'] == "MB" ){
    $address = "adyy2@narf.com";
}
于 2012-06-06T16:56:17.137 に答える
0

HTML は次のようになります。

<form method=POST>
    <input type="checkbox" name="cb_NMB" id="cb_NMB" value=1 /><label for="cb_NMB">NMB</label>
    <input type="checkbox" name="cb_MB" id="cb_MB" value=1 /><label for="cb_MB">MB</label>
</form>

次に、PHP:

$addr = array();
if(isset($_POST['cb_NMB']))
    $addr[] = 'adyy1@narf.com';
if(isset($_POST['cb_MB']))
    $addr[] = 'adyy2@narf.com';

$message = '<b>Form Submitted</b><br />The form was submitted.';
foreach($addr as $a)
    mail($a,'Form Submission Notice',$message,"Content-type: text/html\r\n");

ボックスがチェックされていないと、$_POST['cb_NMB'] が設定されず、PHP が警告をスローするため、isset を使用します。

于 2012-06-06T17:24:45.880 に答える
0

チェックボックスの値は、 value 属性が設定されているものであり、配列キーは name 属性のキーです。

$office = $_POST['checkbox'] を設定すると、値が 'NMB' と 'MB' であればすべて設定されます。

于 2012-06-06T16:59:08.417 に答える