Адпраўка формы ў БД і рэдырэкт у PHP
Няхай у нас ёсць нейкая форма:
<form method="POST">
<input name="test1">
<input name="test2">
<input type="submit">
</form>
Давайце захаваем дадзеныя гэтай формы ў базу:
<?php
if (!empty($_POST)) {
// захоўваем у базу
}
?>
Тут, аднак, нас падпільноўвае праблема: калі абнавіць старонку браўзера, то форма будзе адпраўлена і захавана яшчэ раз, што прывядзе да дубля дадзеных.
Для вырашэння праблемы потым пасля захавання формы трэба выканаць рэдырэкт на гэтую ж старонку:
<?php
if (!empty($_POST)) {
// захоўваем у базу
header('Location: form.php');
die();
}
?>
Зрабіце форму і рэалізуйце яе захаванне ў БД пасля адпраўкі. Пазбаўцеся ад падвойнага захавання пасля адпраўкі.