ფორმის გაგზავნა მონაცემთა ბაზაში და გადამისამართება 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();
}
?>
შექმენით ფორმა და რეალიზება მოახდინეთ მისი შენახვის მონაცემთა ბაზაში გაგზავნის შემდეგ. მოიშორეთ ორმაგი შენახვა გაგზავნის შემდეგ.