Форма обратной связи, отсылает сразу 3 письма

L
На сайте с 18.02.2012
Offline
83
935

Здравствуйте, проблемка небольшая, поставил форму, а она отсылает три письма сразу, в чем проблема понять не могу.


<form id="application" action=" forma/application.php" method="POST" name=" application">
<div class="inputko">
<label>Ваше имя</label></br>
<input type="text" id="applicationName" name="name" placeholder="Введите имя" />
</br>
<label>Ваше телефон</label></br>
<input name="telephone" type="Tel" id="applicationTelephone" placeholder="Введите телефон" />
</br><div style="clear:both; padding-bottom: 66px"></div>
<div class="zakazvonzak"><button type="submit" form="application">ЗАКАЗАТЬ ЗВОНОК</button></div>
</div>
</form>

application.php


<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Обратный звонок</title>
<meta http-equiv="Refresh" content="4; URL=/">
</head>
<body>

<?php

$sendto = "admin@vl-it.ru"; // почта, на которую будет приходить письмо
$username = $_POST['name']; // сохраняем в переменную данные полученные из поля c именем
$usertel = $_POST['telephone']; // сохраняем в переменную данные полученные из поля c телефонным номером

// Формирование заголовка письма
$subject = "Обратный звонок";
$headers = "From: " . strip_tags($usermail) . "\r\n";
$headers .= "Reply-To: ". strip_tags($usermail) . "\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html;charset=utf-8 \r\n";

// Формирование тела письма
$msg = "<html><body style='font-family:Arial,sans-serif;'>";
$msg .= "<h2 style='font-weight:bold;border-bottom:1px dotted #ccc;'>Обратный звонок</h2>\r\n";
$msg .= "<p><strong>Имя:</strong> ".$username."</p>\r\n";
$msg .= "<p><strong>Телефон:</strong> ".$usertel."</p>\r\n";
$msg .= "</body></html>";

// отправка сообщения
if(@mail($sendto, $subject, $msg, $headers)) {
echo "
<center>
Сообщение отправлено, в ближайшее время с вами свяжется менеджер.
</center>";
} else {
echo "<center>
Сообщение не отправлено, вышла ошибка, попробуйте отправить повторно через минут 5.
</center>";
}

?>

</body>
</html>
ishipilov
На сайте с 25.12.2011
Offline
101
#1

POST-данные тоже 3 раза высылаются? Или только 1?

Просто проблема может быть в том, что у вас стоит какой-нибудь плагин для браузера (у меня такое бывало с RDS-баром), который лишний раз загружает страницу. Зайдите с другого браузера чтобы это проверить.

Также попробуйте отправлять почту только при условии наличия post-переменной (заодно будет проверка заполнения формы).

if((!empty($_POST['name'])){

//здесь весь код обработчика
}

вместо ***91; и ***93; квадратные скобки

Mad_Man
На сайте с 10.11.2008
Offline
162
#2
l17l:
$usermail

А эта переменная вообще откуда взялась?

L
На сайте с 18.02.2012
Offline
83
#3

Все вопрос решил !

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий