php - PHP 联系表单 - 基于选定表单值的动态电子邮件列表
问题描述
我需要将多个电子邮件地址动态添加到联系人表单发送的电子邮件的抄送:字段。抄送中的电子邮件:应根据选定的表单下拉值添加。表单中有多个下拉列表,每个值都分配有许多电子邮件。
电子邮件的收件人是一个自动打开工单的系统,因此收件人:字段将只有一个硬编码的电子邮件地址。但是基于其他值(平台和优先级),需要通知不同的利益相关者此电子邮件已发送到系统。例如:
<tr>
<td valign="top">
<label for="priority"> Priority:</label>
</td>
<td valign="top">
<select name="priority">
<option value="3">Normal</option>
<option value="2">High</option>
<option value="1">Critical</option>
</td>
</select>
</tr>
<tr>
<td valign="top">
<label for="platform">Platform:</label>
</td>
<td valign="top">
<select name="platform">
<option value="windows">Windows</option>
<option value="mac">MAC</option>
<option value="ios">iOS</option>
<option value="android">Android</option>
</td>
</select>
</tr>
如果priority=1 (email1,email2,email3) 和platform=windows (email4,email5),Cc: 字段应该有:email1,email2,email3,email4,email5。总共有 5 个下拉菜单,每个下拉菜单有 3 到 7 个值,因此硬编码所有组合是不合理的。
最好的方法是什么?是否最好为 Cc: 标头分配一个变量,然后让它从预定义的列表中获取电子邮件并将它们组合成一个字符串?
$to = 'email_address@mail.com' ;
$subject = strip_tags($_POST['subject']);
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= "From: ".$_POST['email']." \r\n";
$headers .= "Cc: ".$_POST['need to compose this part']." \r\n";
此外,是否最好将抄送:电子邮件列表保存在脚本之外,以便在不更改代码的情况下更改它们?
我很感激这方面的任何帮助。
解决方案
将您的电子邮件存储在两个数组中: - 第一个数组用于优先级 - 第二个数组用于平台
$arrPriority = array("email1 email2 email3", "email1 email2 email4", "email1 email3 email4");
$arrPlatform = array("windows" => "email5 email6", "mac" => "email5 email7", "ios" => "email6 email7", "android" => "email5 eamil6");
...
$headers .= "Cc: ".$arrPriority[$_POST['priority']]." ".$arrPlatform[$_POST['platform']]." \r\n";
发布您的优先级和平台将选择必要的电子邮件组合抄送:
推荐阅读
- php - PHPMailer & 表单到数据库
- apache-spark - 根据条件创建列并结转以前的值
- reactjs - 寻找简单的文件上传组件以编程方式访问 xlsx 内容?
- pyqt5 - 退出主窗口时关闭子窗口
- c# - 如何解决 Unity 中的错误 CS0201 以结束游戏?
- php - 使用 PHP、MySQL 和 jQuery (ajax) 的自动完成功能不起作用
- javascript - 如何清除firefox的缓存
- flutter - 如何在具有共享偏好的情况下保留自定义对象列表?
- json - 解析 JSON 对象后打印选定字段时出错
- docker - 如何使用自定义 Docker 映像运行 Python Google Cloud Dataflow 作业?