php - 想向填写表格的人发送电子邮件,并向网站管理员发送一封电子邮件以回复客户
问题描述
想向填写表格的人发送电子邮件,并向网站管理员发送一封电子邮件以回复客户。代码正确发送给填写表格的人,但没有发送给管理员。请参阅下面的代码。
<?php
$EmailFrom = "jason@mysite.com";
$EmailTo = stripslashes($_POST['email']);
$Subject = stripslashes($_POST['subject']);
$Name = Trim(stripslashes($_POST['author']));
$Email = Trim(stripslashes($_POST['email']));
$Message = Trim(stripslashes($_POST['message']));
// validation
$validationOK=true;
if (!$validationOK) {
print "<meta http-equiv=\"refresh\" content=\"0;URL=error.htm\">";
exit;
}
// prepare email body text
$Body = '';
$Body .= "Thank you for contacting us! One of our staff will contact you soon.";
$Body .= "\n";
$Body .= "\n";
$Body .= "";
$Body .= "\n";
$Body .= "\n";
$Body .= "----------------------------";
$Body .= "\n";
$Body .= "Subject: ";
$Body .= $Subject;
$Body .= "\n";
$Body .= "Name: ";
$Body .= $Name;
$Body .= "\n";
$Body .= "Email: ";
$Body .= $Email;
$Body .= "\n";
$Body .= "\n";
$Body .= "Message: ";
$Body .= $Message;
$Body .= "\n";
ini_set($EmailFrom, $EmailTo);
// send email
$success = mail($EmailTo, $Subject, $Body, 'From: ' . $EmailFrom);
// redirect to success page
if ($success){
echo "Thank you for contacting us!";
}
else{
echo "Please Try Again.";
}
?>
解决方案
这没有做任何有用的事情:
ini_set($EmailFrom, $EmailTo);
所以不要这么叫。如果您想发送两条消息(而不是同一条消息的 2 个副本),请mail()
使用不同的收件人地址再次调用(假设您$EmailFrom
的地址是管理员的地址):
$success = mail($EmailFrom, $Subject, $Body, 'From: ' . $EmailFrom);
也就是说,您最好查看您标记此问题的PHPMailer,因为这样可以更轻松地安全地发送给多个收件人。
推荐阅读
- javascript - 如何让导入/导出适用于 chrome 浏览器?
- postgresql - 在 docker compose 中使用 pg_restore 恢复数据库时出错
- python - pygame.display.update() 不能正常工作
- lisp - 哈希表的随机访问
- c++ - 模拟复制构造函数的 C++ 类
- asp.net-core - 邮差。多部分/表单数据问题(415 不受支持的媒体类型)
- flutter - 之间的颤动行小部件空间不起作用。我怎样才能解决这个问题?
- d3.js - 为什么 d3-geo-zoom 不能正确平移页面上超过 1 个画布元素?
- python - 极小极大递归超时
- python - 我要打印的图案是颠倒的