⊗ppSpPDCn 56 of 83 menu

การเชื่อมต่อกับฐานข้อมูลผ่าน PDO ใน PHP

มาทำการเชื่อมต่อกับฐานข้อมูลผ่าน PDO กัน เริ่มต้นด้วยการบันทึกข้อมูลการเข้าถึงลงในตัวแปร:

<?php $host = 'localhost'; // ชื่อโฮสต์ (มักจะเป็นแบบนี้เสมอ) $db = 'test'; // ชื่อฐานข้อมูล $user = 'root'; // ชื่อผู้ใช้สำหรับเข้าสู่ฐานข้อมูล $pass = 'root'; // รหัสผ่านสำหรับเข้าสู่ฐานข้อมูล ?>

ตอนนี้เราต้องสร้างสตริง ในรูปแบบพิเศษ ในสตริงนี้ เราต้องระบุ ประเภทของฐานข้อมูลที่ใช้ (โดยทั่วไปคือ 'mysql'), ชื่อโฮสต์ และชื่อฐานข้อมูล:

<?php $dsn = "mysql:host=$host; dbname=$db; charset=utf8"; ?>

จากนั้นสร้างอาร์เรย์ของตัวเลือก PDO, ซึ่งเราจะใช้ใน ระหว่างการทำงาน (ยังไม่ต้องลงลึกถึงรายละเอียดตอนนี้):

<?php $opt = [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, PDO::ATTR_EMULATE_PREPARES => false, ]; ?>

ตอนนี้เราสามารถทำการเชื่อมต่อ กับฐานข้อมูลได้ โดยใช้ตัวแปร ที่ประกาศไว้ข้างต้น:

<?php $pdo = new PDO($dsn, $user, $pass, $opt); ?>

โค้ดด้านบนจะทำการเชื่อมต่อ กับฐานข้อมูลสำเร็จ หรือจะปล่อยข้อยกเว้น (exception) ออกมา ดังนั้นจึงเหมาะสมกว่าที่จะใส่การเชื่อมต่อ ลงในโครงสร้าง try-catch:

<?php try { $pdo = new PDO($dsn, $user, $pass, $opt); echo 'เชื่อมต่อฐานข้อมูลสำเร็จ'; } catch(PDOException $e) { echo "การเชื่อมต่อล้มเหลว: " . $e->getMessage(); } ?>

โค้ดเต็มจะมีลักษณะ ดังนี้:

<?php $host = 'localhost'; $db = 'test'; $user = ''; // ชื่อผู้ใช้สำหรับเข้าสู่ฐานข้อมูล $pass = ''; // รหัสผ่านสำหรับเข้าสู่ฐานข้อมูล $charset = 'utf8'; $dsn = "mysql:host=$host; dbname=$db; charset=$charset"; $opt = [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, PDO::ATTR_EMULATE_PREPARES => false, ]; try { $pdo = new PDO($dsn, $user, $pass, $opt); echo 'เชื่อมต่อฐานข้อมูลสำเร็จ'; } catch(PDOException $e) { echo "การเชื่อมต่อล้มเหลว: " . $e->getMessage(); } ?>

ให้ทำการเชื่อมต่อกับฐานข้อมูลของคุณ ด้วยวิธีที่อธิบายในบทเรียน นี้

ไทย
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣTürkmenTürkçeЎзбекOʻzbekTiếng Việt
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ