@twentytvvo

Почему отправка формы через php воспроизводится бесконечно?

Создал страничку где уведомленно что письмо отправленно и снипетом подключил данный код для POST оптравки 2х писем, клиенту и админу. В итоге получил на почту около 200 одинаковых писем, пока не вырезал тот код.
В чем проблема?)
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $headers = array(
        'From: r0bot.com.ua <info@r0bot.com.ua>',
        'content-type: text/html',
    );
    $to=$_POST['email'];
    $subject="Коммерческое предложение по ИТ-сопровождению от ROBOT";
    if ($_POST['voip']=="on") {$voip="Да";} else {$voip="Нет";}
    if ($_POST['camera']=="on") {$camera="Да";} else {$camera="Нет";}
    $messages="<p><b>Здравствуйте!</b></p> <p>Спасибо, что воспользовались нашим сайтом для получения коммерческого предложения по ИТ-сопровождению Вашей компании.</p>
<p><b>Обслуживание:</b>
<br>".$_POST['works-calc']." компьютеров
<br>".$_POST['servers-calc']." серверов
<br>".$_POST['mobile-calc']." мобильных устройств
<br>".$voip." - цифровая телефония
<br>".$camera." - видеонаблюдение
</p>
<p><b>Включено:</b>
<br>Да - Поддержка сканеров и принтеров
<br>Да - Антивирусное обслуживание
<br>Да - Резервное копирование данных
<br>Да - Онлайн мониторинг серверов
<br>Да - Поддержка Lan, WiFi, интернет
<br>Да - Аппаратное сопровождение
<br>Да - Сопровождение корпоративной почты
</p>
<p>Стоимость: <b>".$_POST['result-calc']." грн</b></p>

<p>Свяжитесь с нами для формирования индивидуального плана ИТ поддержки, так как стоимость может отличаться как в большую, так и меньшую сторону в зависимости от Ваших требований и запросов.</p> 
<p>Хорошего Вам дня. 
<br>
<br>-- 
<br>С уважением,
<br>
<br>Чеботько Глеб
<br>Коммерческий директор
<br>IT-company. Robot 
<br>
<br>Моб.: +380 (93) 486 75 05
<br>Тел.: +380 (44) 227 29 59
<br>mrsabot@r0bot.com.ua
<br>http://r0bot.com.ua
<br></p>
<br>ROBOT. Semper Fidelis
<br>- обслуживание компьютеров и серверов;
<br>- обслуживание 1С;
<br>- сайты и продвижение;
<br>- IP телефония;
<br>- информационная безопасность.";

    $messages2="<p><b>Здравствуйте</b>, клиент получил коммерческое предложения по ИТ сопровождению на email адрес ".$to.".</p>
<p><b>ДЕТАЛИ:</b>
<br>
<p><b>Обслуживание:</b>
<br>".$_POST['works-calc']." компьютеров
<br>".$_POST['servers-calc']." серверов
<br>".$_POST['mobile-calc']." мобильных устройств
<br>".$voip." - цифровая телефония
<br>".$camera." - видеонаблюдение
</p>
<p><b>Включено:</b>
<br>Да - Поддержка сканеров и принтеров
<br>Да - Антивирусное обслуживание
<br>Да - Резервное копирование данных
<br>Да - Онлайн мониторинг серверов
<br>Да - Поддержка Lan, WiFi, интернет
<br>Да - Аппаратное сопровождение
<br>Да - Сопровождение корпоративной почты
</p>
<p>Стоимость: ".$_POST['result-calc']." грн</p>";
    $to2 = get_option('admin_email');
    wp_mail( $to, $subject, $messages, $headers );
    wp_mail( $to2, $subject, $messages2, $headers );
}
  • Вопрос задан
  • 85 просмотров
Решения вопроса 1
@entermix
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// ...
}

Потому, что на станицу может прилетать множество всяких запросов, в том числе и POST-запросы, но это не значит, что кто-то отправил форму.

Вывод - нужно проверять входящие запросы

if (isset($_POST['submit'])){
// ...
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы