2014-10-29 73 views
0

带复选框通讯简单邮件 - 我做错了什么? 一切都OK了 - 送信息exept复选框 请帮带复选框的简单表格php

<?php 
if (isset($_POST['email']) && isset($_POST['name']) && isset($_POST['subject']) && isset($_POST['text']) && filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) { 


    $test = "/(content-type|bcc:|cc:|to:)/i"; 
    foreach ($_POST as $key => $val) { 
    if (preg_match($test, $val)) { 
     exit; 
    } 
    } 
      $message .= "<strong>Client:</strong>" . strip_tags($_POST['name']) . ; 
      $message .= "<strong>E-mail:</strong>" . strip_tags($_POST['email']) . ; 
      $message .= "Newsletter" . strip_tags($_POST['newsletter']) ; 

      $to = '[email protected]'; 
      $subject = $_POST['subject']; 
      $headers = "From: " . $_POST['email'] . "\r\n"; 
      $headers .= "Reply-To: ". strip_tags($_POST['req-email']) . "\r\n"; 
      $headers .= "MIME-Version: 1.0\r\n"; 
      $headers .= "Content-Type: text/html; charset=utf-8\r\n"; 

      mail($to, $subject, $message, $headers); 
} 
?> 

和HTML

<label for="newsletter"> 
     <input type="checkbox" id="newsletter" name="newsletter" value="Yes" checked> Subscribe 
    </label> 
+1

这是什么意思做的,什么是它目前正在做?它似乎应该将通讯价值添加到$消息 – aashnisshah 2014-10-29 19:41:31

+0

它发送电子邮件与客户名称和电子邮件,我需要关于复选框状态的信息 – Mach 2014-10-29 20:07:29

回答

0

$ _ POST [ '通讯']如果选中复选框,将只存在。

你可以尝试这样的事情

<?php 
$info = ""; 
if(isset($_POST['newsletter'])){ 
    $info = "You want to receive the newsletter"; 
} 
else{ $info = "You dont want the newsletter"; } 

$message .= "Newsletter :" . $info ; 
?> 

希望这有助于 PS:用var_dump($ _ POST)来调试发布DATAS

+0

它dosent工作,总是发送:“你不想要通讯” – Mach 2014-10-29 21:55:29

+0

可以你发布了var_dump($ _ POST)的结果; ? – Math 2014-11-01 11:04:39