我的网站上的联系表单存在问题! 我尝试在线搜索答案,但我是这个网站建设的新手,如果可能的话,我会很感激一个简单的答案。我猜编码在某处错了,但我真的不知道在哪里!
问题 - 我按下提交后会收到电子邮件,但在我的收件箱中,它只显示主题行,不会显示消息,电子邮件或其来自的人的姓名。
请帮忙!
以下是HTML代码:
<form action="result.php" method="post">
<input name="Name" class="" type="text" value="Name (Required)" onfocus="if(this.value == 'Name (Required)') { this.value = ''; }" onblur="if(this.value == '') { this.value = 'Name (Required)'; }" />
<input name="Email" class="" type="text" value="Email (Required)" onfocus="if(this.value == 'Email (Required)') { this.value = ''; }" onblur="if(this.value == '') { this.value = 'Email (Required)'; }" />
<input name="Subject" class="" type="text" value="Subject" onfocus="if(this.value == 'Subject') { this.value = ''; }" onblur="if(this.value == '') { this.value = 'Subject'; }" />
<textarea name="Detail" cols="" rows="" onfocus="if(this.value == 'Describe your project in detail...') { this.value = ''; }" onblur="if(this.value == '') { this.value = 'Describe your project in detail...'; }">Describe your project in detail...</textarea>
<input type="submit" name="submit" action="submit" value="submit" class="submitbtn" />
<input type="reset" name="reset" action="reset" value="reset" class="resetbtn" />
</form>
和PHP代码:
<?php
$name = $_POST['Name'];
$email = $_POST['Email'];
$subject = $_POST['Subject'];
$detail = $_POST['Detail'];
$to = "info@philippamichael.com";
$subject = "Contact Form Submission";
mail ($to, $subject, $detail, "From" . $name);
echo "Thank You. Your Message has been sent.";
?>
答案 0 :(得分:3)
哟似乎没有在任何地方使用$email
,而且你的标题没有正确的格式。也许是这样的:
<?php
$name = $_POST['Name'];
$email = $_POST['Email'];
$subject = $_POST['Subject'];
$detail = $_POST['Detail'];
$to = "info@philippamichael.com";
$subject = "Contact Form Submission";
$message = $detail . "\n\nFrom Name: {$name}";
$message .= "\nFrom Address: {$email}";
mail ($to, $subject, $message , "From: info@philippamichael.com");
echo "Thank You. Your Message has been sent.";
请注意,我完全删除了您的From标头,因为您不想从任意地址发送。最好使用您自己的域名中的无回复地址等,只需将联系信息包含在电子邮件正文中即可。
答案 1 :(得分:1)
检查邮件功能:http://www.php.net/manual/en/function.mail.php
bool mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )
第4个参数是additional_headers,因此您的格式可能有误。尝试:
mail ($to, $subject, $detail, "From: " . $name);
答案 2 :(得分:0)
您的标头错误...请使用此语法。
$to = "info@philippamichael.com";
$subject = "Contact Form Submission";
$message = $detail;
$headers = "From: ".$name;
$headers .= "\r\nMIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html;\r\n";
mail($to,$subject,$message,$headers);
这应该有用。