วิธีแก้ไขข้อมูล Mysql ด้วย PHP

บทนี้จะเป็นตัวอย่างโปรแกรมแก้ไขข้อมูลในตาราง customer นะครับ หากท่านใดยังไม่มีฐานข้อมูลตาราง customer ต้องกับไปบทเรียนก่อนหน้านี้โดยคลิกที่นี่ สร้างตารางฐานข้อมูล

ขั้นแรกต้องนำข้อมูลที่อยู่ในตาราง customer มาแสดงก่อน เพื่อให้ผู้ใช้ได้เลือกข้อมูล record ที่ต้องการแก้ครับ

ขั้นที่ 1 แสดงฐานข้อมูลของตาราง customer ตามตัวอย่าง รูปภาพที่ 1 แสดงข้อมูลตาราง customer แล้วบันทึกไฟล์ไว้ที่ XXX:\AppServ\www\lesson9\show.php



รูปภาพที่ 1 แสดงข้อมูลในตาราง customer

  <?
// เชื่่อมต่อฐานข้อมูล
$host="localhost"; // กำหนด host
$username="root"; // กำหนด username
$pass_word="nuiii"; // กำหนด Password
$db="test_create_database"; // กำหนดชื่อฐานข้อมูล
$Conn = mysql_connect( $host,$username,$pass_word) or die ("ติดต่อฐานข้อมูลไม่ได้");// ติดต่อฐานข้อมูล
mysql_query("SET NAMES utf8",$Conn); // set กำหนดมาตราฐาน
mysql_select_db($db) or die("เลือกฐานข้อมูลไม่ได้"); // เลือกฐานข้อมูล
//--->
?>
<table width="600" border="1" cellspacing="2" cellpadding="2">
<tr>
<td><div align="center">รหัส</div></td>
<td><div align="center">ชื่อ</div></td>
<td><div align="center">นามสกุล</div></td>
<td><div align="center">ที่อยู่</div></td>
<td><div align="center">โทรศัพท์</div></td>
</tr>
<?
$sql_show = "select * from customer";
$result_show = mysql_query($sql_show) or die(mysql_error());
while($row_show = mysql_fetch_array($result_show))
{
?>
<tr>
<td><?=$row_show['id']?></td>
<td><?=$row_show['name']?></td>
<td><?=$row_show['surname']?></td>
<td><?=$row_show['address']?></td>
<td><?=$row_show['phone']?></td>
</tr>
<?
}
?>
</table>

ขั้นที่ 2เพิ่มคอลัมน์ใหม่หลังสุดของตาราง เพื่อสร้างปุ่มแก้ไข โดยกำหนดให้ปุ่มแก้ไขนั้น ส่งค่า "รหัส" มาเพื่อแก้ไขข้อมูลของ record นั้น ตามตัวอย่างรูปภาพที่ 2 การเพิ่มคอลัมน์เพื่อสร้างปุ่มแก้ไข


รูปภาพที่ 3 เพิ่มคอลัมน์เพื่อสร้างปุ่มแก้ไข

 <?
// เชื่่อมต่อฐานข้อมูล
$host="localhost"; // กำหนด host
$username="root"; // กำหนด username
$pass_word="nuiii"; // กำหนด Password
$db="test_create_database"; // กำหนดชื่อฐานข้อมูล
$Conn = mysql_connect( $host,$username,$pass_word) or die ("ติดต่อฐานข้อมูลไม่ได้");// ติดต่อฐานข้อมูล
mysql_query("SET NAMES utf8",$Conn); // set กำหนดมาตราฐาน
mysql_select_db($db) or die("เลือกฐานข้อมูลไม่ได้"); // เลือกฐานข้อมูล
//--->
?>
<table width="600" border="1" cellspacing="2" cellpadding="2">
<tr>
<td><div align="center">รหัส</div></td>
<td><div align="center">ชื่อ</div></td>
<td><div align="center">นามสกุล</div></td>
<td><div align="center">ที่อยู่</div></td>
<td><div align="center">โทรศัพท์</div></td>
<td><div align="center">แก้ไข</div></td>
</tr>
<?
$sql_show = "select * from customer";
$result_show = mysql_query($sql_show) or die(mysql_error());
while($row_show = mysql_fetch_array($result_show))
{
?>
<tr>
<td><?=$row_show['id']?></td>
<td><?=$row_show['name']?></td>
<td><?=$row_show['surname']?></td>
<td><?=$row_show['address']?></td>
<td><?=$row_show['phone']?></td>
<td><div align="center"><a href="edit.php?edit_id=<?=$row_show[id]?>">แก้ไข</a></div></td>
</tr>
<?
}
?>
</table>

ผมใส่สีแดงให้เห็น code ที่เพิ่ม คอมลัมน์ใหม่นะครับ

ขั้นที่ 3 สร้าง form แก้ไขข้อมูลและรับค่า "รหัส" จากปุ่ม "แก้ไข" เพื่อแก้ไขข้อมูลครับ ตามตัวอย่าง รูปภาพที่ 3 form แก้ไขข้อมูล แล้วบันทึกไฟล์ไว้ที่ XXX:\AppServ\www\lesson9\edit.php (ไฟล์ที่ 2 นะครับ การแก้ไขจำเป็นต้องสร้าง 2 ไฟล์ จะได้ไม่งง )


รูปภาพที่ 3 form แก้ไขข้อมูล

<?
// เชื่่อมต่อฐานข้อมูล
$host="localhost"; // กำหนด host
$username="root"; // กำหนด username
$pass_word="nuiii"; // กำหนด Password
$db="test_create_database"; // กำหนดชื่อฐานข้อมูล
$Conn = mysql_connect( $host,$username,$pass_word) or die ("ติดต่อฐานข้อมูลไม่ได้");// ติดต่อฐานข้อมูล
mysql_query("SET NAMES utf8",$Conn); // set กำหนดมาตราฐาน
mysql_select_db($db) or die("เลือกฐานข้อมูลไม่ได้"); // เลือกฐานข้อมูล

//เรียกข้อมูลจาก รหัส มาแสดงใน textbox
if($_REQUEST['edit_id'] != "")
{
$id = $_REQUEST['edit_id'];
$sql_show = "select * from customer where id = '$id'";
$result_show = mysql_query($sql_show) or die(mysql_error());
$row_show = mysql_fetch_array($result_show);
}
//--->
?>

<form id="form1" name="form1" method="post" action="edit.php">
ชื่อ
<input name="name" type="text" id="name" value="<?=$row_show['name']?>" />
<br />
<br />
นามสกุล
<input name="surname" type="text" id="surname" value="<?=$row_show['surname']?>" />
<br />
<br />
ที่อยู่
<textarea name="address" id="address" cols="45" rows="5"><?=$row_show['address']?>
</textarea>
<br />
<br />
เบอร์โทรศัพท์
<input name="phone" type="text" id="phone" value="<?=$row_show['phone']?>" />
<input type="submit" name="Add" id="Add" value="Edit" />
<input name="edit_id" type="hidden" id="edit_id" value="<?=$_REQUEST['edit_id']?>" />

<a href="show.php">กลับ</a>
</form>

ขั้นที่ 4 สร้าง code แก้ไข ข้อมูล ในไฟล์ edit.php ตามตัวอย่าง รูปภาพที่ 4 แก้ไขข้อมูล


รูปภาพที่ 4 แก้ไขข้อมูล


// เชื่่อมต่อฐานข้อมูล
$host="localhost"; // กำหนด host
$username="root"; // กำหนด username
$pass_word="nuiii"; // กำหนด Password
$db="test_create_database"; // กำหนดชื่อฐานข้อมูล
$Conn = mysql_connect( $host,$username,$pass_word) or die ("ติดต่อฐานข้อมูลไม่ได้");// ติดต่อฐานข้อมูล
mysql_query("SET NAMES utf8",$Conn); // set กำหนดมาตราฐาน
mysql_select_db($db) or die("เลือกฐานข้อมูลไม่ได้"); // เลือกฐานข้อมูล
//--->
if($_POST['Edit'])
{

$name = $_POST['name'];
$surname = $_POST['surname'];
$address = $_POST['address'];
$phone = $_POST['phone'];
$id = $_REQUEST['edit_id'];
// แก้ไขข้อมูล
$sql_edit = "update customer set
name = '$name' , surname = '$surname' , address = '$address' , phone = '$phone' where id = '$id'";
mysql_query($sql_edit) or die(mysql_error());
echo "แก้ไขข้อมูลของ $name $surname สำเร็จแล้ว";
//-->
}


//เรียกข้อมูลจาก รหัส มาแสดงใน textbox
if($_REQUEST['edit_id'] != "")
{
$id = $_REQUEST['edit_id'];
$sql_show = "select * from customer where id = '$id'";
$result_show = mysql_query($sql_show) or die(mysql_error());
$row_show = mysql_fetch_array($result_show);
}
//--->
?>

<form id="form1" name="form1" method="post" action="edit.php">
ชื่อ
<input name="name" type="text" id="name" value="<?=$row_show['name']?>" />
<br />
<br />
นามสกุล
<input name="surname" type="text" id="surname" value="<?=$row_show['surname']?>" />
<br />
<br />
ที่อยู่
<textarea name="address" id="address" cols="45" rows="5"><?=$row_show['address']?>
</textarea>
<br />
<br />
เบอร์โทรศัพท์
<input name="phone" type="text" id="phone" value="<?=$row_show['phone']?>" />
<input type="submit" name="Edit" id="Edit" value="Edit" />
<input name="edit_id" type="hidden" id="edit_id" value="<?=$_REQUEST['edit_id']?>" />
<a href="show.php">กลับ</a>
</form>

ให้ลองแก้ไขข้อมูลดูนะครับ โดยการกดปุ่มแก้ไขจากหน้า show.php แล้วจากนั้นก็แก้ไขข้อมูลในหน้า edit.php ข้อมูลก็จะถูกแก้ไขตามที่เราต้องการครับ


Download(424)lesson9.rar

วิธีติดตั้ง PHP+Mysql |  เริ่มต้นกับภาษา PHP |  การคำนวณค่าและแสดงผล  |  การใช้เงื่อนไข if(){}else{} |  Loop while(){} for i |  การใช้ Array ใน PHP |  วิธีสร้างฐานข้อมูล Mysql |  phpMyAdmin เพิ่ม ลบ แก้ไข Mysql |  ส่งออก - นำเข้า ฐานข้อมูล Mysql ด้วย phpMyAdmin |  เชื่อมต่อฐานข้อมูล Mysql |  วิธีแสดงผลข้อมูล Mysql |  การเพิ่มข้อมูลลงในฐานข้อมูล Mysql ด้วย PHP |  วิธีลบข้อมูล Mysql ด้วย PHP |  วิธีแก้ไขข้อมูล Mysql ด้วย PHP |  ตัวอย่างการค้นหาข้อมูล Mysql ด้วย PHP | 

บทความโดย : Admin 2009-07-01 14:57:03 (13881)
แหล่งที่มา : Admin

    ติดต่อสอบถามรายละเอียด
ชื่อ :
Email :
 
Secure Code :