我希望在他们按下按钮时将自动电子邮件发送到某人的电子邮件中。我遇到了一些问题,其中一个我不确定 JavaScript 会是什么。第二,我不知道如何混合使用 PHP 和 JavaScript,因为我需要使用 PHP 从 SQL 表中获取他们的电子邮件地址和密码,据我所知,我需要 JavaScript 来发送电子邮件。最后,我不确定如何将 PHP 中的密码添加到电子邮件中。任何这些帮助将不胜感激。谢谢。
5 回答
最简单的方法:
在您的页面上制作 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>
在 email-script.php 文件中编写 PHP 代码:
<?php $email=$_POST['email']; $subject = 'Your subject for email'; $message = 'Body of your message'; mail($email, $subject, $message); ?>
当你掌握了这个简单的方法后,你可以使用更高级的方法,比如 AJAX(这样你不需要重新加载页面)或 SMTP(这让你可以更好地控制向用户发送邮件)。
您可以通过 PHP 发送电子邮件,但我认为大多数关于“使用 mail() 函数”的答案都已过时,并且无论如何都不起作用。
我建议您使用 JavaScript 或简单的 HTML 表单来收集用户 ID 或用户电子邮件。然后将其作为参数传递给调用您要运行的 PHP 的 post 函数。
在 PHP 文件中,您阅读了电子邮件(例如,通过 $_POST['email'])。然后,您运行 SQL 查询来检索密码,其中电子邮件与您刚刚阅读的电子邮件相同。
最后,由于您现在将密码存储在变量中,因此您可以继续使用 PHP 文件并使用 PHPMailer 的函数,如以下示例所示:https ://github.com/PHPMailer/PHPMailer/blob/master/examples/邮件.phps。或者,您可以使用类似的库来实现相同的功能。
然后,您将密码放入电子邮件文本中并将其发送给用户。
但是,请注意:以纯文本格式(未加密)向用户的电子邮件地址发送密码在安全方面是非常不明智的。我建议您向他们发送一封带有密码重置链接的电子邮件,这会将他们引导到一个表单,他们可以在其中选择一个新密码并进行确认。这将需要一个不同的 PHP 文件,您将在其中执行 UPDATE 查询来更改存储在数据库中的密码。
我假设您已经解决了您的问题,因为这是一个老问题,但也许这会帮助其他偶然发现它的人。
您可能想通过 jQuery 研究 AJAX。
AJAX 允许您在 javascript 中打开 PHP 脚本,然后使用 php 脚本回显的任何内容执行操作。
如果您不介意离开界面页面,可以使用 HTML 表单。
听起来你有点困惑,JavaScript 对发送电子邮件没有任何帮助..
..也许它会帮助你这样想:
带有链接 (
<a>
) 的 HTML 页面,该链接引用您的 php 脚本:`<a href="email-script.php">Send Email</a>`
一个(单独的)PHP 脚本(
email-script.php
在上面的示例中调用),它使用许多邮件库(swiftmailer、phpmailer)之一来发送电子邮件。然后 php 脚本应该将用户返回到原始页面.. 并带有一条消息告诉用户他们的电子邮件已发送
有很多关于从 PHP 发送电子邮件的教程,上面的链接是带有示例代码的页面。