Redaktimi i regjistrimit në DB në PHP
Le të implementojmë tani redaktimin e përdoruesit.
Për këtë do të na duhen dy faqe: faqja
edit.php, ku do të vendoset
forma për redaktimin e përdoruesit, dhe faqja
save.php, në të cilën forma do të dërgohet
për ruajtje të mëvonshme.
Faqja e redaktimit
Për fillim, në faqen edit.php le të krijojmë
formën:
<form action="" method="POST">
<input name="name">
<input name="age">
<input name="salary">
<input type="submit">
</form>
Në këtë formë do të ngarkojmë të dhënat aktuale
të përdoruesit nga baza e të dhënave. Le të themi id e përdoruesit
për redaktim transmetohet në GET
parametër:
<?php
$id = $_GET['id'];
?>
Le të krijojmë kërkesën për marrjen e përdoruesit:
<?php
$query = "SELECT * FROM users WHERE id=$id";
?>
Le të ekzekutojmë kërkesën:
<?php
$result = mysqli_query($link, $query) or die(mysqli_error($link));
?>
Le të marrim të dhënat e përdoruesit në një ndryshore:
<?php
$user = mysqli_fetch_assoc($result);
?>
Le t'i shfaqim këto të dhëna në formën tonë:
<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>
Le të ndryshojmë action e formës në mënyrë që ajo
të dërgohet në faqen save.php:
<form action="save.php" method="POST">
Në këtë rast GET parametër do të transmetojmë
id e përdoruesit për redaktim:
<form action="save.php?id=<?= $_GET['id'] ?>" method="POST">
Faqja e ruajtjes
Në faqen save.php le të marrim të dhënat e dërguara:
<?php
$id = $_GET['id'];
$name = $_POST['name'];
$age = $_POST['age'];
$salary = $_POST['salary'];
?>
Le të krijojmë kërkesën për përditësim:
<?php
$query = "UPDATE users SET
name='$name', age='$age', salary='$salary'
WHERE id=$id";
?>
Le të ekzekutojmë kërkesën:
<?php
mysqli_query($link, $query) or die(mysqli_error($link));
?>
Le të shfaqim mesazhin e suksesit të operacionit:
<?php
echo 'përdoruesi u modifikua me sukses!';
?>
Detyra praktike
Implementoni faqen edit.php për redaktimin
e përdoruesit.
Implementoni faqen save.php për ruajtjen
e rezultatit të redaktimit.
Në faqen index.php shfaqni në
ekran listën e përdoruesve në mënyrë të tillë që për çdo
përdorues të ketë një lidhje për redaktimin e tij:
<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>
Implementoni përpunimin e formës në faqen edit.php.