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


HTML to send a pre-written 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文档,或者它背后有复杂的代码。

由于我只熟悉基本的视觉元素,请你解释一下代码的哪些部分做了什么,因为我可能想对它进行调整

谢谢!

正如Fred所说,最好的方法是通过PHP的邮件功能。当send.php运行时,您可以包含类似的php代码

mail($mail, "My Email Subject", "<html><b>Email Message</b></html>", $headers);

其中,您的头变量必须包含所有必要的信息,以告诉客户端的邮件软件字符串消息包含应该解析的HTML。标题设置示例如下,来自CSS Trick关于这个问题的可爱示例:

$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()函数也使得它不需要点击提交两次。