MYSQL-INSERT

By -

จากบทความที่เราแล้วได้รู้ถึงการสร้างฐานข้อมูล ด้วย mysql ผ่าน php กันไปแล้ว ต่อไปเราจะเพิ่มข้อมูล เข้าไปใน ตารางที่เราสร้างขึ้นมา เนื่องจาก ตั้งแต่บทนี้ไป ผมจะใช้ฐานข้อมูลเดียว ผมจึงขอสร้างฐานข้อมูลขึ้นมาไหม่  แล้วจัดระเบียบ โค้ด ซะหน่อย เพื่อให้เรียกใช้งานง่ายและเป็นประโยชน์ในบทต่อๆไปที่เราจะได้ศึกษากัน  ถ้าจะมีคำถามว่า แบบนี้มันจำเป็นด้วยหรอ แต่อย่างลืมว่า พื้นฐานมันเป็นสิ่งที่สำคัญที่สุด…..ว่าแล้วก็เริ่มกันเลยดีกว่า

สร้างฐานข้อมูลขึ้น

DROP TABLE IF EXISTS `personal`;
CREATE TABLE `personal` (
  `id` int(11) NOT NULL auto_increment,
  `name` varchar(50) default NULL,
  `sex` varchar(50) default NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

เสร็จแล้ว ในฐานข้อมูลชื่อว่า tdev เราก็จะได้ตารางชื่อว่า personal มา โดยมี โครงสร้างดังนี้
DBcreate
สร้างโฟล์เดอร์ ชื่อว่า Connectiion ในโฟล์เดอร์นั้น สร้างไฟล์ที่ชื่อว่า tdev.php ขึ้นมา แล้วเขียนโค้ด

<?php
# FileName="Connection_php_mysql.htm"
# Type="MYSQL"
# HTTP="true"
$hostname_tdev = "localhost";
$database_tdev = "tdev";
$username_tdev = "root";
$password_tdev = "1234";
$tdev = mysql_pconnect($hostname_tdev, $username_tdev, $password_tdev) or trigger_error(mysql_error(),E_USER_ERROR); 
?>

เราก็จะได้ตัว connect ขึ้นมาไว้ให้เรียกใช้ในทุกๆหน้า ต่อไปสร้างหน้า insert.php

  <?php
 
require_once('Connections/tdev.php'); // นำตัว Connection ที่เราสร้างไว้เข้ามา
mysql_select_db($database_tdev, $tdev); // เลือก database ว่าจะให้ฐานข้อมูลตัวไหน $database_tdev ถูกกำหนดไว้ใน ไฟล์ connection 
	$SQLinsert="INSERT INTO personal (name,sex) VALUES  ('แบงค์','ชาย')";
	$SQLcommand=mysql_query($SQLinsert,$tdev);
			if($SQLcommand):
				echo "เพิ่มข้อมูลเรียบร้อยแล้ว";
			else:
				echo"ไม่สามารถเพิ่มข้อมูลได้";			
			endif;
 
?>

เข้าไปดูที่ php myadmin ก่อนที่จะรันสคริปกัน
SQLinsert_befo
เข้าไปรันไฟล์ ชื่อว่า insert.php
ก็ขอซ้ำคำเดิม ครับ  มันต้องขึ้นคำว่า “เพิ่มข้อมูลเรียบร้อยแล้ว” เพราะถ้าไม่ขึ้นคำนี้ โค้ดของท่านมันผิดตรงไหนรึป่าว..โปรดตรวจสอบ แต่ไม่ใช่ของผมแน่ ฮ่าห์ๆ
หลังจากที่ รันไฟล์ insert.php
SQLinsert_last

ขอแถมอีกนิดนึงครับ…

ถ้าเราจะเปลี่ยนจาก ค่าต่างๆให้อยู่ในรูปของตัวแปร อาจจะส่งค่ามาจากฟอร์ม หรือส่ง ผ่าน query string มา ในรูปแบบอื่น ก็สามารถทำได้ง่าย โดยการใช้ ฟังชั่น $_GET  หรือ $_POST เข้ามาช่วย  เช่น

// รับค่าจากการส่งแบบ GET
$name=$_GET['name'];
$sex=$_GET['sex'];
// รับค่าจากการส่งแบบ POST
$name=$_POST['name'];
$sex=$_POST['sex'];
 
$SQLinsert="INSERT INTO personal (name,sex) VALUES  ('".$name.",'".$sex."')";
 
 
?>
mitsumasa