Ierakstu rediģēšana PHP datu bāzē
Tagad īstenosim lietotāja rediģēšanu.
Šim nolūkam mums būs nepieciešamas divas lapas: lapa
edit.php, kurā atradīsies
forma lietotāja rediģēšanai, un lapa
save.php, uz kuru forma tiks iesūtīta
turpmākai saglabāšanai.
Rediģēšanas lapa
Sākumā lapā edit.php izveidosim
formu:
<form action="" method="POST">
<input name="name">
<input name="age">
<input name="salary">
<input type="submit">
</form>
Šajā formā mēs ielādēsim pašreizējos datus
no lietotāja datu bāzē. Ļaujiet id lietotājam
rediģēšanai tiek pārsūtīts GET
parametrā:
<?php
$id = $_GET['id'];
?>
Veidosim vaicājumu lietotāja iegūšanai:
<?php
$query = "SELECT * FROM users WHERE id=$id";
?>
Izpildīsim vaicājumu:
<?php
$result = mysqli_query($link, $query) or die(mysqli_error($link));
?>
Iegūsim lietotāja datus mainīgajā:
<?php
$user = mysqli_fetch_assoc($result);
?>
Parādīsim šos datus mūsu formā:
<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>
Mainīsim action formu tā, lai tā
tiktu nosūtīta uz lapu save.php:
<form action="save.php" method="POST">
Šajā gadījumā GET parametru nosūtīsim
id lietotājam rediģēšanai:
<form action="save.php?id=<?= $_GET['id'] ?>" method="POST">
Saglabāšanas lapa
Lapā save.php iegūsim nosūtītos
datus:
<?php
$id = $_GET['id'];
$name = $_POST['name'];
$age = $_POST['age'];
$salary = $_POST['salary'];
?>
Veidosim vaicājumu atjaunināšanai:
<?php
$query = "UPDATE users SET
name='$name', age='$age', salary='$salary'
WHERE id=$id";
?>
Izpildīsim vaicājumu:
<?php
mysqli_query($link, $query) or die(mysqli_error($link));
?>
Parādīsim ziņojumu par operācijas veiksmi:
<?php
echo 'lietotājs veiksmīgi izmainīts!';
?>
Praktiskie uzdevumi
Realizējiet lapu edit.php lietotāja rediģēšanai.
Realizējiet lapu save.php rediģēšanas
rezultāta saglabāšanai.
Lapā index.php izvadiet uz
ekrāna lietotāju sarakstu tā, lai katram
lietotājam būtu saite viņa rediģēšanai:
<ul>
<li>user1 <a href="?edit=1">rediģēt</a></li>
<li>user2 <a href="?edit=2">rediģēt</a></li>
<li>user3 <a href="?edit=3">rediģēt</a></li>
</ul>
Realizējiet formas apstrādi lapā edit.php.