0
// from the form
$name = trim(strip_tags($_POST['name']));
$email = trim(strip_tags($_POST['email']));
$message = htmlentities($_POST['message']);

// set here
$subject = "Contact form submitted!";
$to = 'your@email.com';

$body = HTML
$message
HTML;

$headers = "From: $email\r\n";
$headers .= "Content-type: text/html\r\n";

// send the email
mail($to, $subject, $body, $headers);

// redirect afterwords, if needed
header('Location: thanks.html');

问题是,天气与否,您可以在 html 电子邮件正文中插入一个 php if 语句,或者在其中添加它的最佳方式。我正在创建一个详细的清单,一旦提交,它需要通过电子邮件发送到电子邮件。但我不想通过电子邮件发送完整的库存(包括空输入),它应该只通过电子邮件发送非 0 的字段。我在想:

if ($armChair > 0) { echo '扶手椅:' . $_POST['armChair']; }]

但它似乎并没有真正起作用......有什么想法吗?

4

1 回答 1

6

这是一个结构糟糕的问题。

是的,你绝对可以做到这一点,但你需要以一种理智的方式做到这一点。我们无法通过您在此处发布的内容来判断,因为您刚刚插入了定义正文的“HTML”。

$body = "Hi there,\r\n";
$body .= $armChair > 0 ? "Arm Chairs: ".$_POST['armCharis']."\r\n" : "";
$body.= "some more text";

如果您的意思是覆盖 $message 的一部分,是的,您也可以使用机器标签 {INVENTORY} 之类的东西来做到这一点......

$message = $armChair > 0 ? str_replace('{INVENTORY}', "Arm Chairs: ".$_POST['armCharis']."\r\n", $message) : "";

这当然需要在 $message var 中的某处使用字符串 {INVENTORY}

于 2012-08-25T02:00:37.613 回答