Нависозии сабти дар пойгоҳи додаҳо дар PHP
Акнун биёед нависозии корбарро татбиқ кунем.
Барои ин ба ду саҳифа ниёз дорем: саҳифаи
edit.php, ки дар он форм барои нависозии
корбар ҷойгир карда мешавад, ва саҳифаи
save.php, ки ба он форм барои нигоҳдорӣ
дар навбат фиристода мешавад.
Саҳифаи нависозӣ
Аввалан дар саҳифаи edit.php форм созем:
<form action="" method="POST">
<input name="name">
<input name="age">
<input name="salary">
<input type="submit">
</form>
Мо дар ин форм додаҳои ҷорӣ аз корбарро аз
пойгоҳи додаҳо бор мекунем. Бигзор id
корбар барои нависозӣ дар параметри GET
интиқол дода шавад:
<?php
$id = $_GET['id'];
?>
Дархости ба даст овардани корбарро тартиб медиҳем:
<?php
$query = "SELECT * FROM users WHERE id=$id";
?>
Дархостро иҷро кунем:
<?php
$result = mysqli_query($link, $query) or die(mysqli_error($link));
?>
Додаҳои корбарро ба тағирёбанда мегирем:
<?php
$user = mysqli_fetch_assoc($result);
?>
Ин додаҳоро дар форми мо бармегардонем:
<form method="POST">
<input name="name" value="<?= $user['name'] ?>">
<input name="age" value="<?= $user['age'] ?>">
<input name="salary" value="<?= $user['salary'] ?>">
<input type="submit">
</form>
action формро тағир медиҳем, то ки он
ба саҳифаи save.php фиристода шавад:
<form action="save.php" method="POST">
Дар ин ҳол параметри GET-ро барои интиқоли
id корбар барои нависозӣ истифода мебарем:
<form action="save.php?id=<?= $_GET['id'] ?>" method="POST">
Саҳифаи нигоҳдорӣ
Дар саҳифаи save.php додаҳои фиристодашударо
мегирем:
<?php
$id = $_GET['id'];
$name = $_POST['name'];
$age = $_POST['age'];
$salary = $_POST['salary'];
?>
Дархости навсозиро тартиб медиҳем:
<?php
$query = "UPDATE users SET
name='$name', age='$age', salary='$salary'
WHERE id=$id";
?>
Дархостро иҷро мекунем:
<?php
mysqli_query($link, $query) or die(mysqli_error($link));
?>
Пайомади амалиётро дар бораи муваффақият мебарорем:
<?php
echo 'Корбар бомуваффақият тағир дода шуд!';
?>
Масъалаҳои амалӣ
Саҳифаи edit.php-ро барои нависозии
корбар татбиқ кунед.
Саҳифаи save.php-ро барои нигоҳдории
натиҷаи нависозӣ татбиқ кунед.
Дар саҳифаи index.php рӯйхати корбаронро
ба экран баргардонед, то барои ҳар як
корбар истиноди барои нависозии он вуҷуд дошта бошад:
<ul>
<li>user1 <a href="?edit=1">edit</a></li>
<li>user2 <a href="?edit=2">edit</a></li>
<li>user3 <a href="?edit=3">edit</a></li>
</ul>
Коркарди формро дар саҳифаи edit.php татбиқ кунед.