Redigering van 'n rekord in die databasis op PHP
Laat ons nou die redigering van die gebruiker implementeer.
Vir dit sal ons twee bladsye nodig hê: die bladsy
edit.php, waar die vorm vir die redigering van die gebruiker geplaas sal word, en die bladsy
save.php, waarheen die vorm gestuur sal word vir daaropvolgende berging.
Redigeringsbladsy
Eerstens, laat ons 'n vorm op die bladsy edit.php maak:
<form action="" method="POST">
<input name="name">
<input name="age">
<input name="salary">
<input type="submit">
</form>
In hierdie vorm sal ons die huidige data van die gebruiker uit die databasis laai. Laat die id van die gebruiker
vir redigering in die GET parameter oorgedra word:
<?php
$id = $_GET['id'];
?>
Laat ons 'n navraag om die gebruiker te kry vorm:
<?php
$query = "SELECT * FROM users WHERE id=$id";
?>
Laat ons die navraag uitvoer:
<?php
$result = mysqli_query($link, $query) or die(mysqli_error($link));
?>
Laat ons die gebruiker se data in 'n veranderlike kry:
<?php
$user = mysqli_fetch_assoc($result);
?>
Laat ons hierdie data in ons vorm uitskryf:
<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>
Laat ons die action van die vorm verander sodat dit
na die bladsy save.php gestuur word:
<form action="save.php" method="POST">
Terselfdertyd sal ons die id van die gebruiker vir redigering as 'n GET parameter oordra:
<form action="save.php?id=<?= $_GET['id'] ?>" method="POST">
Bergingsbladsy
Op die bladsy save.php sal ons die gestuurde data kry:
<?php
$id = $_GET['id'];
$name = $_POST['name'];
$age = $_POST['age'];
$salary = $_POST['salary'];
?>
Laat ons 'n navraag vir opdatering vorm:
<?php
$query = "UPDATE users SET
name='$name', age='$age', salary='$salary'
WHERE id=$id";
?>
Laat ons die navraag uitvoer:
<?php
mysqli_query($link, $query) or die(mysqli_error($link));
?>
Laat ons 'n boodskap oor die sukses van die operasie uitskryf:
<?php
echo 'gebruiker suksesvol verander!';
?>
Praktiese take
Implementeer die bladsy edit.php vir die redigering van die gebruiker.
Implementeer die bladsy save.php vir die berging van die redigeringsresultaat.
Op die bladsy index.php, skryf die lys van gebruikers op die skerm uit sodat daar vir elke gebruiker 'n skakel vir sy redigering is:
<ul>
<li>user1 <a href="?edit=1">wysig</a></li>
<li>user2 <a href="?edit=2">wysig</a></li>
<li>user3 <a href="?edit=3">wysig</a></li>
</ul>
Implementeer die verwerking van die vorm op die bladsy edit.php.