我有三个下拉列表 - 一组。
可在此处检查演示页:http://goo.gl/VqtTyM
通过以下代码创建:
<div class="multi-field">
<select class="text-one" name="destination[]">
<option selected value="base">Please Select</option>
<option value="colombo">Colombo</option>
<option value="kandy">Kandy</option>
<option value="anuradhapura">Anuradhapura</option>
</select>
<br />
<select class="text-two" name="attraction_or_activity[]">
<option value="attraction_or_activity">Select the attractions or activities</option>
<option value="attraction">Attraction</option>
<option value="activity">Activity</option>
</select>
<select class="populated_attr_or_activity" name="attraction_or_activity_selected[]">
<option value="available_attr_act">Available attractions / activities</option>
<!-- Here, available options will be populated -->
</select>
</div>
客人根据需要选择了该选项并提交表单后,我应该按照以下顺序将这些选择收到我的电子邮件中。
目的地(第一个下拉列表中的选定值):吸引力/活动(第二个下拉列表中的选定值):所选的可用吸引力/活动< / strong>(第3个下拉列表中的选定值)
点击添加更多(添加目的地)按钮,可以更加动态地添加这组下拉列表。 所以现在我使用以下代码来获取我的电子邮件。
<?php
if(empty($errors)){ // if the errors array is empty then send the mail
$headers = 'MIME-Version: 1.0' . "\r\n"; // adding support for HTML type email
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; // adding support for HTML type email
//print $tourist_name;
$msg = '';
$i = 1;
foreach ($_POST['destination'] as $key => $val) {
$msg .= ' <strong>' . $i++ . '. Destination : </strong>' . $val . ', <strong>Attraction/Activty : </strong>' . $_POST['attraction_or_activity'][$key] . '<br />';
};
$msg .= 'Name : ' .$tourist_name.'<br/>';
$msg .= 'E-mail : ' . $tourist_email.'<br/>';
$msg .= 'Country : ' .$tourist_country.'<br/>';
mail("myemail@gmail.com","Custom Tour Package",$msg, $headers);
}
?>
如上所示,我只使用'destination'和'attraction_or_activity'数组。 现在我的电子邮件正文如下:
1。目的地:科伦坡,吸引力/活动:吸引力
2。目的地:科伦坡,吸引力/活动:活动
第3。目的地:康提,吸引力/活动:吸引力
姓名:来宾姓名
电子邮件:guestEmail@gmail.com
国家:嘉宾国家
但我希望如何收到电子邮件如下:
1。目的地:科伦坡,景点/活动:吸引力精选景点/活动: Ganga Ramaya
2。目的地:科伦坡,吸引力/活动:活动所选景点/活动:城市之旅
第3。目的地:康提,景点/活动:吸引力所选景点/活动: Temple Tooth
姓名:来宾姓名
电子邮件:guestEmail@gmail.com
国家:嘉宾国家
我如何修改我的代码以获取上述预期的电子邮件?
如何将第3个下拉列表值包含在foreach
循环中?
答案 0 :(得分:1)
您只需要像attraction_or_activity_selected
那样获取attraction_or_activity
的值。尝试将foreach
内的代码更改为:
foreach ($_POST['destination'] as $key => $val) {
$msg .= ' <strong>' . $i++ . '. Destination : </strong>' . $val
. ', <strong>Attraction/Activty : </strong>' . $_POST['attraction_or_activity'][$key]
. ', <strong>Selected attraction/activity : </strong>' . $_POST['attraction_or_activity_selected'][$key]
. '<br />';
}