Я искал здесь и, похоже, не нашел удовлетворительного решения, поэтому задаю вопрос.Одностраничная контактная форма, перенаправление на форму после отправки и предотвращения повторной отправки на странице обновления
У меня есть сайт на одной странице с формой, которая работает в отношении отправки на правильный адрес электронной почты и отображения правильного эхо-заголовка результата; но при тестировании каждый раз, когда я обновляю страницу, которую отправляет сообщение, в дополнение к этому я хотел бы, чтобы порт просмотра браузера отображал форму контакта после нажатия кнопки отправки, чтобы пользователь мог видеть форму, отправленную или Сообщения об ошибках.
Это мой код ...
<?php
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$from = $_POST['email'];
$to = '[email protected]**************.com';
$subject = 'New enquiry from website';
$human = $_POST['human'];
$body = "From: $name\n E-Mail: $email\n Message:\n $message";
if ($_POST['submit'] && $human == '4') {
if (mail ($to, $subject, $body, $from)) {
echo '<p class="emailSent">Thanks. Your message has been sent! We will be in touch shortly.</p>';
} else {
echo '<p class="errorMessage">Something went wrong, go back and try again!</p>';
}
} else if ($_POST['submit'] && $human != '4') {
echo '<p class="errorMessage">You answered the anti-spam question incorrectly. Please try again.</p>';
}
?>
<div class="large-6 medium-6 small-12 columns form-left">
<form class="footer-form" method="post" action="index.php">
<div class="row">
<div class="medium-9 medium-push-3 columns">
<label>
<input name="name" type="name" id="name" value="" placeholder="Your name" />
</label>
</div>
</div>
<div class="row">
<div class="medium-9 medium-push-3 columns">
<label>
<input name="email" type="email" id="email" value="" placeholder="Email Address" />
</label>
</div>
</div>
<div class="row">
<div class="medium-9 medium-push-3 columns">
<label>
<textarea name="message" id="message" placeholder="Your enquiry"></textarea>
</label>
</div>
</div>
<div class="row">
<div class="medium-9 medium-push-3 columns">
<label>*What is 2+2? (Anti-spam)</label>
<input name="human" id="name" placeholder="Type Here">
</div>
</div>
<div class="row">
<div class="medium-9 medium-push-3 columns">
<button class="submit contact-button" id="name" name="submit" type="submit" value="Send email">Send</button>
</div>
</div>
</form>
</div>
Я бы очень признателен за помощь по этому вопросу.
Спасибо.
Марк
https: //en.wikipedia.org/wiki/Post/Redirect/Get - объединить это с якорем и хешем в форме action/URL, которая перенаправляется и выполняется. – CBroe