首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

PHP 連接 MySQL 測試與環境配置排錯指南

     編輯:PHP 綜合知識

快速測試腳本

<?php
$link = mysqli_connect('localhost', 'root', '123456');
if (!$link) {
    die('連接失敗: ' . mysqli_connect_error());
}
echo '連接成功!';
mysqli_close($link);
?>

注意:原文使用已棄用的 mysql_* 函數,現代 PHP(5.5+ 棄用,7.0+ 移除)應改用 mysqli 或 PDO。

常見錯誤:Call to undefined function mysql_connect()

這表示 PHP 未載入 MySQL 擴展。排查步驟:

1. 確認擴展檔案存在

  • php_mysqli.dll(PHP 5.3+ 內建 mysqli)
  • libmysql.dll(MySQL 客戶端庫,PHP 5.3+ 通常內建 mysqlnd,不再強制需求)

2. 修改 php.ini 啟用擴展

; 移除前面的分號
extension=mysqli
; PHP 7.2+ 可能需顯式指定
extension=pdo_mysql

3. 確認 extension_dir 路徑正確

extension_dir = "C:/php/ext"

4. 系統 PATH 包含 PHP 目錄

將 PHP 安裝目錄(如 C:\php)加入系統環境變數 PATH,確保 libmysql.dll 可被載入。

5. 重啟 Web 服務器

Apache:httpd -k restart 或服務管理器重啟
Nginx + PHP-FPM:重啟 php-fpm 服務

驗證配置

建立 phpinfo.php:

<?php phpinfo(); ?>

搜尋 mysqli、pdo_mysql、mysqlnd 區塊確認載入成功。

現代最佳實踐:使用 PDO

<?php
try {
    $pdo = new PDO('mysql:host=localhost;dbname=test;charset=utf8mb4', 'root', '123456', [
        PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
        PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
        PDO::ATTR_EMULATE_PREPARES => false,
    ]);
    echo 'PDO 連接成功!';
} catch (PDOException $e) {
    die('連接失敗: ' . $e->getMessage());
}
?>

PDO 提供統一介面、預處理語句防 SQL 注入、支援多種資料庫,是新專案推薦選擇。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved