PHP တွင် Database မှတ်တမ်းကို တည်းဖြတ်ခြင်း

ယခုအခါ user တစ်ဦးကို တည်းဖြတ်ခြင်း အကောင်အထည်ဖော်ကြပါစို့။ ဤအတွက် စာမျက်နှာနှစ်ခု လိုအပ်ပါမည်- user ကို တည်းဖြတ်ရန် ပုံစံပါရှိမည့် 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>

ဤပုံစံအတွင်းသို့ Database မှ user ၏ လက်ရှိဒေတာများကို ကျွန်ုပ်တို့ ထည့်သွင်းပါမည်။ တည်းဖြတ်ရန် user ၏ id ကို GET ပါရာမီတာအနေဖြင့် ပေးပို့သည်ဆိုပါစို့-

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

user ရယူရန် Query တစ်ခု ပြုလုပ်ပါမည်-

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

Query ကို Run ပါမည်-

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

user ၏ဒေတာများကို variable အတွင်းသို့ ရယူပါမည်-

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>

ပုံစံသည် save.php စာမျက်နှာသို့ ပေးပို့နိုင်ရန် action ကို ပြောင်းလဲပါမည်-

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

ဤသို့ပြုလုပ်ရာတွင် တည်းဖြတ်ရန် user ၏ id ကို GET ပါရာမီတာအနေဖြင့် ပေးပို့ပါမည်-

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'];
?>

Update လုပ်ရန် Query တစ်ခု ပြုလုပ်ပါမည်-

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

Query ကို Run ပါမည်-

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

လုပ်ဆောင်ချက် အောင်မြင်ကြောင်း မက်ဆေ့ဂျ်ကို ထုတ်ပြပါမည်-

html<?php
  echo 'user အောင်မြင်စွာ ပြောင်းလဲပြီးပါပြီ!';
?>

လက်တွေ့လေ့ကျင့်ခန်းများ

Задание 1

user တစ်ဦးကို တည်းဖြတ်ရန် edit.php စာမျက်နှာကို အကောင်အထည်ဖော်ပါ။

Задание 2

�ည်းဖြတ်မှုရလဒ်ကို သိမ်းဆည်းရန် save.php စာမျက်နှာကို အကောင်အထည်ဖော်ပါ။

Задание 3

index.php စာမျက်နှာတွင် user တစ်ဦးစီအတွက် ၎င်းတို့ကို တည်းဖြတ်နိုင်သော လင့်ခ်ပါရှိသည့် user များ၏ စာရင်းကို အောက်ပါအတိုင်း ထုတ်ပြပါ-

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 စာမျက်နှာရှိ ပုံစံကို ကိုင်တွယ်ခြင်း အကောင်အထည်ဖော်ပါ။