ใน workshop นี้จะแนะนำวิธีการสร้างฟอร์มเพิ่มข้อมูลแค่เพียง 1 ฟอร์ม แต่สามารถเพิ่มข้อมูลเข้าไปยัง 2 ตารางพร้อมกันๆ ซึ่งจะสามารถนำไปประยุกต์ใช้ในระบบที่ต้องการใช้งานตาม workshop ดังกล่าว ง่ายๆ สไตล์ devbanban.com เช่นเดิมครับ…
การทำงานของโปรแกรมในตารางแรกจะให้เพิ่มข้อมูลชื่อ-สกุล, เบอร์โทร และตารางที่สองจะให้เพิ่มเฉพาะข้อมูลบริษัท
เริ่มจากการสร้าง database ง่ายๆ เพื่อทดลองทำ workshop กันครับ
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
CREATE DATABASE `myweb` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; USE `myweb`; CREATE TABLE `tb_dept` ( `dept_id` int(10) NOT NULL auto_increment, `dept_name` varchar(100) NOT NULL, PRIMARY KEY (`dept_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; CREATE TABLE `tb_member` ( `mid` int(10) NOT NULL auto_increment, `fname` varchar(100) NOT NULL, `lname` varchar(100) NOT NULL, `phone` varchar(20) NOT NULL, PRIMARY KEY (`mid`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; |
ไฟล์เชื่อมต่อกับ database
1 2 3 4 5 6 |
<?php $con= mysqli_connect("localhost","root","password","myweb") or die("Error: " . mysqli_error($con)); mysqli_query($con, "SET NAMES 'utf8' "); ?> |
ฟอร์มเพิ่มข้อมูลแบบง่ายๆ
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title></title> </head> <body> <form id="formRegister" name="formRegister" method="post" action="form_db.php"> <p><br /> <br /> </p> <table width="700" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td height="40" colspan="2" align="center" bgcolor="#D6D5D6"><b>add data</b></td> </tr> <tr> <td align="right"> </td> <td> </td> </tr> <tr> <td width="117" align="right">ชื่อ :</td> <td width="583"><input name="fname" type="text" id="fname" size="30" required="required"/></td> </tr> <tr> <td align="right"> </td> <td> </td> </tr> <tr> <td align="right">สกุล <label> :</label></td> <td><input name="lname" type="text" id="lname" size="30" required="required"/></td> </tr> <tr> <td align="right"> </td> <td> </td> </tr> <tr> <td align="right">เบอร์โทร :</td> <td><input type="text" name="phone" id="phone" required="required"/></td> </tr> <tr> <td align="right"> </td> <td> </td> </tr> <tr> <td align="right">ชื่อหน่วยงาน : <label> </label></td> <td><input type="text" name="dept_name" id="dept_name" required="required"/></td> </tr> <tr> <td> </td> <td> <input type="submit" name="Register" id="Register" value="SAVE" /></td> </tr> </table> </form> </body> </html> |
ไฟล์นำข้อมูลเข้าไปใน database
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
<?php include('condb.php'); $fname = $_POST["fname"]; $lname = $_POST["lname"]; $phone = $_POST["phone"]; $dept_name = $_POST["dept_name"]; //table1 $sql = "INSERT INTO tb_member(fname, lname, phone) VALUES('$fname', '$lname', '$phone')"; $result = mysqli_query($con, $sql) or die ("Error in query: $sql " . mysqli_error()); //table2 $sql2 = "INSERT INTO tb_dept(dept_name) VALUES('$dept_name')"; $result2 = mysqli_query($con, $sql2) or die ("Error in query: $sql2 " . mysqli_error()); //ปิดการเชื่อมต่อ database mysqli_close($con); //จาวาสคริปแสดงข้อความเมื่อบันทึกเสร็จและกระโดดกลับไปหน้าฟอร์ม if($result2){ echo "<script type='text/javascript'>"; echo "alert('Save Succesfuly');"; echo "window.location = 'form.php'; "; echo "</script>"; } else{ echo "<script type='text/javascript'>"; echo "alert('Error!!');"; echo "</script>"; } ?> |
หน้าฟอร์มจาก code ด้านบนนะครับ
ผลการทำงานเมื่อคลิกที่ “SAVE”
การทำงานของโปรแกรมในตารางแรกจะให้เพิ่มข้อมูลชื่อ-สกุล, เบอร์โทร และตารางที่สองจะให้เพิ่มเฉพาะข้อมูลบริษัท
ตารางที่ 1
ตารางที่2
เรียบร้อยครับ ^_^