![]() |
|||||||||||||||||
การใช้ PHP ติดต่อกับ Database
DSN & ODBC driver DSN ย่อมาจาก Data Source Name แปลตามตัวก็จะเป็นชื่อที่บอกหรือสามารถอ้างไปหาข้อมูลได้ เราจะใช้ชื่อ DSN นี้แหละครับในการอ้างถึงข้อมูลที่จะนำมาใช้กับ PHP ในบทนี้ ODBC driver ก็ย่อมาจาก Open DataBase Connectivity driver ก็แปลว่าเป็น driver ที่จะใช้ทำหน้าที่ติดต่อกับฐานข้อมูล การที่ต้องอาศัย driver ก็เพราะฐานข้อมูลต่างๆไม่ได้มีความเหมือนกันจึงไม่สามารถเรียกใช้ข้อมูลจากฐานข้อมูลอื่นๆได้โดยตรง ต้องอาศัยโปรแกรมเข้ามาช่วยจัดการให้ เช่นหากจะเข้าไปใช้ข้อมูลของ Access ก็ต้องอาศัยการติดต่อผ่านเข้าไปทาง Access ODBC driver โดยที่ ODBC driver นี้จะมีมาให้พร้อมกับโปรแกรม Access เพื่อให้โปรแกรมอื่นที่ไม่ใช่ Access สามารถใช้ข้อมูลจากฐานข้อมูลของ Access ได้ เช่นเราจะใช้ PHP (ซึ่งก็ไม่ใช่โปรแกรมที่จัดการด้ารฐานข้อมูลโดยตรง) ติดต่อเข้าไปหาข้อมูล ผ่านทาง ODBC นี้แหละครับ Set up DSN ก่อน
เปิดเข้าไปจะได้ดังรูป
จากรูปหากต้องการทราบว่าเครื่องเรามี ODBC driver อะไรบ้างติดตั้งอยู่ก็ click ที่ tab ODBC driver และการกำหนด DSN เพื่อนำไปใช้งานกับ PHP หรือ ASP หรือโปรแกรมอะไรก็ตามที่จะใช้งาน ODBC ก็จะกำหนดที่ DSN ให้ดูจากรูป โดย DSN ที่จะนำไปใช้จะเป็น System DSN ดังที่แสดงในรูป แต่ละ DSN ก็จะถูกำหนดให้ติดต่อกับฐานข้อมูลอะไร ใช้อะไรเป็น OBDC เป็นต้น ดังรูปต่อไปจะเป็นตัวอย่างของ DSN ที่ชื่อ phptest ซึ่งผมกำหนดให้ใช้ในการติดต่อฐานข้อมูล Access แน่นอน ODBC driver ฏ้ย่อมจะเป็นของ Access ครับ ดูรูปเลยครับ
จากรูปจะเป็นว่าตัว DSN นี้จะชี้ไปหาแฟ้มข้อมูลที่ชื่อ nwind.mdb ที่เก็บที่ drive d: หากต้องการเปลี่ยนแปลงแก้ไขก็สามารถทำการ select ใหม่ได้ครับ ทำนองเดียวกันหากยังไม่มี DSN ก็สามารถ Add ขึ้นมาใหม่ แล้วก็มากำหนดค่าต่างๆได้ คิดว่าคงไม่ยาก ลองทำดูนะครับ ฟังก์ชันที่ต้องใช้
ที่บอกครับ เอาแบบข้นๆ ดังนั้นในแต่ละฟังก์ชัน ผมขอให้ดูการเรียกใช้จริงๆ จากตัวอย่างซอร์โค้ดต่อไปนี้ครับ ขอให้ดูไปตามลำดับ ซึ่งฟังก์ชันแต่ละฟังก์ชันจะต้องมีการผ่านค่าเข้าไปด้วยก็พิจารณาดูเป็นตัวๆไปครับ จะมี comment ให้ด้วย ดังนี้ ซอร์ซโค้ด
ที่มา : HTTP://MCU1.PSU.AC.TH |
|||||||||||||||||
| © 2000, Integrated World Tech Co.,Ltd , All Rights Reserved. Thairegister is a service mark of In and Intergrated World Tech Co.,Ltd. Additional copyright and trademark information. | |||||||||||||||||