HTML — Основная проблема почты php: пустые переменные

У меня странная проблема: тот же скрипт работает на другом сайте, который я создал, но не на моем текущем.
Сценарий php ссылается на HTML-страницу (форму отправки), и я просто хочу отправить ее по электронной почте. Вот HTML-код:

<form class="form-horizontal" action="invio_mail.php">

<div class="form-group">
<label for="indirizzo">Indirizzo attivazione</label>
<input id="indirizzo" name="indirizzo" type="text" class="form-control" placeholder="Via Roma, 15" required autofocus>
</div>

<div class="form-group">
<label for="modem">Tipo di modem</label>
<select id="modem" name="modem" class="form-control">
<option>Indoor</option>
<option>Outdoor</option>
</select>
</div>
....
<input name="submit" class="btn btn-lg btn-primary btn-block" type="submit" value="Invia">

А вот и сценарий:

    <?php
$mailto = '[email protected]';
$subject = 'Form';

$error_message = 'Wooops! Something goes wrong.';
$success_message = '<strong><em>SENT!</em></strong>';

$indirizzo = $_POST['indirizzo'];
$modem = $_POST['modem'];
$consegna = $_POST['consegna'];
$nome = $_POST['nome'];
$cognome = $_POST['cognome'];
$dob = $_POST['dob'];
$paese = $_POST['paese'];
$citta = $_POST['citta'];
$codice_fiscale = $_POST['codice_fiscale'];
$cellulare = $_POST['cellulare'];
$documento = $_POST['documento'];
$scadenza_doc = $_POST['scadenza_doc'];
$rilascio_doc = $_POST['rilascio_doc'];
$email = $_POST['email'];
$note = $_POST['note'];

$message = "The following variables has been registered: $indirizzo $modem $consegna $nome $cognome $dob $paese $citta $codice_fiscale $cellulare $documento $scadenza_doc $rilascio_doc $email $note";
$headers = "Da: " . "X-Mailer: PHP/" . phpversion();

if (mail($mailto, $subject, $message, $headers)) {
echo("<br>$success_message <br><br><br>");

;
} else {
echo($error_message);
}
?>

Я получаю почту, но она не отображает мои переменные! Я не знаю почему, и я схожу с ума.
Сообщение только «Следующие переменные были зарегистрированы», за которым ничего не стоит .. я что-то упустил в синтаксисе?
У меня на старом сайте работает нормально.

Спасибо всем за терпение.

-1

Решение

Комментарий CodeCaster верный, ваша форма делает запрос через HTTP GET метод — это значение по умолчанию, если вы не указали method атрибут в вашей форме. Но ваш PHP ожидает найти переменные в массиве $ _POST, который заполняется, только если запрос сделан с использованием HTTP POST метод.

Решение очень простое — сообщите вашей форме, какой метод использовать:

<form class="form-horizontal" action="invio_mail.php" method="POST">
0

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

Других решений пока нет …

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