PHP में डेटाबेस रिकॉर्ड संपादित करना

आइए अब उपयोगकर्ता संपादन लागू करें। इसके लिए हमें दो पृष्ठों की आवश्यकता होगी: पृष्ठ edit.php, जिस पर उपयोगकर्ता संपादन फॉर्म स्थित होगा, और पृष्ठ save.php, जिस पर फॉर्म सबमिट किया जाएगा बाद में सहेजने के लिए।

संपादन पृष्ठ

सबसे पहले पृष्ठ edit.php पर फॉर्म बनाएं:

edit.php<form action="" method="POST">
  <input name="name">
  <input name="age">
  <input name="salary">
  <input type="submit">
</form>

हम इस फॉर्म में डेटाबेस से वर्तमान डेटा लोड करेंगे। मान लीजिए उपयोगकर्ता का id GET पैरामीटर में पास किया जाता है:

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

आइए उपयोगकर्ता प्राप्त करने के लिए क्वेरी तैयार करें:

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

आइए क्वेरी निष्पादित करें:

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

आइए एक वेरिएबल में उपयोगकर्ता डेटा प्राप्त करें:

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

आइए इस डेटा को हमारे फॉर्म में प्रदर्शित करें:

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>

आइए फॉर्म का action बदलें ताकि यह पृष्ठ save.php पर सबमिट हो:

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

इसके साथ ही GET पैरामीटर के रूप में संपादन के लिए उपयोगकर्ता का id पास करेंगे:

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

सहेजने का पृष्ठ

पृष्ठ save.php पर सबमिट किया गया डेटा प्राप्त करें:

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

आइए अद्यतन क्वेरी तैयार करें:

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

आइए क्वेरी निष्पादित करें:

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

आइए ऑपरेशन की सफलता का संदेश प्रदर्शित करें:

html<?php
  echo 'उपयोगकर्ता सफलतापूर्वक बदल गया!';
?>

व्यावहारिक कार्य

Задание 1

संपादन के लिए पृष्ठ edit.php लागू करें उपयोगकर्ता।

Задание 2

संपादन परिणाम सहेजने के लिए पृष्ठ save.php लागू करें।

Задание 3

पृष्ठ index.php पर उपयोगकर्ताओं की सूची इस प्रकार प्रदर्शित करें कि प्रत्येक उपयोगकर्ता के लिए उसके संपादन का लिंक हो:

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

पृष्ठ edit.php पर फॉर्म प्रसंस्करण लागू करें।