Пытаюсь сделать простенькую форму для отправки и застрял на моменте обновления после отправки:
Всё действие делается на одной странице:
<html>
<head>
<title>Форма заявки с сайта</title>
</head>
<body>
<?php
//проверяем, существуют ли переменные в массиве POST
if(!isset($_POST['fio']) and !isset($_POST['email'])){
?> <form action="" method="post">
<input type="text" name="fio" placeholder="Укажите ФИО" required>
<input type="text" name="email" placeholder="Укажите e-mail" required>
<input type="submit" value="Отправить">
</form> <?php
} else {
//показываем форму
$fio = $_POST['fio'];
$email = $_POST['email'];
$fio = htmlspecialchars($fio);
$email = htmlspecialchars($email);
$fio = urldecode($fio);
$email = urldecode($email);
$fio = trim($fio);
$email = trim($email);
if (mail("мыло@yandex.ru", "Заявка с сайта", "ФИО:".$fio.". E-mail: ".$email ,"From: Хороший сайт <info@хороший сайт.ru> \r\n")){
echo "Сообщение успешно отправлено";
} else {
echo "При отправке сообщения возникли ошибки";
}
}
?>
</body>
</html>
Собственно, всё отправляется, выводиться сообщение на этой же странице, но если потом обновить, то заново письмо отправляется с этими данными.
Как мне сделать, чтобы после отправки страница просто обновлялась с сообщением и чистой формой. Можно даже без сообщения, чтобы просто отправилось и была чистая форма?
В PHP ещё не силен, поэтому прошу подсказать. На самом деле задача по возможности сделать отправку без перезагрузки страницы, но мне хотя бы этот момент надо понять сначала. Заранее благодарю!