PHP 資料庫連線涉及資料庫主機名稱、資料庫名稱、建立連線(mysqli_connect())、錯誤處理(mysqli_error() 和mysqli_errno())、持久連線(mysqli_pconnect()),以及進階特性如預處理語句、事務和實戰案例(讀取用戶資料)。
PHP 資料庫連結的終極指南
前言
與資料庫互動是建立動態web 應用程式的關鍵。 PHP 為建立牢固可靠的資料庫連接提供了各種選項。本文將全面介紹 PHP 資料庫連結的技術,從基礎概念到進階技巧。
資料庫連線基礎
資料庫連線由兩個主要元素組成:
建立連接
要建立與資料庫的連接,可以使用PHP 的mysqli_connect()
函數:
$mysqli = mysqli_connect("localhost", "root", "password", "database_name");
此函數傳回一個mysqli
對象,它表示與資料庫的連接。如果連線失敗,它會傳回 false。
錯誤處理
錯誤處理對於確保連接到資料庫的程式碼的可靠性至關重要。使用mysqli 函數mysqli_error()
和mysqli_errno()
來取得連線錯誤訊息:
if ($mysqli->connect_errno) { echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error; }
持久連線
持久連接有助於提高應用程式的效能,因為它可以重複使用先前建立的連接。若要啟用持久連接,請使用mysqli_pconnect()
函數:
$mysqli = mysqli_pconnect("localhost", "root", "password", "database_name");
進階特性
##預處理語句
預處理語句可以防止SQL 注入攻擊,並提高查詢效能:$stmt = $mysqli->prepare("SELECT * FROM users WHERE username = ?"); $stmt->bind_param("s", $username); $stmt->execute();
#交易
交易允許您將多個資料庫操作組合成一個事務性單元。如果任何操作失敗,整個交易將會回滾:$mysqli->begin_transaction(); $mysqli->query("INSERT INTO orders (product_id, quantity) VALUES (1, 5)"); $mysqli->commit();
實戰案例:讀取使用者資料
假設您有一個users 表,其中包含
id,
username,
email 欄位。建立一個 PHP 腳本來讀取所有使用者資訊:
$mysqli = mysqli_connect("localhost", "root", "password", "database_name"); if ($mysqli->connect_errno) { echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error; } $sql = "SELECT * FROM users"; $result = $mysqli->query($sql); if ($result->num_rows > 0) { while ($row = $result->fetch_assoc()) { echo "ID: " . $row["id"] . "
"; echo "Username: " . $row["username"] . "
"; echo "Email: " . $row["email"] . "
"; } } else { echo "No users found."; } $mysqli->close();
結語
透過遵循本文所述的步驟,您可以建立牢固可靠的 PHP 資料庫連線。利用預處理語句、事務和進階特性,您的程式碼效能和安全性將會提升。以上是PHP資料庫連結的終極指南:涵蓋所有你需要的知識的詳細內容。更多資訊請關注PHP中文網其他相關文章!