我制作了一个用户可以填写的PHP表单,当他们按下提交按钮时,它会将反馈邮件发送到我选择的电子邮件地址。唯一的问题是,当我将'from'电子邮件作为name@mydomain.com时,它不起作用。电子邮件将被发送,但将从'mydomain@mywebhost.com'发送。
之后我在'from'标题下测试了我的gmail地址。这次它奏效了。标题中的电子邮件是'myaccount@gmail.com'。我想知道为什么它适用于gmail而不适用于我的域名?
答案 0 :(得分:0)
这不是您的问题。 gmail smtp服务器不允许与电子邮件区别开来。
如果您使用自己的smtp服务器,那么你可以看到没问题。
备注:
如果smtp帐户电子邮件和电子邮件不相同,则电子邮件可能会被垃圾邮件发送。
您可以使用回复电子邮件地址获取回复邮件或反馈邮件。
答案 1 :(得分:0)
包含所有功能的邮件代码示例(虚拟内容在那里。用变量和数据编辑它)
<?php
$to = 'my_mail@gmail.com';
$subject = 'Subject with name '.$c_name;
方法01
单行消息
$message = 'My message here';
方法02
HTML(Tbale格式)消息
$message = '<html><body>';
$message .= '<table>';
$message .= "<tr><td><strong>Name</strong> </td><td width='75%'>".strip_tags($_POST['name'])."</td></tr>";
$message .= "<tr><td><strong>Email</strong> </td><td>" .strip_tags($_POST['email']) . "</td></tr>";
$message .= "<tr><td><strong>Mobile</strong> </td><td>" .strip_tags($_POST['mob']) . "</td></tr>";
$message .= "<tr><td><strong>Message</strong> </td><td>" . strip_tags($_POST['message']). "</td></tr>";
$message .= "</table>";
$message .= "</body></html>";
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
方法02的结尾
$headers .= "Cc: my_cc@gmail.com";//Cc email
$headers .= "From: fomr@gmail.com";//From email
$result = mail($to, $subject, $message, $headers);
if(!$result)
{
?>
<script type="text/javascript">
alert("Mail sending Not Successful. Try again");
</script>
<?php
}
else
{
?>
<script type="text/javascript">
alert("Thank You!");
</script>
<?php
}
}