Sau khi đã tạo được Database ở bài trước, bước tiếp theo là kết nối PHP với MySQL để có thể đọc và ghi dữ liệu.
Đây là nền tảng cho mọi website động như:
📰 Trang tin tức
🛒 Website bán hàng
👤 Hệ thống thành viên
📚 Quản lý thư viện
🎓 Website học trực tuyến
🎯 Mục tiêu bài học
Sau bài này bạn sẽ biết:
✅ Kết nối MySQL bằng PHP
✅ Sử dụng mysqli_connect()
✅ Kiểm tra lỗi kết nối
✅ Hiển thị thông báo thành công hoặc thất bại
📌 1. Hàm mysqli_connect()
Cú pháp:
mysqli_connect(
$host,
$username,
$password,
$database
);
| Tham số | Ý nghĩa |
|---|---|
| host | Máy chủ MySQL |
| username | Tài khoản MySQL |
| password | Mật khẩu |
| database | Tên Database |
📌 2. Kết nối MySQL đầu tiên
Ví dụ:
<?php
$conn = mysqli_connect(
"localhost",
"root",
"",
"shop_db"
);
?>
Trong Laragon hoặc XAMPP:
Host: localhost
User: root
Password:
thường để trống mật khẩu mặc định.
📌 3. Kiểm tra kết nối
Nếu kết nối sai thông tin, chương trình sẽ lỗi.
Ví dụ:
<?php
$conn = mysqli_connect(
"localhost",
"root",
"",
"shop_db"
);
if(!$conn){
die("Kết nối thất bại");
}
echo "Kết nối thành công";
Kết quả:
Kết nối thành công
📌 4. Hiển thị lỗi chi tiết
MySQL cung cấp hàm:
mysqli_connect_error()
Ví dụ:
<?php
$conn = mysqli_connect(
"localhost",
"root",
"",
"shop_db"
);
if(!$conn){
die(mysqli_connect_error());
}
echo "Kết nối thành công";
Nếu sai database:
"shop_dbx"
Kết quả:
Unknown database 'shop_dbx'
Điều này giúp tìm lỗi nhanh hơn.
📌 5. Tạo file kết nối riêng
Thực tế không ai viết kết nối ở mọi file.
Tạo:
config/
└── database.php
Nội dung:
<?php
$conn = mysqli_connect(
"localhost",
"root",
"",
"shop_db"
);
if(!$conn){
die("Lỗi kết nối: " . mysqli_connect_error());
}
📌 6. Sử dụng lại kết nối
File:
index.php
<?php
require "config/database.php";
echo "Website đã kết nối MySQL";
Lợi ích:
✅ Dễ bảo trì
✅ Sửa một nơi
✅ Chuẩn cấu trúc dự án
📌 7. Đặt charset UTF-8
Nếu không thiết lập charset, tiếng Việt có thể bị lỗi.
Ví dụ:
<?php
$conn = mysqli_connect(
"localhost",
"root",
"",
"shop_db"
);
mysqli_set_charset($conn, "utf8mb4");
Khuyến nghị luôn dùng:
utf8mb4
vì hỗ trợ đầy đủ Unicode và Emoji.
📌 8. Ví dụ hoàn chỉnh
<?php
$conn = mysqli_connect(
"localhost",
"root",
"",
"shop_db"
);
if(!$conn){
die("Lỗi: " . mysqli_connect_error());
}
mysqli_set_charset($conn, "utf8mb4");
echo "🎉 Kết nối MySQL thành công!";
📌 9. Một số lỗi thường gặp
❌ Access denied
Access denied for user
Nguyên nhân:
Sai username
Sai password
❌ Unknown database
Unknown database
Nguyên nhân:
Chưa tạo database
Gõ sai tên database
❌ Can't connect to MySQL server
Can't connect to MySQL server
Nguyên nhân:
MySQL chưa chạy
Port bị đổi
💡 Mẹo thực tế
Trong dự án thật nên:
database.php
chỉ chứa:
<?php
$conn = mysqli_connect(
"localhost",
"root",
"",
"shop_db"
);
mysqli_set_charset($conn, "utf8mb4");
và sử dụng:
require_once "config/database.php";
ở mọi nơi cần truy cập dữ liệu.
🏆 Tổng kết
Sau bài này bạn đã biết:
✅ Kết nối MySQL bằng PHP
✅ Dùng mysqli_connect()
✅ Kiểm tra lỗi kết nối
✅ Hiển thị thông báo lỗi
✅ Thiết lập UTF-8 với utf8mb4
✅ Tách file kết nối để tái sử dụng
👉 Bài tiếp theo:
Bài 23 — INSERT dữ liệu vào MySQL bằng PHP
🎨 Gợi ý hình minh họa retro cho bài viết
🖥️ Một màn hình CRT màu xanh lá hiển thị:
Connecting to MySQL...
Connection Success!
🐘 Logo PHP kiểu pixel art
🗄️ Database server phong cách thập niên 80
⌨️ Lập trình viên đang gõ lệnh trên màn hình DOS cổ điển
x0




Không có nhận xét nào:
Đăng nhận xét