|
|
PHP Database ODBC

|
| ODBC ย่อมาจาก Open DataBase Connectivity เป็น Application Programming Interface (API) คือ มาตราฐานในการเข้าถึงข้อมูลที่ถูกกำหนดขึ้น ที่อนุญาตให้คุณเชื่อมต่อฐานข้อมูลอื่นๆ ได้ ซึ่ง ODBC เป็นเสมือนตัวกลางระหว่างโปรแกรมที่เราใช้งาน กับฐานข้อมูลเหล่านั้น เช่น MS Access |
|
| สร้างการเชื่อมต่อแบบ ODBC |
การเชื่อมต่อแบบ ODBC คุณสามารถเชื่อมต่อได้กับหลายฐานข้อมูลบนคอมพิวเตอร์ในเครือข่ายของคุณเองได้ ฐานข้อมูลส่วนใหญ่ที่ใช้การเชื่อมต่อแบบนี้ คือ MS Access มาดูขั้นตอนการเชื่อมต่อฐานข้อมูลกัน:
- เปิด Control Panel แล้วเลือกที่ไอคอน Administrative Tools
- ดับเบิ้ลคลิ้กที่ไอคอน Data Sources (ODBC)
- เลือกแท็ป System DSN แล้วคลิ้กปุ่ม Add
- เลือก Microsoft Access Driver แล้วคลิ้กปุ่ม Finish
- ตั้งชื่อ Data Source และคำอธิบายลงไปในช่อง แล้วคลิ้ก OK
- ในหน้าถัดไป ให้คลิ้กปุ่ม Select เลือกฐานข้อมูลที่เราต้องการเชื่อมต่อ
- หากมีการใช้ไฟล์บริหารกลุ่มงาน (MS Access Workgroup Administrator) เพื่อดูแลและกำหนดสิทธิของผู้ใช้ในการเข้าถึงข้อมูลและส่วนต่างๆในฐานข้อมูลแล้ว จะต้องมีการระบุชื่อไฟล์นั้นไว้ในการสร้าง DSN นี้ด้วย โดยเลือกออปชั่น Database ในกรอบ System Database
- คลิ้กปุ่ม System Database เพื่อเลือกไฟล์บริหารกลุ่มงาน
- คลิ้ก OK แล้วปิด ODBC MS Access Setup ด้วยการคลิ้ก OK อีกครั้ง จะปรากฎ Data Source ที่สร้างขึ้นใหม่
- คลิ้ก OK เพื่อปิด ODBS Data Source Administrator เป็นอันจบกระบวณการ
การเซ็ทคอนฟิกูเรชั่นต้องทำบนเครื่องคอมพิวเตอร์ที่เว็ปไซต์ตั้งอยู่เท่านั้น ถ้าคุณรัน IIS บนเครื่อง PC ของคุณเอง ก็ใช้วิธีที่กล่าวข้างบนได้ แต่ถ้าเว็ปไซต์ของคุณอัพไปเซิร์ปเวอร์แล้ว ต้องไปเซ็ทที่ Control Panel ของเซิร์ปเวอร์นั้นๆ ซึ่งต้องถามทางโฮสติ้งที่คุณใช้อยู่
|
|
วิธีเชื่อมต่อ ODBC
จะคล้ายๆ กับวิธีเชื่อมต่อฐานข้อมูล MySQL แต่ชื่อฟังก์ชั่นจะต่างกัน โดยจะใช้ฟังก์ชั่น odbc_connect() ในการเชื่อมต่อผ่าน ODBC จะมี 4 พารามิเตอร์ คือ ชื่อ Data Source, ชื่อผู้ใช้, รหัสผ่าน และชนิดของเคอร์เซอร์ [ไม่มีก็ได้] จะมี Syntax ดังนี้
| ODBC_CONNECT('Data Source Name','Username','Password'); |
|
ถ้าการเชื่อมต่อไม่สำเร็จจะคืนค่า Connection ID กลับมาเป็นค่า 0 หมายถึง False
เมื่อเชื่อมต่อฐานข้อมูลได้แล้ว การดำเนินการใดๆ กับฐานข้อมูลจะใช้ฟังก์ชั่น odbc_exec() โดยระบุคำสั่ง SQL ลงไป ดังตัวอย่างจะใช้ DSN ชื่อว่า sanook
$con=odbc_connect('sanook','','');
$sql="SELECT * FROM customers";
$rs=odbc_exec($con,$sql); |
|
|
ฟังก์ชั่นสำคัญต่างๆ
ฟังก์ชั่น odbc_fetch_row() เป็นการดึงแถว หรือเรคอร์ดออกมา ถ้ามีค่าแสดงออกมาจะเป็น true ไม่เช่นนั้นจะเป็น false โดยมีพารามิเตอร์ 2 ตัว คือ ค่า ID ของผลลัพธ์ที่ได้จากฟังก์ชั่น odbc_exec() และหมายเลขแถวที่ต้องการดึงข้อมูล หากไม่ระบุจะทำการดึงแถวถัดไป ซึ่งมี syntax ดังนี้
| odbc_fetch_row(result _id, row_number) |
ฟังก์ชั่น odbc_result() เป็นการอ่านค่าในฟิลด์ของรายการผลลัพธ์ มี 2 พารามิเตอร์ คือ ค่า ID ของผลลัพธ์ที่ได้จากฟังก์ชั่น odbc_exec() และหมายเลขฟิลด์ที่ต้องการอ่านค่า โดยฟิลด์แรกจะมีหมายเลขเป็น 1 โค้ดข้างล่างจะให้ค่าฟิลด์แรกของเรคอร์ด
หรือ คุณสามารถใส่ชื่อของฟิลด์แทนหมายเลขฟิลด์ ก็ได้ แบบนี้
| odbc_result($rs,"FirstName"); |
และจบด้วยปิดการเชื่อมต่อกับฐานข้อมูล ด้วยฟังก์ชั่น odbc_close()
|
|
ตัวอย่างการเชื่อมต่อแบบ ODBC
ตัวอย่างข้างล่างนนี้จะแสดงการเชื่อมต่อกับฐานข้อมูลก่อน จนถึงการแสดงข้อมูลออกมาในรูปแบบตาราง HTML
<html>
<body> <?php
$con=odbc_connect('sanook','','');
if (!$conn)
{exit("เชื่อมต่อฐานข้อมูลไม่ได้: " . $con);}
$sql="SELECT * FROM customers";
$rs=odbc_exec($con,$sql);
if (!$rs)
{exit("คำสั่ง SQL ผิดพลาด");}
echo "<table><tr>";
echo "<th>FirstName</th>";
echo "<th>LastName</th></tr>";
while (odbc_fetch_row($rs))
{
$firstname=odbc_result($rs,"FirstName");
$lastname=odbc_result($rs,"LastName");
echo "<tr><td>$firstname</td>";
echo "<td>$lastname</td></tr>";
}
odbc_close($con);
echo "</table>";
?></body>
</html> |
|
|
 |
|
| Advertise |
|
|