1

我的网站上有一个简单的联系表格,可以根据用户填写的复选框向不同的电子邮件地址(不同的实体办公室和电子邮件帐户)发送电子邮件。

有两个复选框,一个 NMB 和一个 MB 用于值。

这是我想要做的: 如果选中一个复选框(NMB),发送电子邮件到 addy1 如果选中一个复选框(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

这应该可以,但我不确定您的复选框的名称是什么。您可以将cb1和替换cb2为相应的复选框名称。

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

您的复选框值将是您的 value 属性设置的任何值,以及数组键,即您的 name 属性的值。

如果你设置 $office = $_POST['checkbox'],如果你的值是 'NMB' 和 'MB',你就完成了。

于 2012-06-06T16:59:08.417 回答
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");

我使用 isset 是因为如果未选中该框,则不会设置 $_POST['cb_NMB'] 并且 PHP 会抛出警告。

于 2012-06-06T17:24:45.880 回答