2012-02-02 2 views
1

Я создал форму HTML-контакта, которая подключается к базе данных MySQL, чтобы заполнить некоторые параметры в поле мультиселектора.Форма электронной почты для определенных адресов электронной почты на основе значений, выбранных в окне MultiSelect

Теперь мне нужно отправить электронное письмо определенным людям в зависимости от того, какие значения выбраны в поле MultiSelect. Но я не могу понять, как определить адреса электронной почты на основе выбора.

Это код, который я использовал для заполнения поля multiselect.

$sql="SELECT addr1, city, status FROM listings WHERE status<>'Hidden' "; 
$result=mysql_query($sql) or die(mysql_error()); 
$options=""; 

while ($row=mysql_fetch_array($result)) { 

    $addr1=$row["addr1"]; 
    $city=$row["city"]; 
    $status=$row["status"]; 
    $options.="<OPTION VALUE=\"$addr1\">".$addr1 . ', ' . $city . ' - ' . $status; 
} 

<select multiple name="unit" id="unit" size="10" validate="required:true, rangelength:[1,5]"> 
    <?=$options ?> 
</select> 

Моя структура базы данных выглядит следующим образом

addr1  city  status  manager 
address  somecity available  John Citizen 
addresstwo city2  not available Jack Citizen 
addressthree city3  available  Jill Citizen 

Так что, когда кто-то выбирает John Citizen и Джилл Citizen, электронная почта должна быть отправлена ​​этим двум людям. Мне также нужно будет объявить адреса электронной почты для этих двух людей через переменные PHP. Форма будет отправлена ​​с этим кодом. (Этот код находится в другом PHP файле, который вызывает форма действий)

mail($emailaddresses,$subject,$html,"From: [email protected]#####\r\nContent-type: text/html\r\n"); 

}

ли кто-нибудь может дать мне несколько советов? Я пробовал много вещей, но не могу заставить выбор работать правильно.

ответ

1

Дайте поле формы multiselect имени, которое заканчивается на [] (например, name = "unit []"). В PHP, когда вы отправляете форму, которая будет генерировать массив, который будет заполнен выбранными элементами ($ _POST («единица»)). Затем вы можете взорвать() массив, разделив адреса электронной почты запятой (или точкой с запятой), я никогда не помню, кто из них ограничивает электронную почту в функции php mail(). Затем просто отбросьте эту строку адреса в своем запросе mail().

Смежные вопросы