Php:收到的电子邮件没有任何消息
我正在尝试用php创建“联系我们”表单,并将其链接到我的html。我确实收到了电子邮件,但没有留言Php:收到的电子邮件没有任何消息,php,html,Php,Html,我正在尝试用php创建“联系我们”表单,并将其链接到我的html。我确实收到了电子邮件,但没有留言 <?php $visitor_email = $_POST['email']; $message = $_POST['message']; $email_from = 'web@based.com'; $email_subject = "New Form Submission"; $email_body = "User Email: $visitor_email.\n".
<?php
$visitor_email = $_POST['email'];
$message = $_POST['message'];
$email_from = 'web@based.com';
$email_subject = "New Form Submission";
$email_body = "User Email: $visitor_email.\n".
"User Message: $message.\n";
$to = "ur.zic@based.com";
$headers = "From: $email_from \r\n";
$headers .= "Reply-To: $visitor_email \r\n";
mail($to, $email_subject, $email_body, $headers);
header('Location: '.$_SERVER['HTTP_REFERER']);
?>
联系我们
如果代码有问题,我很乐意接受任何建议
致以最良好的祝愿
Uroš根据您的PHP版本,正确连接以及定期使用\r\n而不是一次\n和另一次\r\n可能非常关键
$email_body = "User Email:". $visitor_email."\r\nUser Message:". $message."\r\n";
$headers = "From: ". $email_from. "\r\n";
$headers .= "Reply-To:". $visitor_email;
// you might not need \r\n at the end if you do not add more header
如果邮件是否已发送,我还将添加一个条件
if(mail($to, $email_subject, $email_body, $headers)){
header("Location: ".$_SERVER['HTTP_REFERER']);
// careful with the mix of single quote for different things (above)
}
else {
die("Error with your email");
}
设置从电子邮件的标题。如果消息是html格式的,也可以使用内容类型text/html
$headers = "From:" . $email_from . "\r\n";
$headers .= "Content-type: text/plain; charset=UTF-8" . "\r\n";
$headers .= "Reply-To: $visitor_email \r\n";
mail($to, $email_subject, $email_body, $headers);
希望这项工作“不起作用的东西”听起来相当宽泛。您试图识别问题的原因是什么?您的意思是只有$message是空的?还是其他人呢?可能是语法错误,因为较旧的php版本没有读取字符串中的变量。一些简单的调试可以让您进一步了解。删除重定向,然后放置
echo“[$visitor_email][$message]”直接从$\u POST
数组中获取代码>之后。你看到那里的价值观了吗?谢谢大家!当我打印和acho时,所有的$u绘图似乎都工作正常。[提交新表格][用户电邮:here@based.com.用户消息:这似乎也有效。][回复:here@based.com我猜“邮件”功能一定有问题,因为我收到的电子邮件没有任何内容,没有标题、消息或主题。
$headers = "From:" . $email_from . "\r\n";
$headers .= "Content-type: text/plain; charset=UTF-8" . "\r\n";
$headers .= "Reply-To: $visitor_email \r\n";
mail($to, $email_subject, $email_body, $headers);