如何创建用户可以指定电子邮件并向用户发送预定义电子邮件的脚本?

时间:2011-02-21 01:00:24

标签: php html email forms send

所以,基本上,我正在创建一个用户可以访问的页面,并输入以下信息:
1.他们的名字
2.他们的电子邮件 3.收件人的电子邮件

然后,他们可以发送预定义的电子邮件,说下面的内容......

“你好,{收件人的电子邮件}。{名字}({电子邮件})刚给你发了一个傻瓜!你可以忽略这个消息,或者把它们甩掉。
[Slurp他们回来] [Slurp别人] [什么是Slurp?]“

关于Slurp的整个部分并不重要,它只是来自预定义电子邮件的文本。 {...}中的文本取自页面上的字段,[...]中的文本只是链接。

有没有人知道如何做到这一点?即使您无法自定义电子邮件,也只是没有来自网站的信息,我们将不胜感激。谢谢。!
这是我要去的一个例子...... Example Layout

4 个答案:

答案 0 :(得分:0)

可以使用php邮件功能。您可以为指定的所有内容输入输入,然后使用示例here。他们以基本和更高级的形式展示它。

答案 1 :(得分:0)

使用mail()命令

可以自行发送电子邮件
mail('to.address@host.com', 'subject', 'message', 'From: from.address@host.com');

整个代码看起来像这样:

HTML:

<form action="slurping.php" method="post">
    Your name: <input type="text" name="name" /><br />
    Your email: <input type="text" name="email" /><br />
    Recipient: <input type="text" name="recipient" /><br />
    <input type="submit" />
</form>

PHP(slurp.php):

// order of parameters is: to, subject, message body, additional headers
mail(
    $_POST['recipient'], 
    'You just got slurped', 
    'You\'ve been slurped by '.$_POST['name'].'. Slurp him/her back by visiting http://slurp.com/',
    "From: {$_POST['email']}\r\n"
);

这将发送一封类似于发件人电子邮件地址的邮件给收件人。

但那里有很多人失踪。您通常希望包括:

  • 验证客户端的输入(javascript)
  • 验证服务器端的输入
  • 清除并处理正确的编码等

如果您想要正确地执行此操作,以便更多百分比的用户接收电子邮件,则应使用第三方库发送电子邮件。我建议PHP MailerSwift Mailer

这些库提供了一种简单的机制,您可以在电子邮件,附件中包含HTML,允许轻松连接到SMTP服务器并为您处理所有转义和编码问题。

最重要的是,他们将所有内容都封装在面向对象的方法中,所以如果那是你的一杯茶,你会很开心。在他们的网站上获取更多信息。

这很有趣,我写了一篇关于电子邮件可传递性问题的博客文章(通过垃圾邮件过滤器)等等:http://arnorhs.com/2011/02/21/delivering-email-with-php/ - 它可能对您有所帮助。

干杯

答案 2 :(得分:0)

有趣的是,Head First PHP的第一章几乎完全描述了这种情况(除了收件人是固定的)。如果您想了解有关PHP的更多信息,可以查看本书;否则,他们的代码在http://www.headfirstlabs.com/books/hfphp/(实际代码链接:http://www.headfirstlabs.com/books/hfphp/code/HeadFirstPHPMySQL_code_ch01.zip

上线

答案 3 :(得分:0)

在提交时,您可以在php中发送预定义的电子邮件

以下是代码示例

假设您将拥有一个html页面,以下是示例html代码

发送Slurp

    输入您的姓名:
    输入您的电子邮件:
    输入收件人的电子邮件:
    

以下是“=”send_email.php“

中的php代码

if ($_SERVER["REQUEST_METHOD"] == "POST")
{
    $your_name = $_POST['your_name'];
    $your_email = $_POST['your_email']; 
    $recipients_email= $_POST['recipient_email']; 

    $email_subject = 'My Slurp'; 
    $email_body = "Hello, $recipients_email. $your_name ($your_email) has just sent you a slurp! You can ignore this message, or slurp them back.
    [Slurp Them Back] [Slurp Someone Else] [What's A Slurp?]";

    echo $email_body;
    // Send Email
    mail($recipients_email, $email_subject, $email_body);

}
?>