ในบทความนี้จะพาทุกท่าน workshop การสร้างฟอร์มสมัครสมาชิกและบันทึกลงใน database ที่เราได้เตรียมไว้นะครับ ก่อนอื่นเราต้องสร้างฟอร์มสมัครสมาชิกโดยมีฟิลด์ที่ให้กรอกข้อมูลตามที่เราได้ออกแบบ database ไว้
เราสามารถใช้โปรแกรม Dreamweaver ในการช่วยออกแบบฟอร์มได้นะครับ จะทำให้เราสามารถประหยัดเวลาได้มากขึ้นโดยจะต้องมีฟิลด์รับข้อมูลดังนี้
- ชื่อ (member_name)
- สกุล (member_lname)
- username
- password
*ส่วน member_id กับ date_add ไม่ต้องมีฟิลด์กรอกข้อมูลนะครับ เพราะ member_id เรากำหนดให้เป็น primary key และ auto incremnet ซึ่งมันสามารถลำดับให้เราอัตโนมัติ และ date_add เรากำหนดให้เป็นรูปแบบ timestamp และ CURRENT_TIMESTAMP ซึ่งจะเป็นฟิลด์ที่ใช้เก็บวันเดือนปีและเวลาตอนสมัครสมาชิก โดยจะเลือกใช้วันและเวลาปัจจุบันในเครื่องของเรา เนื่องจากเราจำลองให้เครื่องของเราเป็น server นั้นเอง
code หน้าฟอร์ม จะใช้ตารางเข้ามาช่วยจัดรูปแบบให้ตารางของเราดูเป็นระเบียบมากขึ้น และมีการเพิ่ม code required=”required” เพื่อกำหนดให้ต้องกรอกข้อมูลในฟิลด์นี้ซึ่งไม่สามารถปล่อยว่างได้นั้นเอง
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 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <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="registersave.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>สมัครสมาชิก</b></td> </tr> <tr> <td align="right" bgcolor="#EBEBEB"> </td> <td bgcolor="#EBEBEB"> </td> </tr> <tr> <td width="117" align="right" bgcolor="#EBEBEB">ชื่อ :</td> <td width="583" bgcolor="#EBEBEB"><input name="member_name" type="text" id="member_name" size="30" placeholder="ภาษาไทยเท่านั้น" required="required"/></td> </tr> <tr> <td align="right" bgcolor="#EBEBEB"> </td> <td bgcolor="#EBEBEB"> </td> </tr> <tr> <td align="right" bgcolor="#EBEBEB">สกุล <label> :</label></td> <td bgcolor="#EBEBEB"><input name="member_lname" type="text" id="member_lname" size="30" placeholder="ภาษาไทยเท่านั้น" required="required"/></td> </tr> <tr> <td align="right" bgcolor="#EBEBEB"> </td> <td bgcolor="#EBEBEB"> </td> </tr> <tr> <td align="right" bgcolor="#EBEBEB">Username :</td> <td bgcolor="#EBEBEB"><input type="text" name="username" id="username" placeholder="ตัวเลขหรือภาษาอังกฤษเท่านั้น" required="required"/></td> </tr> <tr> <td align="right" bgcolor="#EBEBEB"> </td> <td bgcolor="#EBEBEB"> </td> </tr> <tr> <td align="right" bgcolor="#EBEBEB">Password : <label> </label></td> <td bgcolor="#EBEBEB"><input type="password" name="password" id="password" placeholder="ตัวเลขหรือภาษาอังกฤษเท่านั้น" required="required"/></td> </tr> <tr> <td align="right" bgcolor="#EBEBEB"> </td> <td bgcolor="#EBEBEB"> </td> </tr> <tr> <td align="right" bgcolor="#EBEBEB">email : </td> <td bgcolor="#EBEBEB"><input name="email" type="email" id="email" size="30" placeholder="ตัวอย่าง pisit.bow@gmail.com" required="required"/></td> </tr> <tr> <td bgcolor="#EBEBEB"> </td> <td bgcolor="#EBEBEB"> </td> </tr> <tr> <td bgcolor="#EBEBEB"> </td> <td bgcolor="#EBEBEB"> <input type="reset" name="Reset" id="button" value="Reset" /> <input type="submit" name="Register" id="Register" value="register" /></td> </tr> <tr> <td bgcolor="#EBEBEB"> </td> <td bgcolor="#EBEBEB"> </td> </tr> </table> <p><br /> <br /> <br /> <br /> </p> <p> </p> <p> </p> </form> </body> </html> |
ไฟล์เชื่อมต่อกับ database ตั้งชื่อไฟล์ connection.php และเก็บไว็ในโฟลเดอร์เดียวกันการใช้งานจะให้ไฟล์ registersave.php include หรือเรียกใช้งานไฟล์นี้เพื่อเชื่อมต่อกับ database และบันทึกข้อมูลลง database ต่อไป
1 2 3 4 5 6 |
<?php $con= mysqli_connect("localhost","root","123","myweb") or die("Error: " . mysqli_error($con)); mysqli_query($con, "SET NAMES 'utf8' "); ?> |
ไฟล์ php ที่จะบันทึกข้อมูล (INSERT INTO) ที่กรอกในฟอร์มลงใน database ให้ตั้งชื่อไฟล์ว่า registersave.php นะครับ เพราะเราให้ฟอร์มสมัครสมาชิกส่งค่า (action) มาที่ไฟล์นี้ หรือให้ทำงานต่อที่ไฟล์นี้ และไฟล์ registersave.php ก็จะรับค่าเพื่อนำไปเก็บใน 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 |
<?php include('connection.php'); //ไฟล์เชื่อมต่อกับ database ที่เราได้สร้างไว้ก่อนหน้าน้ี //สร้างตัวแปรเก็บค่าที่รับมาจากฟอร์ม $member_name = $_POST["member_name"]; $member_lname = $_POST["member_lname"]; $username = $_POST["username"]; $password = $_POST["password"]; $email = $_POST["email"]; //เพิ่มเข้าไปในฐานข้อมูล $sql = "INSERT INTO tb_member(member_name, member_lname, username, password, email) VALUES('$member_name', '$member_lname', '$username', '$password', '$email')"; $result = mysqli_query($con, $sql) or die ("Error in query: $sql " . mysqli_error()); //ปิดการเชื่อมต่อ database mysqli_close($con); //จาวาสคริปแสดงข้อความเมื่อบันทึกเสร็จและกระโดดกลับไปหน้าฟอร์ม if($result){ echo "<script type='text/javascript'>"; echo "alert('Register Succesfuly');"; echo "window.location = 'register_form.php'; "; echo "</script>"; } else{ echo "<script type='text/javascript'>"; echo "alert('Error back to register again');"; echo "</script>"; } ?> |
เมื่อทำเสร็จแล้วให้ทดลอง run โดยเรียกผ่าน http://localhost/devbanban/register_form.php และกรอกข้อมูลในฟอร์มดูนะครับจะมีข้อมูลที่เรากรอกข้อมูลเข้าไปอยู่ใน database ของเรา
รวมคลิปสอน php+mysqli
สอน CodeIgniter สอนทำระบบหนังสือเวียนออนไลน์
สอน CodeIgniter สอนทำระบบยืมคืนครุภัณฑ์
ร่วมสนับสนุน ค่ากาแฟ ค่าโฮส devbanban.com และทีมงานได้ที่
ธนาคารกรุงไทย สาขาเดอะมอลล์ท่าพระ
ชื่อบัญชี นายพิศิษฐ์ บวรเลิศสุธี เลขที่ 878-0-17747-6
————————————————————————————
ธนาคารไทยพาณิชย์ สาขามหาวิทยาลัยราชภัฏธนบุรี
ชื่อบัญชี นายพิศิษฐ์ บวรเลิศสุธี เลขที่ 406-359094-1
fanpage : https://www.facebook.com/sornwebsites/