溫馨提示×

Ubuntu中PHP如何連接數據庫

小樊
58
2025-04-05 15:17:38
欄目: 編程語言

在Ubuntu系統中,PHP可以通過多種方式連接到數據庫。以下是一些常見的數據庫及其連接方法:

1. MySQL/MariaDB

使用mysqli擴展

<?php
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

// 創建連接
$conn = new mysqli($servername, $username, $password, $dbname);

// 檢查連接
if ($conn->connect_error) {
    die("連接失敗: " . $conn->connect_error);
}
echo "連接成功";

// 執行SQL查詢
$sql = "SELECT id, name FROM users";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // 輸出數據
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. "<br>";
    }
} else {
    echo "0 結果";
}
$conn->close();
?>

使用PDO擴展

<?php
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

try {
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    // 設置 PDO 錯誤模式為異常
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "連接成功";

    // 執行SQL查詢
    $stmt = $conn->query("SELECT id, name FROM users");
    while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. "<br>";
    }
} catch(PDOException $e) {
    echo "連接失敗: " . $e->getMessage();
}

$conn = null;
?>

2. PostgreSQL

使用mysqli擴展

<?php
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

// 創建連接
$conn = new mysqli($servername, $username, $password, $dbname);

// 檢查連接
if ($conn->connect_error) {
    die("連接失敗: " . $conn->connect_error);
}
echo "連接成功";

// 執行SQL查詢
$sql = "SELECT id, name FROM users";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // 輸出數據
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. "<br>";
    }
} else {
    echo "0 結果";
}
$conn->close();
?>

使用PDO擴展

<?php
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

try {
    $conn = new PDO("pgsql:host=$servername;dbname=$dbname", $username, $password);
    // 設置 PDO 錯誤模式為異常
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "連接成功";

    // 執行SQL查詢
    $stmt = $conn->query("SELECT id, name FROM users");
    while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. "<br>";
    }
} catch(PDOException $e) {
    echo "連接失敗: " . $e->getMessage();
}

$conn = null;
?>

3. SQLite

使用SQLite3擴展

<?php
$dbname = "your_database.db";

// 創建連接
$conn = new SQLite3($dbname);

// 檢查連接
if (!$conn) {
    die("連接失敗");
}
echo "連接成功";

// 執行SQL查詢
$result = $conn->query("SELECT id, name FROM users");

if ($result) {
    while ($row = $result->fetchArray(SQLITE3_ASSOC)) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. "<br>";
    }
} else {
    echo "查詢失敗";
}

$conn->close();
?>

安裝擴展

確保你已經安裝了所需的PHP擴展。例如,對于MySQL/MariaDB,你可以使用以下命令安裝mysqli和PDO擴展:

sudo apt-get update
sudo apt-get install php-mysql php-pdo

對于PostgreSQL,你可以使用以下命令安裝pdo_pgsql擴展:

sudo apt-get update
sudo apt-get install php-pgsql

配置PHP

確保你的php.ini文件中啟用了所需的擴展。例如,對于MySQL/MariaDB,確保以下行沒有被注釋掉:

extension=mysqli
extension=pdo_mysql

對于PostgreSQL,確保以下行沒有被注釋掉:

extension=pdo_pgsql

重啟你的Web服務器以應用更改:

sudo systemctl restart apache2
# 或者
sudo systemctl restart nginx

通過以上步驟,你應該能夠在Ubuntu系統中使用PHP連接到數據庫。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女