viewtopic.php?f=72&t=52729
และจากบทเรียนสอน
https://www.mindphp.com/%E0%B8%9A%E0%B8 ... nsert.html
4. การ update ข้อมูล
ในการ update ข้อมูลเราจะสร้างปุ่มเพิ่มเติมในส่วนของ table ชื่อปุ่มว่า update เพื่อให้ผู้ใช้คลิกข้อมูลที่ต้องการแก้ไข
โค้ด: เลือกทั้งหมด
<table>
<thead>
<tr>
<th>Name</th>
<th>Email Address</th>
<th>Mobile Number</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php
include('connection.php');
$sql = "SELECT * FROM customers";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
//แสดงข้อมูลเป็นตาราง
while($row = $result->fetch_assoc()) {
echo '<tr>';
echo '<td>'. $row['name'] . '</td>';
echo '<td>'. $row['email'] . '</td>';
echo '<td>'. $row['phone'] . '</td>';
echo '<td><a role="button" href="update.php?id='.$row['id'].'">Update</a><td>'; //ปุ่มที่เพิ่มเข้ามา
echo '</tr>';
}
} else {
echo "0 results";
}
$conn->close();
?>
</tbody>
</table>
การสร้างฟอร์มนี้ เราตั้งชื่อว่า update.php มีโค้ดตัวอย่างดังนี้
โค้ด: เลือกทั้งหมด
<form action="upd_cus.php" method="post">
<?php
$id =$_POST["id"]; //เพื่อรับค่า id ที่ส่งมา
include('connection.php');
//สร้างคำสั่ง sql
$sql = "SELECT * FROM customers WHERE id= $id";
$result = $conn->query($sql);
if($result->num_rows > 0){
$row = $result->fetch_assoc();
echo ' <label for="name">Name</label>
<input id="name" type="text" name="name" value=" '. $row['name'].' ">
<label for="email">Email Address</label>
<input id="email" type="text" name="email" value=" '. $row['email'].' " >
<label for="phone">Mobile Number</label>
<input id="phone" type="text" name="phone" value=" '. $row['phone'].' ">
<input type="hidden" value=" '. $row['id'].' ">
<button type="submit" class="btn btn-success">Update</button>
<a class="btn" href="index.php">Back</a>
}else{
echo" no data something wrong!!" //กรณีไม่พบข้อมูลในฐานข้อมูล
?>
</form>
โด้ดตัวอย่าง
โค้ด: เลือกทั้งหมด
<?php
$id =$_POST["id"];
$name =$_POST["name];
$email =$_POST["email"];
$phone =$_POST["phone"];
include('connection.php');
$sql = "UPDATE customers SET name='$name', email='$email', phone='$phone' WHERE id=$id";
if ($conn->query($sql)) {
echo "Record updated successfully";
} else {
echo "Error updating record: " . $conn->error;
}
$conn->close();
?>
ในการลบข้อมูล เราจะสร้างปุ่มเพิ่มเติมในส่วนของ table ถัดจากปุ่มupdate โดยตั้งชื่อว่า Delete เพื่อให้ผู้ใช้คลิกข้อมูลที่ต้องการลบ
โค้ด: เลือกทั้งหมด
<table>
<thead>
<tr>
<th>Name</th>
<th>Email Address</th>
<th>Mobile Number</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php
include('connection.php');
$sql = "SELECT * FROM customers";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
//แสดงข้อมูลเป็นตาราง
while($row = $result->fetch_assoc()) {
echo '<tr>';
echo '<td>'. $row['name'] . '</td>';
echo '<td>'. $row['email'] . '</td>';
echo '<td>'. $row['phone'] . '</td>';
echo '<td><a role="button" href="update.php?id='.$row['id'].'">Update</a>
<a role="button" href="delete.php?id='.$row['id'].'">Delete</a><td>'; //ปุ่มที่เพิ่มเข้ามา
echo '</tr>';
}
} else {
echo "0 results";
}
$conn->close();
?>
</tbody>
</table>
ต่อไปสร้างไฟล์ delete.php เพื่อรับและลบข้อมูลที่ต้องการออกจากฐานข้อมูล
โด้ดตัวอย่าง
โค้ด: เลือกทั้งหมด
$id =$_POST["id"];
include('connection.php');
$sql = "DELETE FROM customers WHERE id=$id";
if ($conn->query($sql) === TRUE) {
echo "Record deleted successfully";
} else {
echo "Error deleting record: " . $conn->error;
}
$conn->close();
?>
เพื่อป้องกันการไม่ได้ตั้งใจของการกดปุ่มลบข้อมูล
เนื้อหาทั้งหมดนี้เป็นเพียงข้อมูลการสอนฉบับอย่างง่าย ในการนำไปใช้กับโปรเจ็คนั้นควรปรับแต่งเพิ่มเติมให้เข้าโปรเจ็คของเรา ในภาษาphp มีรูปแบบ CRUD หลายรูปแบบ แต่ละรูปแบบมีความแตกต่างกันไป ขึ้นอยู่กับความเร็วในการทำงานหรือการติดต่อกับฐานข้อมูล ความซับซ้อนของข้อมูล
ช่องทางการศึกษาเพิ่มเติม
การสร้าง CRUD ในภาษา PHP เบื้องต้น part1
บทเรียน MySQL Store Procedure
SQL เบื้องต้น (Insert Select Update Delete Join) เพิ่ม ลบ แก้ไข ข้อมูล