- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在创建一个表单,用于将电子邮件发送到输入其中的电子邮件。我已经在我的服务器上安装了 PHP 邮件程序。
当我希望它们看起来像这样时,所有发送的电子邮件都是通过托管服务器发送的。
就像在域上发送的任何其他电子邮件一样,它们应该由 domain.com
而不是服务器发送。
我只是对此进行测试,因此使用一个简单的表单作为概念证明。
<form method="post" name="process.php" action="process.php">
<p>Name:</p><br><input type="text" name="name"><br><br>
<p>Email Address:</p><br><input type="text" name="email"><br><br>
<br>
<input type="submit" value="Send Email">
</form>
然后我使用这个 PHP 发送电子邮件:
<?php
$name = $_POST['name'];
$email = $_POST['email'];
use PHPMailer\PHPMailer\PHPMailer;
require 'vendor/autoload.php';
$mail = new PHPMailer;
$mail->isSMTP();
$mail->SMTPDebug = 2;
$mail->Host = 'smtp.hostinger.com';
$mail->Port = 587;
$mail->SMTPAuth = true;
$mail->Username = 'noreply@domain.com';
$mail->Password = 'password';
$email_from = "noreply@domain.com";
$email_subject = "Test Email";
$to = $email;
$headers = "From: noreply@domain.com \r\n";
$headers .= "Bcc: noreply@domain.com \r\n";
$headers .= "Reply-To: me@domain.com \r\n";
$headers .= "Content-Type: text/html; charset=UTF-8\r\n";
$email_body = <<<EOM
<p color="#000000">Hello, $name.<br><br> This is a test email for mailing from the domain rather than the server.<br><br> </p>
EOM
;
mail($to, $email_subject, $email_body, $headers);
?>
基本上,我希望通过我的域邮寄 PHP 电子邮件,但我不知道如何执行此操作,因此将不胜感激,我的虚拟主机似乎无法帮助我解决此问题。
提前致谢。
更新
此表单代码。
<h1>The email gets sent to a bookings address.</h1>
<form method="post" name="process.php" action="process.php">
<p class= "whitetextsubsmall">Name:</p><br><input type="text" name="name"><br><br>
<p class= "whitetextsubsmall">Email Address:</p><br><input type="text" name="email"><br><br>
<br>
<input type="submit" value="Send Email">
</form>
process.php
<?php
$name = $_POST['name'];
$email = $_POST['email'];
use PHPMailer\PHPMailer\PHPMailer;
require 'vendor/autoload.php';
$mail = new PHPMailer;
$mail->isSMTP();
$mail->SMTPDebug = 2;
$mail->Host = 'smtp.hostinger.com';
$mail->Port = 587;
$mail->SMTPAuth = true;
$mail->Username = 'noreply@domain.com'; /* This is the sender of the bookings. */
$mail->Password = 'password';
$mail->setFrom('noreply@domain.com');
$mail->addAddress('bookings@domain.com', 'Company Bookings');
$mail->addReplyTo($email, $name); /* Reply to the user who submitted the form from the bookings email. */
$mail->Subject = 'Booking Request Test';
$mail->isHTML(TRUE);
$mail->Body = 'Message test <br> Booking Request from: $name <br><br> Email: $email.';
if(!$mail->send()) {
echo 'Message was not sent.';
echo 'Mailer error: ' . $mail->ErrorInfo;
} else {
echo 'Message has been sent.';
}
?>
最佳答案
您正在混合使用 PHPMailer 语法和 PHP mail() 语法。
对于 PHPMailer,请在您的代码中使用以下内容。
<?php
$name = $_POST['name'];
$email = $_POST['email'];
use PHPMailer\PHPMailer\PHPMailer;
require 'vendor/autoload.php';
$mail = new PHPMailer;
$mail->isSMTP();
$mail->SMTPDebug = 2;
$mail->Host = 'smtp.hostinger.com';
$mail->Port = 587;
$mail->SMTPAuth = true;
$mail->Username = 'noreply@domain.com';
$mail->Password = 'password';
/* Set the mail sender. */
$mail->setFrom($email, $name);
/* Add a recipient. */
$mail->addAddress('noreply@domain.com', 'earningtoanimate');
/* Add a replyto. */
$mail->addReplyTo($email, $name);
/* Add a CC and Bcc. */
$mail->addCC('noreply2@domain.com', 'earningtoanimate2');
$mail->addBCC('noreply3@domain.com', 'earningtoanimate3');
/* Add email subject. */
$mail->Subject = 'Test Email';
/* Add email body. */
$mail->isHTML(TRUE);
$mail->Body = 'There goes your message.';
/* Finally send the mail. */
if(!$mail->send()) {
echo 'Message was not sent.';
echo 'Mailer error: ' . $mail->ErrorInfo;
} else {
echo 'Message has been sent.';
}
测试以上内容并提供您的反馈。注意,我没有测试代码。只是将它们写在这里,以便在需要时进行一些编辑。
如需进一步阅读,请访问 PHPMailer documentation
关于使用 PHP Mailer 发送 PHP 电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57780542/
我有一个 Rails 邮件程序,目前只要用户回复另一个用户的评论,它就会成功发送电子邮件。 (电子邮件发送给被回复的人)。我正在尝试在电子邮件正文中添加一些动态内容,例如回复者的用户名和该用户的评论本
这是我的代码: require 'phpmailertesting/PHPMailerAutoload.php'; $mail = new PHPMailer; //$mail->SMTPDebug
我想获得有关在/etc/aliases 上运行脚本的问题的任何建议。首先,这是我的环境/脚本。 操作系统:centos 6 脚本:python 2.6.6 邮件:sendmail-8.14/dovec
当我在 Rails3 中使用 ActionMailer 时,我试图更好地理解良好的设计模式(如果它有所不同,则为 3.1)。 一般而言,对于 Rails 应用程序,我通常为整个应用程序创建一个邮件程序
我们能否在 PHP 邮件程序中将消息编译并存储为草稿,然后再发送每条消息? 最佳答案 用 PHPMailer 可以做到这一点。在用发送消息通常需要的所有内容配置 PHPMailer 实例后,不要调用
有没有办法将回调函数传递给 Laravel 的邮件程序? 我正在将 Mail 外观与可邮寄类一起使用,该类正在发送附件。我想在发送电子邮件后删除附件形式的存储。 电子邮件作业正在排队 Mail::to
我正在从 nagios 切换到 sensu。我正在使用厨师来自动化这个过程。一切都很好,除了邮件程序,或者实际上,我将它缩小到“管道”,它应该将 json 输出从支票重定向到处理程序。它没有。当我使用
我正在创建一个预订表格作为帮助,但我决定通过域而不是服务器发送邮件。这主要是为了提高安全性并减少响应和数据传输的限制。 过去几天我一直在研究这个,并试图自学如何让它发挥作用。我现在有一个非常简单的工作
这个问题不太可能对任何 future 的访客有帮助;它只与一个小的地理区域、一个特定的时间点或一个非常狭窄的情况相关,通常不适用于互联网的全局受众。如需帮助使这个问题更广泛适用,visit the h
我正在尝试使用 the Mailer Plugin在我的戏里! 2 Java 应用程序。 我按照自述文件中的说明进行操作,但该模块未显示在我的应用程序的依赖项中。 所以当我尝试编译它时 Play !给
我想在电子邮件正文中包含使用 foreach 的结果。当我添加 foreach 语句时,PHP Mailer 似乎只是切断了消息。关于如何在消息正文中包含多个结果有什么想法吗? $mail->Body
我想利用现有的Mailer来自 Jenkins 的插件位于定义管道构建作业的 Jenkinsfile 中。鉴于以下简单的失败脚本,我希望每次构建都会收到一封电子邮件。 stage 'Test' nod
有没有办法拦截对 Play Mailer class 的调用? 我想记录我的应用程序发送的所有电子邮件。我想访问邮件程序方法参数和方法名称,并记录所有这些。 我尝试过使用@With,但我的@Befor
PHP 邮件程序一次发送两封电子邮件,我尝试不循环发送它,只发送一封电子邮件,但结果相同 我在 stackoverflow 上找到了这个但是没有改变任何东西 $mail->SingleTo = tru
我已关注installation steps由django-mailer的存储库提供者提供 但是当我尝试 ./manage.py test mailer 命令时 或./manage.py send_m
首先,我看到了这个问题:Send mail without blocking 'execution' 但是,我需要知道为什么 PHP 不是多线程进程,但如果两个人同时尝试连接却没有问题。 我实际上是通
我正在从数据库表中提取电子邮件地址并遍历它们以发送电子邮件。如果我注释掉 $mailer->send($message); 行,则会发送一封电子邮件,但只发送到表中的最后一行。如果我保留该行,电子邮件
我在下面有以下代码,需要测试在用户被暂停时发送电子邮件。 def suspendClient(client: Client, event: Event): EventResult = {
我最近加入了一个项目,其中每个客户都有自己的自定义 HTML 内容,用于发送给他们客户的电子邮件。 它通过将内容插入带有自定义标签的字符串,然后通过在邮件程序中设置 body 属性来发送,如下所示:
如何在java imap中获取x-mail?我已经编写了一个示例程序,但它运行不正常。我得到空值。我哪里出错了? import com.sun.mail.imap.IMAPFolder; im
我是一名优秀的程序员,十分优秀!