发送自动电子邮件

问题描述 投票:2回答:5

我希望在按下按钮时将自动电子邮件发送给某人的电子邮件。我遇到了一些问题,我不确定这是什么JavaScript。二,我不知道如何混合PHP和JavaScript,因为我需要使用PHP从SQL表中获取他们的电子邮件地址和密码,据我所知,我需要JavaScript来发送电子邮件。最后,我不知道如何将PHP中的密码添加到电子邮件中。任何这些的帮助将不胜感激。谢谢。

php javascript html sql html-email
5个回答
4
投票

最简单的方法:

  1. 在您的网页上制作HTML表单: <form method="POST" action="email-script.php"> <label for="email">Email:</label> <input type="text" name="email" id="email" /> <input type="submit" value="Ok" /> </form>
  2. 在您的email-script.php文件中编写PHP代码: <?php $email=$_POST['email']; $subject = 'Your subject for email'; $message = 'Body of your message'; mail($email, $subject, $message); ?>

当您掌握这个简单的方法时,您可以使用更高级的AJAX方法(因此您不需要重新加载页面)或SMTP(这使您可以更好地控制向用户发送邮件)。


2
投票

您可以通过PHP发送电子邮件,但是SO上的大多数答案都说“使用mail()函数”已经过时,我认为,无论如何都不起作用。

我建议您使用JavaScript或只是收集用户ID或用户电子邮件的HTML表单。然后将其作为参数传递给调用您要运行的PHP的post函数。

在PHP文件中,您阅读了电子邮件(例如,通过$ _POST ['email'])。然后运行SQL查询以检索密码WHERE电子邮件等于您刚刚阅读的密码。

最后,由于您现在已将密码存储在变量中,因此您将继续使用PHP文件并使用PHPMailer的函数,如以下示例所示:https://github.com/PHPMailer/PHPMailer/blob/master/examples/mail.phps。或者,您可以使用类似的库来实现相同的功能。

然后将密码放入电子邮件文本中并发送给用户。

但请注意:在安全性方面,以明文格式(未加密)将密码发送到用户的电子邮件地址是非常不明智的。我建议你给他们发一封带密码重置链接的电子邮件,这会将他们引导到一个表格,他们可以选择一个新密码并确认。这将需要一个不同的PHP文件,您可以在其中执行UPDATE查询以更改存储在数据库中的密码。

我假设你已经解决了你的问题,因为这是一个老问题,但也许这会帮助其他人偶然发现它。


0
投票

我过去做过类似的事情,最好的方法是创建一个HTML表单。然后使用PHP获取所有数据,仍然使用该PHP发送电子邮件。不需要JavaScript。我可以推荐这些链接

w3schools form email

为什么需要从SQL表中访问数据?这是一种密码恢复类型的表单吗?如果是这样,那也可以用php完成。但是,鉴于这是一个问答帮助网站,而不是论坛,我会聘请开发人员。

这个link可以帮助从php访问一个mysql数据库。

这个link可以帮助发送php电子邮件。

这个link可以帮助从PHP发送基于HTML的电子邮件。


0
投票

您可能想通过jQuery调查AJAX。

http://learn.jquery.com/ajax/

AJAX允许您在javascript中打开PHP脚本,然后使用php脚本回显来做任何事情。

如果您不介意离开界面页面,HTML表单将起作用。


0
投票

听起来你有点困惑,JavaScript对发送电子邮件没有任何帮助..

..也许它可以帮助你像这样思考:

  1. 带有链接(<a>)的HTML页面,引用您的php脚本: `<a href="email-script.php">Send Email</a>`
  2. 一个(单独的)PHP脚本(在上例中称为email-script.php),它使用众多邮件库之一(swiftmailerphpmailer)发送电子邮件。
  3. 然后php脚本应该将用户返回到原始页面..并带有一条消息告诉用户他们的电子邮件已发送

从PHP发送电子邮件有很多教程,上面的链接是带有示例代码的页面。

© www.soinside.com 2019 - 2024. All rights reserved.