Мне нужна веб-форма html, которая вычисляет результат в соответствии с выбором пользователя (каждый параметр имеет определенное значение), и я хочу показать пользователю результат и отправить мне по электронной почте варианты, которые пользователь выбрал.
Первая часть, которую я получил, и она работает нормально, но я не могу сделать сценарий для отправки мне информации по почте.
Это пример моей HTML-формы :
1. Place
<select name="place[]">
<option value="zone1">You´re in Zone 1</option>
<option value="zone2">You´re in Zone 2</option>
<option value="zone3">You´re in Zone 3</option>
</select>
1. Role
<select name="role[]">
<option value="role1">You have Role 1</option>
<option value="role2">You have Role 2</option>
<option value="role3">You have Role 3</option>
</select>
Это пример php-кода, который я использую для суммирования значений в соответствии с тем, что выбрал пользователь (у меня больше значений в форме):
$place = array (
"zone1" => 10,
"zone2" => 20,
"zone3" => 30,
);
$role = array (
"role1" => 1,
"role2" => 2,
"role3" => 3,
);
Затем я создаю переменную для каждой опции:
$user_place = array();
$user_role = array();
Теперь я говорю только использовать информацию в соответствии с тем, что ввел пользователь:
if(is_array($_POST['place']))
{
foreach( $_POST['place'] as $k => $v )
{
if( isset($place[ $v ]) )
$user_place [] = $place[ $v ];
}
}
if(is_array($_POST['role']))
{
foreach( $_POST['role'] as $k => $v )
{
if( isset($role[ $v ]) )
$user_role [] = $role[ $v ];
}
}
Я создаю новую переменную, где каждая равна значению, назначенному этой переменной по умолчанию, в соответствии с выбором пользователя:
$place_sum = array_sum($user_place);
$role_sum = array_sum($user_role);
Я суммирую их всех:
$total = $place_sum + $role_sum;
echo $total;
Теперь я хочу присылать себе опции каждый раз, когда пользователь заполняет форму:
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$to = 'mymail@gmail.com';
$subject = 'USER RESULTS '.date("m/d/Y h:m:s");
Сейчас я попробовал:
$message = $user_place;
$message = $user_role;
А это:
$message = join(', ', $_POST['place']);
$message = join(', ', $_POST['role']);
И это:
$message = $_REQUEST['place'];
$message = $_POST['role'];
mail($to, $subject, $message);
}
И вот моя проблема: ни один из этих вариантов не дает мне результатов. Все, что я получаю, это пустое электронное письмо, а сообщение $ не отправляется по почте.