【发布时间】:2012-08-23 18:32:23
【问题描述】:
我希望能够从我的主页发送邮件,但它无法按我的意愿工作。我收到一封邮件,但它没有说是从家里来的。只是说未知。我在两个不同的地方有这个。我使用其他文本区域的另一个地方,我的邮件中的所有内容都可以正常工作,但是我正在尝试工作的另一个地方我只希望他们在那里添加电子邮件,然后它应该与所有信息一起发送。
我的页面上的代码:
<form id="subscribe" class="clearfix" method="post" action="get_mail.php">
<div class="field alignleft">
<input type="text" value="Enter your email" onclick="if(this.value=='Enter your email')this.value='';" onblur="if(this.value=='')this.value='Enter your email';" />
</div>
<div class="search-btn">
<input type="submit" value="" />
</div>
</form>
然后我有这个 php 脚本
<?php
//-----------------------------------------------------
//-----------------------------------------------------
$address= "xxxxx.xxxxx@outlook.com";
//-----------------------------------------------------
//-----------------------------------------------------
$name = $_REQUEST["name"];
$email = $_REQUEST["email"];
$website = $_REQUEST["website"];
$subject .= "You have an email from your web site (from $name)! \n\n";
$message_content = strip_tags($_REQUEST["message"]);
$headers = "From: $name <$email>\n";
$headers .= "Reply-To: $subject <$email>\n";
$message = "--$mime_boundary\n\n";
$message .= "You have an email from your web site: \n\n\n";
$message .= "Name: $name \n\n";
$message .= "Email: $email \n\n";
$message .= "Website: $website \n\n";
$message .= "Message: $message_content \n\n";
$message .= "--$mime_boundary--\n\n";
$mail_sent = mail($address, $subject, $message, $headers);
echo $mail_sent ? "Success, mail sent!" : "Mail failed";
?>
【问题讨论】:
-
您能告诉我们您遇到的错误吗?
-
您并不需要
$mime_boundary行,除非您要发送消息的多个版本(即html 和纯文本),或者您有附件。这是要删除的一件事。此外,您应该确保您有一个邮件服务器设置供您的邮件进程使用,或者包括 Gmail 或其他类似的连接详细信息,以便通过它发送。mail()运行底层服务器的邮件发送能力。
标签: php html html-email