PHP表单提交到错误的电子邮件地址

时间:2015-12-02 23:57:01

标签: php wordpress forms email submission

我在表单(下方)中有一个选择字段,允许用户选择特定的代理'他们希望通过电子邮件发送表单。下面的代码显示代理商的正确名称和电子邮件。

<select name="to" class="select-box">
    <option value="">Send message to</option>
        <?php if(isset($agents) && $agents):
            if(!is_array($agents)) { $agents = array($agents); }
                foreach($agents as $agent):
                    $agent_post = get_post($agent);
                    $email = sanitize_email(get_post_meta( $agent, '_meta_email', true ));
                    $mailto[] = $email;
                    echo '<option value="'.$email.'">'.wp_kses_data($agent_post->post_title).'</option>';
            endforeach;
        endif;
    ?>
</select>

......现在是事情开始变得棘手的事情。实际使用所选电子邮件的PHP无法正常工作。

$to = $_REQUEST['to'];
if(!$to) $to = nt_get_option('property', 'contact_email', get_bloginfo('admin_email'));

如果未选择电子邮件地址,则第二行充当备份计划,但即使用户选择了特定代理,也会使用它。关于我失踪的任何建议?

1 个答案:

答案 0 :(得分:0)

我不认为!$to正是您所寻找的。 !$to实际上意味着!= true,显然电子邮件地址不等于true,因此它始终使用默认电子邮件地址。

我会尝试

$to = trim($_REQUEST['to']); // trim whitespace

// Check if $to is empty
if(empty($to)){
    // If so, set default
    $to = nt_get_option('property', 'contact_email', get_bloginfo('admin_email'));
}