Twitter начальной загрузки — опция выбора поста Переполнение стека

Я не могу понять, как POST выбрать параметры. Форма отправляет пустые значения для поля контакта (опция). Я знаю, что selected_val неверен, но не уверен, как исправить.

Форма отправляет нормально, но контакт возвращает пустое значение. Может кто-нибудь помочь с тем, как исправить PHP.

Вот PHP

<?php
if (isset($_POST["submit"])) {
$name = $_POST['name'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$city = $_POST['city'];
$selected_val = $_POST['contact']; "You have selected :" .$selected_val;
$message = $_POST['message'];
$from = 'From your website';
$to = 'somedomain.com';
$subject = 'Visitor Inquiry';

$body = "From: $name\n E-Mail: $email\n Phone: $phone\nCity: $city\nContact: $contact\nMessage: $message";

// Check if name has been entered
if (!$_POST['name']) {
$errName = 'Please enter your name';
}

// Check if email has been entered and is valid
if (!$_POST['email'] || !filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
$errEmail = 'Please enter a valid email address';
}

// Check if business has been entered
if (!$_POST['company']) {
$errBusiness = 'Please enter your business or organization name';
}

// Check if phone has been entered
if (!$_POST['phone']) {
$errPhone = 'Please enter your phone number';
}

// Check if phone has been entered
if (!$_POST['phone']) {
$errPhone = 'Please enter the name of your city';
}

//Check if message has been entered
if (!$_POST['message']) {
$errMessage = 'Please enter your message';
}

// If there are no errors, send the email
if (!$errName && !$errEmail && !$errMessage) {
if (mail ($to, $subject, $body, $from)) {
$result='<div class="alert alert-success">Thank You!
We will be in touch soon.</div>';
} else {
$result='<div class="alert alert-danger">Sorry there was an error sending your message. Please try again later.</div>';
}
}
}
?>

HTML

<form class="form-horizontal form-elements" role="form" method="post" action="services-form.php">
<div class="col-md-8 col-md-offset-2">
<label for="contact">Contact preference</label>
<select class="form-control" id="contact" name="contact">
<option>Email</option>
<option>Phone</option>
</select>
</div>
</form>

1

Решение

Атрибут значения отсутствует. Должно быть так

<select class="form-control" id="contact" name="contact">
<option>select</option>
<option value="email">Email</option>
<option value="phone">Phone</option>
</select>
3

Другие решения

Тебе нужно value на теги опций.

<option value="email">Email</option>
<option value="phone">Phone</option>

И я не вижу никакого входного имени submit в вашем HTML

if( isset($_POST["submit"]) ) {

Если так, то это даже не входит в ваш код.

Также эта строка вашего PHP-кода ничего не делает.

"You have selected :" .$selected_val;

должно быть

print "You have selected :" .$selected_val;

или же

echo "You have selected :" .$selected_val;
1

По вопросам рекламы [email protected]