การใช้ PHP ติดต่อฐานข้อมูล
170 likes | 424 Vues
Internet for Education . อาจารย์ช นิดา เรืองศิริวัฒน กุล หลักสูตรสาขาวิชาเทคโนโลยีสารสนเทศ. การใช้ PHP ติดต่อฐานข้อมูล. MySQL DATABASE FUNCTION.
การใช้ PHP ติดต่อฐานข้อมูล
E N D
Presentation Transcript
Internet for Education อาจารย์ชนิดา เรืองศิริวัฒนกุล หลักสูตรสาขาวิชาเทคโนโลยีสารสนเทศ การใช้ PHPติดต่อฐานข้อมูล
MySQL DATABASE FUNCTION MySQL เป็นระบบฐานข้อมูลที่ใช้งานร่วมกับ PHP หาใช้ได้ง่ายระบบมีประสิทธิ์ภาพสูงและเป็นแบบ RDBMS(ralational database management system)
ระบบฐานข้อมูลที่ PHP สามารถเชื่อมต่อได้ Oracle Sybase mSQL MySQL Solid ODBC PostgreSQL Adabas D FilePro Velocis Informix dBase Unix dbm
ฟังก์ชัน PHP สำหรับติดต่อฐานข้อมูล MySQL • mysql_connect()เชื่อมต่อเซิร์ฟเวอร์ฐานข้อมูล ซึ่งต้องใช้ ชื่อดาต้าเบสเซิร์ฟเวอร์, ชื่อผู้ใช้ และรหัสผ่าน • mysql_select_db()เลือกฐานข้อมูล • mysql_query()ส่งคำสั่ง sql ไปยังฐานข้อมูล • sql_fetch_array()ดึงข้อมูล
mysql_connect • ฟังก์ชันในการเชื่อมต่อเซิร์ฟเวอร์ • รูปแบบ mysql_connect(ชื่อดาต้าเบส,ชื่อผู้ใช้,รหัสผ่าน); • ตัวอย่าง $host =“localhost”; $username=“root”; $password=“1234”; @mysql_connect($host,$username,$password) or die (“MySql connect fail”) ;
mysql_connect • เครื่องหมาย @ หมายถึงให้ฟังก์ชันนี้แสดงข้อความแจ้งว่ามีการทำงานผิดพลาด • or die() หมายถึง หากเกิดปัญหาในการเชื่อมต่อ ให้พิมพ์ข้อความที่อยู่ในวงเล็บและออกจากสคริปต์โดยไม่มีการดำเนินการใด ๆ เพิ่มเติม
mysql_select_db() • หลังจากเชื่อมต่อดาต้าเบสเซิร์ฟเวอร์แล้ว จะต้องทำการเลือกฐานข้อมูลใช้งาน • รูปแบบ mysql_select_db(ชื่อฐานข้อมูล); • ตัวอย่าง $db =“e_commerce”; @mysql_select_db($db) or die (“MySql select database fail”) ;
mysql_query() • ฟังก์ชันส่งคำสั่ง SQL ไปที่ฐานข้อมูล • รูปแบบ mysql_query(คำสั่งภาษา SQL); • ตัวอย่าง $sql =“select * from quest order by ‘date’ DESC”; $result = mysql_query($sql) or die (mysql_error()) ; • ฟังก์ชันmysql_error() แสดงความผิดพลาดในการส่งคำสั่ง SQL เช่น เขียนผิดไวยากรณ์ของภาษา SQL หรือชื่อตาราง หรือชื่อฟิลด์ผิด
mysql_fetch_array() • ฟังก์ชันการดึงข้อมูลทีละแถวของตาราง • รูปแบบ $ตัวแปร=mysql_fetch_array(ผลการดึงข้อมูล); • ตัวอย่าง $row=mysql_fetch_array($result); • ตัวแปร$rowเป็นอาร์เรย์ที่เก็บข้อมูล การแสดงข้อมูลในฟิลด์ “id” ให้เขียนว่า echo $row[“id”] ; • หรือถ้าต้องการดึงข้อมูลพร้อมกันหลายฟิลด์ echo “$row[id], $row[name], $row[date]”;
mysql_num_rows () • ฟังก์ชันนับจำนวนแถวของข้อมูลในตาราง • รูปแบบ $ตัวแปร=mysql_num_rows(ผลการดึงข้อมูล); • ตัวอย่าง $num_rows = mysql_num_rows($result); • สามารถใช้ตัวแปร$num_rowsเป็นตัวแปรที่ใช้ตรวจสอบการดึงข้อมูลจากอาร์เรย์เพื่อใช้แสดงผลข้อมูลในตาราง
mysql_num_rows () • ตัวอย่าง for($i=0; $i<$num_rows; $i++) { $row=mysql_fetch_array($result); echo "แสดงข้อมูล ".$row[“name"] ; echo "<br>" ; }
การเขียนโปรแกรมแสดงผลการเขียนโปรแกรมแสดงผล • มีขั้นตอนดังนี้ • 1. เริ่มติดต่อฐานข้อมูล • 2. เขียนคำสั่ง SQL และ query ข้อมูล • 3. แสดงข้อมูล • 4. ปิดการติดต่อฐานข้อมูล
ตัวอย่างการติดต่อฐานข้อมูลตัวอย่างการติดต่อฐานข้อมูล • <?php $host = “localhost”; // กำหนดชื่อ host $user = “”; // กำหนดชื่อล็อกอิน $pass = “”; // กำหนดรหัสผ่าน $db=“project”; // กำหนดชื่อดาต้าเบส @mysql_connect($host, $user, $pass) or die (“ติดต่อ serverไม่ได้”); @mysql_select_db($db) or die (“MySql select database fail”) ; $sql = “select * from user”; // กำหนดคำสั่ง SQL เพื่อแสดงข้อมูล $result = mysql_query($sql)or die (mysql_error()) ; ; //query คำสั่ง SQL $row=mysql_fetch_array($result); $num_rows = mysql_num_rows($result); // ตัวแปรจำนวนเรคคอร์ด echo “แสดงชื่อสมาชิก” . $row[“name”] ; echo “ตาราง user มีจำนวนเรคคอร์ด = ”. $num_rows; ?>
ออกแบบฐานข้อมูล • ตาราง member • username ชื่อเข้าใช้ของสมาชิก • password รหัสผ่านของสมาชิก • name ชื่อ-สกุลสมาชิก • address ที่อยู่ • tel เบอร์โทรศัพท์ • email อีเมล์ของสมาชิก • comment ข้อเสนอแนะ
Member ประกอบด้วยไฟล์อะไรบ้าง • login.php แสดงแบบฟอร์มการล็อกอิน • checklogin.php ตรวจสอบผลการล็อกอิน • register.html แสดงฟอร์มการสมัครสมาชิกใหม่ • checkregister.php รายงานผลการสมัครสมาชิกใหม่