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:

edit.php<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:

edit.php<?php
  $id = $_GET['id'];
?>

Tutengeneze ombi la kupata mtumiaji:

edit.php<?php
  $query = "SELECT * FROM users WHERE id=$id";
?>

Tufanye ombi:

edit.php<?php
  $result = mysqli_query($link, $query) or die(mysqli_error($link));
?>

Tupate data ya mtumiaji kwenye kutofautisha:

edit.php<?php
  $user = mysqli_fetch_assoc($result);
?>

Tutoee data hii kwenye fomu yetu:

edit.php<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:

html<form action="save.php" method="POST">

Wakati huu GET parameta tutaipa id ya mtumiaji wa kuhariri:

html<form action="save.php?id=<?= $_GET['id'] ?>" method="POST">

Ukurasa wa Kuhifadhi

Kwenye ukurasa save.php tutapokea data iliyotumwa:

html<?php
  $id = $_GET['id'];
  $name = $_POST['name'];
  $age = $_POST['age'];
  $salary = $_POST['salary'];
?>

Tutengeneze ombi la kusasisha:

html<?php
  $query = "UPDATE users SET
    name='$name', age='$age', salary='$salary'
  WHERE id=$id";
?>

Tufanye ombi:

html<?php
  mysqli_query($link, $query) or die(mysqli_error($link));
?>

Tutoee ujumbe wa mafanikio ya operesheni:

html<?php
  echo 'mtumiaji amebadilishwa kwa mafanikio!';
?>

Kazi za Vitendo

Задание 1

Tekeleza ukurasa edit.php kwa kuhariri mtumiaji.

Задание 2

Tekeleza ukurasa save.php kwa kuhifadhi matokeo ya uhariri.

Задание 3

Kwenye ukurasa index.php toa kwenye skrini orodha ya watumiaji kwa namna ambayo kila mtumiaji ana kiungo cha kumhariri:

html<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>
Задание 4

Tekeleza usindikaji wa fomu kwenye ukurasa edit.php.