Возможный дубликат:
Как остановить форму отправки почты больше раз после первоначального успеха.
Прежде всего, я структурировал свой сайт, используя каталоги. Таким образом, в основном каждая страница является каталогом и в этом каталоге, у меня есть файл index.php.
У меня есть четыре формы контакта на моем сайте, и на данный момент кажется, что все работают с использованием файла hnadler.php. Файл обработчика проверяет данные, проверяет отправленный идентификатор формы и основывается на этом, он правильно направляет электронное письмо. При успешном отправке отображается сообщение об успешном завершении. Однако моя текущая модификация ошибочна в том, что если пользователь обновляется, отправляется другая почта. Как я могу решить это с помощью моего существующего кода? спасибо
//handler.php <?php if(isset($_POST['submit'])) { //carry out validation if(!isset($hasError)) { //check the form id posted and set email address in $emailTo accordingly $body = "Name: $name \n\nEmail: $email \n\nEnquiry: $enquiry"; $headers = 'From: My Site <'.$emailTo.'>' . "\r\n" . 'Reply-To: ' . $email; mail($emailTo, $subject, $body, $headers); $emailSent = true; } } //index.php <?php if(isset($hasError)) { ?> <p class="error">Please make sure you have filled all fields with valid information. Thank you.</p> <?php } ?> <?php if(isset($emailSent) && $emailSent == true) { ?> <p><strong>Your enquiry was sent successfully.</strong></p> <p>Thank you for your enquiry! Your email was successfully sent and we will be in touch with you promptly.</p> <?php }; ?> <form id="contactform" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"> <fieldset> <legend>Enquiry form</legend> <label for="name">Name:</label><input type="text" size="50" name="name" id="name" value="" class="required" /> <label for="email">Email:</label><input type="text" size="50" name="email" id="email" value="" class="required email" /> <label for="enquiry">Enquiry:</label><textarea rows="5" cols="20" name="enquiry" id="enquiry" class="required"></textarea> <input type="submit" name="submit" value="Submit enquiry" class="curved-btn"></input> <input type="hidden" id="form-id" name="form-id" value="general"></input> </fieldset> </form> ?>