HTML发送预先写好的电子邮件

时间:2014-11-04 19:29:20

标签: php html email

我已经在互联网上放了一个网站,我希望有一个功能,用户可以在表格中输入他们的电子邮件地址,一旦提交,他们将收到预先设定的电子邮件。

还有其他问题,但似乎没有一个问题可以帮助我。

我这里有基本代码:

<form action="send.php" method="post">
<input type="text" name="mail">
<input type="submit" value="send">
</form>

这是send.php

<?php
$mail = $_POST['mail'];
?>
<html>
<a href="mailto:<?php echo $mail ?>"><button>SEND</button></a>
</html>

请原谅你必须按两次发送的事实,我会改变它。
我想做的是,通过电子邮件发送用户(电子邮件由$mail表示)预先写好的文件,而不是附件,而是电子邮件的组成。

我不确定天气我只能使用word文档,或者背后有复杂的代码。

由于我只熟悉基本的视觉元素,请您解释代码的哪些部分可以做什么,因为我可能想要调整它。

谢谢!

1 个答案:

答案 0 :(得分:5)

正如Fred所说,解决这个问题的最佳方法是通过PHP's mail function。当send.php运行时,您可以包含像

这样的PHP代码
mail($mail, "My Email Subject", "<html><b>Email Message</b></html>", $headers);

您的标头变量必须包含告诉客户端邮件软件所有必要信息的字符串消息包含应解析的HTML。对于此问题,来自CSS Trick's lovely example的示例标头设置如下:

$headers = "From: " . strip_tags($_POST['req-email']) . "\r\n";
$headers .= "Reply-To: ". strip_tags($_POST['req-email']) . "\r\n";
$headers .= "CC: susan@example.com\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";

注意您可以使用您想要的任何设置电子邮件替换strip_tags来电。然后,您可以使用您希望制作格式良好的电子邮件的任何代码替换我的<html><b>Email Message</b></html>

使用PHP的mail()功能也可以使您无需单击提交两次。

相关问题