Контактная форма отправляет мне пустые письма - PullRequest
4 голосов
/ 26 апреля 2011

У меня есть эта контактная форма, которая работает хорошо.Если кто-то отправляет мне электронное письмо, я получаю его.Но по какой-то причине я продолжаю получать пустые письма, отправленные мне.Поскольку никто не мог получить доступ к этой странице, я уверен, что это не кто-то отправляет мне пустые электронные письма.Я не знаю, в чем проблема.Любая помощь?

   <form method="post" id="contactform" name="contactform" action="comment.php" id="ContactForm" name="ContactForm" method="post">

    <fieldset>

    <label>Email *</label>
    <input class="text" type="text" name="email">
    <label>Name *</label>
    <input class="text" type="text" name="name" />

    </fieldset>

    <input class="submit-button" type="submit" name="submit" id="submit" value="Send" />
</form>

and my contact.php

    <?php


    $email.= "<b>Email     : </b>".trim($_POST['company'])."<br/>";
    $email.= "<b>Name      : </b>".trim($_POST['name'])."<br/>";



    //Replace YourEmailAddress@Yourdomain.com with yours, eg:contactus@mywebsite.com
        //Both on the next line and on the mail function below.
    $headers = "From: email@email.com\r\n";
    $headers .= "Content-Type: text/html";
    mail(
            "Your Name<myname>", 
            "Header", 
            $email,
            $headers
    );
        header("www.google.com");
?>

часть "заголовка" в моей форме php заключается в перенаправлении пользователя на страницу после отправки формы.

Заранее спасибо.

Ответы [ 3 ]

6 голосов
/ 26 апреля 2011

Вы, вероятно, получаете посещения от ботов.Ваш скрипт всегда будет вызывать E-Mail, даже если данные POST отсутствуют.

В вашем контактном скрипте в качестве базовой меры защиты добавьте что-то вроде

if ($_POST["submit"] != "Send") 
 die();

и добавьте ещепроверка (как указано в комментариях) по мере необходимости.

3 голосов
/ 26 апреля 2011

Возможно, потому что вы не проверяете входные данные формы, поэтому она может быть отправлена ​​пустой.

Иногда я делаю это на веб-сайтах (проверка проверки, в конечном итоге отправка пустого электронного письма), но яЯ обычно добавляю сообщение позже «Подтвердить ваш ввод!».

Извините, если вы действительно проводите проверку, но это был мой инстинкт, потому что я вижу, что многие люди не могут проверить даже присутствие необходимого ввода, не говоря уже о целостности.

1 голос
/ 26 апреля 2011

Компания не существует в вашей форме, но вы пытаетесь ее проанализировать.

И, возможно, объявление формы 2 не очень хорошо, но это не ваш ответ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...