Kuhariri Rekodi ya Databeseni kwa PHP
Sasa hebu tutekeleze uhariri wa mtumiaji.
Kwa hili tutahitaji kurasa mbili: ukurasa
edit.php, ambapo itakuwa na fomu
ya kuhariri mtumiaji, na ukurasa
save.php, ambapo fomu itapelekwa
kwa ajili ya kuhifadhi baadaye.
Ukurasa wa Kuhariri
Kwanza, kwenye ukurasa edit.php tufanye
fomu:
<form action="" method="POST">
<input name="name">
<input name="age">
<input name="salary">
<input type="submit">
</form>
Kwenye fomu hii tutapakia data ya sasa
ya mtumiaji kutoka kwenye hifadhidata. Acha id ya mtumiaji
ya kuhariri ipeanwe kwenye GET
parameta:
<?php
$id = $_GET['id'];
?>
Tutengeneze ombi la kupata mtumiaji:
<?php
$query = "SELECT * FROM users WHERE id=$id";
?>
Tufanye ombi:
<?php
$result = mysqli_query($link, $query) or die(mysqli_error($link));
?>
Tupate data ya mtumiaji kwenye kutofautisha:
<?php
$user = mysqli_fetch_assoc($result);
?>
Tutoee data hii kwenye fomu yetu:
<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>
Tubadilishe action ya fomu ili
iweze kutumiwa kwenye ukurasa save.php:
<form action="save.php" method="POST">
Wakati huu GET parameta tutaipa
id ya mtumiaji wa kuhariri:
<form action="save.php?id=<?= $_GET['id'] ?>" method="POST">
Ukurasa wa Kuhifadhi
Kwenye ukurasa save.php tutapokea data
iliyotumwa:
<?php
$id = $_GET['id'];
$name = $_POST['name'];
$age = $_POST['age'];
$salary = $_POST['salary'];
?>
Tutengeneze ombi la kusasisha:
<?php
$query = "UPDATE users SET
name='$name', age='$age', salary='$salary'
WHERE id=$id";
?>
Tufanye ombi:
<?php
mysqli_query($link, $query) or die(mysqli_error($link));
?>
Tutoee ujumbe wa mafanikio ya operesheni:
<?php
echo 'mtumiaji amebadilishwa kwa mafanikio!';
?>
Kazi za Vitendo
Tekeleza ukurasa edit.php kwa kuhariri
mtumiaji.
Tekeleza ukurasa save.php kwa kuhifadhi
matokeo ya uhariri.
Kwenye ukurasa index.php toa kwenye
skrini orodha ya watumiaji kwa namna ambayo kila
mtumiaji ana kiungo cha kumhariri:
<ul>
<li>user1 <a href="?edit=1">hariri</a></li>
<li>user2 <a href="?edit=2">hariri</a></li>
<li>user3 <a href="?edit=3">hariri</a></li>
</ul>
Tekeleza usindikaji wa fomu kwenye ukurasa edit.php.