我的网站上有一个非常简单的联系表单,我正在寻找用户能够在“CC:”旁边放一个复选标记,让它们在没有创建一个全新字段的情况下进行CC操作,因为他们必须填写再次出来。
这是HTML:
<form action="send.php" method="post" name="form1">
Name: <input name="name" size="35"><br/>
E-mail:<input name="email" size="35"><br/>
CC: <input input type="checkbox" name="mailcc"><br/>
Comment: <textarea cols="35" name="comment" rows="5"></textarea> <br />
<input name="Submit" type="submit" value="Submit">
</form>
这是PHP:
<?php
$name = $_REQUEST['name'] ;
$email = $_REQUEST['email'] ;
$comment = $_REQUEST['comment'] ;
mail( "me@me.com", "Message Title", "Name: $name\n Email: $email\n Comments: $comment\n " );
echo "Message Sent! Thanks!"
?>
我一直试图从这个网站添加一些项目:
但它想为CC创建一个文本字段,这意味着用户必须输入两次电子邮件。
我也试过$mailheader.= "Cc: " . $email ."\n";
,但我也不能这样做。
答案 0 :(得分:2)
value="1"
)。$mailheader
)添加到mail()
函数的末尾,作为最后一个参数。基本上是这样的:
$name = $_POST['name'] ;
$email = $_POST['email'] ;
$comment = $_POST['comment'] ;
if ($_POST['mailcc'] == 1) {
$mailheader .= "CC: $name <$email>";
}
mail("me@me.com", "Message Title", "Name: $name\n Email: $email\n Comments: $comment\n ", $mailheader);
echo "Message Sent! Thanks!";
答案 1 :(得分:0)
您正在测试的抄送地址是否与“收件人”地址(您的示例中为me@me.com)相同?
我做了一个快速测试,使用此代码我只收到一封邮件:
<?php
$to = "my@address.com";
$subject = "Testing";
$message = "Testing message";
$headers = "Cc: my@address.com";
mail($to, $subject, $message, $headers);
但有了这个,我得到了我的其他电子邮件帐户的副本:
<?php
$to = "my@address.com";
$subject = "Testing";
$message = "Testing message";
$headers = "Cc: my@otheraddress.com";
mail($to, $subject, $message, $headers);