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();
}
?>
Форма ясанг ва уни юборилгандан сўнг БДга сақлашни амалга оширинг. Юборилгандан сўнг қайта сақланишдан холи бўлинг.