Sử dụng hàm mysqli_connect() để thực hiện kết nối với cơ sở dữ liệu MySQL

Ngày đăng: 30/06/2024   -    Cập nhật: 04/07/2024

Trong bài viết này, chúng ta sẽ tìm hiểu về hàm mysqli_connect() và cách sử dụng nó để kết nối với cơ sở dữ liệu MySQL.

Hàm mysqli_connect là gì?

Trong thế giới lập trình web PHP, việc tương tác với cơ sở dữ liệu là một phần không thể thiếu. Để thực hiện điều này, chúng ta cần thiết lập kết nối an toàn và đáng tin cậy với cơ sở dữ liệu. 

Định nghĩa và chức năng của hàm mysqli_connect()

Hàm mysqli_connect() là một hàm trong PHP được sử dụng để tạo một kết nối đến máy chủ MySQL. Nó là một phần của gói mysqli (MySQL Improved) Extension, là một gói mở rộng cải tiến cho việc kết nối và thao tác với cơ sở dữ liệu MySQL.


Hàm này có nhiệm vụ chính là thiết lập kết nối giữa ứng dụng PHP của bạn và máy chủ MySQL. Một khi kết nối được thiết lập thành công, bạn có thể thực hiện các truy vấn SQL để tạo, đọc, cập nhật và xóa dữ liệu trong cơ sở dữ liệu của mình.

Cú pháp của hàm mysqli_connect()


Cú pháp cơ bản của hàm mysqli_connect() như sau:


mysqli_connect($host, $username, $password, $dbname, $port, $socket)

Trong đó:


$host (bắt buộc): Địa chỉ máy chủ MySQL, thường là "localhost" nếu MySQL được cài đặt trên cùng máy.

$username (bắt buộc): Tên người dùng để đăng nhập vào MySQL.

$password (bắt buộc): Mật khẩu tương ứng với tên người dùng.

$dbname (tùy chọn): Tên cơ sở dữ liệu mà bạn muốn kết nối đến.

$port (tùy chọn): Cổng để kết nối đến máy chủ MySQL (mặc định là 3306).

$socket (tùy chọn): Đường dẫn tới ổ cắm Unix để kết nối với máy chủ MySQL.

Giá trị trả về của hàm mysqli_connect()

Hàm mysqli_connect() trả về một đối tượng mysqli nếu kết nối thành công, hoặc false nếu kết nối thất bại. Bạn có thể sử dụng đối tượng này để thực hiện các truy vấn SQL và tương tác với cơ sở dữ liệu.

Cách sử dụng hàm mysqli_connect()

Để sử dụng hàm mysqli_connect(), bạn cần thực hiện theo các bước sau:


Khai báo và khởi tạo các biến: Trước tiên, bạn cần khai báo và khởi tạo các biến chứa thông tin cần thiết để kết nối với cơ sở dữ liệu, bao gồm địa chỉ máy chủ, tên người dùng, mật khẩu và tên cơ sở dữ liệu.

$host = "localhost";

$username = "root";

$password = "123456";

$dbname = "mydatabase";

Tạo kết nối: Tiếp theo, bạn sử dụng hàm mysqli_connect() để tạo kết nối với cơ sở dữ liệu dựa trên các thông tin đã cung cấp.

$conn = mysqli_connect($host, $username, $password, $dbname);

Kiểm tra kết nối: Sau khi tạo kết nối, bạn nên kiểm tra xem kết nối có thành công hay không. Điều này có thể được thực hiện bằng cách kiểm tra giá trị trả về của hàm mysqli_connect(). Nếu giá trị trả về là false, có nghĩa là kết nối đã thất bại.

if (!$conn) {

    die("Kết nối thất bại: " . mysqli_connect_error());

}

Nếu kết nối thành công, bạn có thể tiếp tục thực hiện các truy vấn SQL và xử lý dữ liệu.

Kết nối với cơ sở dữ liệu MySQL bằng hàm mysqli_connect()

Trong trường hợp MySQL được cài đặt trên cùng máy với ứng dụng PHP của bạn, việc kết nối sẽ rất đơn giản. 
 

Kết nối với máy chủ MySQL cục bộ

Bạn chỉ cần cung cấp thông tin đăng nhập và tên cơ sở dữ liệu.


$host = "localhost";

$username = "root";

$password = "";

$dbname = "mydatabase";


$conn = mysqli_connect($host, $username, $password, $dbname);

if (!$conn) {

    die("Kết nối thất bại: " . mysqli_connect_error());

}

echo "Kết nối thành công!";

Trong ví dụ trên, chúng ta kết nối với cơ sở dữ liệu mydatabase trên máy chủ MySQL cục bộ (localhost) với tên người dùng root và không có mật khẩu.

Kết nối với máy chủ MySQL từ xa

Trong trường hợp máy chủ MySQL nằm trên một máy chủ khác, bạn cần cung cấp địa chỉ IP hoặc tên miền của máy chủ đó.


$host = "192.168.1.100";

$username = "myuser";

$password = "mypassword";

$dbname = "mydatabase";


$conn = mysqli_connect($host, $username, $password, $dbname);

if (!$conn) {

    die("Kết nối thất bại: " . mysqli_connect_error());

}

echo "Kết nối thành công!";

Trong ví dụ này, chúng ta kết nối với cơ sở dữ liệu mydatabase trên máy chủ MySQL có địa chỉ IP 192.168.1.100, với tên người dùng myuser và mật khẩu mypassword.

Kết nối với máy chủ MySQL sử dụng cổng khác

Trong một số trường hợp, máy chủ MySQL có thể được cấu hình để lắng nghe trên một cổng khác ngoài cổng mặc định (3306). Trong trường hợp này, bạn cần cung cấp cổng khi kết nối.


$host = "localhost";

$username = "root";

$password = "";

$dbname = "mydatabase";

$port = 3307;


$conn = mysqli_connect($host, $username, $password, $dbname, $port);

if (!$conn) {

    die("Kết nối thất bại: " . mysqli_connect_error());

}

echo "Kết nối thành công!";

Trong ví dụ này, chúng ta kết nối với cơ sở dữ liệu mydatabase trên máy chủ MySQL cục bộ (localhost), sử dụng tên người dùng root và không có mật khẩu, nhưng lắng nghe trên cổng 3307.


Một số ví dụ về việc sử dụng hàm mysqli_connect()

Kết nối với cơ sở dữ liệu và thực hiện truy vấn INSERT

$host = "localhost";

$username = "root";

$password = "";

$dbname = "mydatabase";


$conn = mysqli_connect($host, $username, $password, $dbname);

if (!$conn) {

    die("Kết nối thất bại: " . mysqli_connect_error());

}


$sql = "INSERT INTO users (username, email, password) VALUES ('john_doe', 'john@example.com', 'mypassword')";


if (mysqli_query($conn, $sql)) {

    echo "Dữ liệu đã được thêm thành công!";

} else {

    echo "Lỗi: " . $sql . "<br>" . mysqli_error($conn);

}


mysqli_close($conn);

Trong ví dụ này, chúng ta kết nối với cơ sở dữ liệu mydatabase và thực hiện truy vấn INSERT để thêm một người dùng mới vào bảng users.

Kết nối với cơ sở dữ liệu và thực hiện truy vấn SELECT

$host = "localhost";

$username = "root";

$password = "";

$dbname = "mydatabase";


$conn = mysqli_connect($host, $username, $password, $dbname);

if (!$conn) {

    die("Kết nối thất bại: " . mysqli_connect_error());

}


$sql = "SELECT * FROM users";

$result = mysqli_query($conn, $sql);


if (mysqli_num_rows($result) > 0) {

    while ($row = mysqli_fetch_assoc($result)) {

        echo "ID: " . $row["id"] . " - Tên: " . $row["username"] . " - Email: " . $row["email"] . "<br>";

    }

} else {

    echo "Không có dữ liệu";

}


mysqli_close($conn);

Trong ví dụ này, chúng ta kết nối với cơ sở dữ liệu mydatabase và thực hiện truy vấn SELECT để lấy dữ liệu từ bảng users. Sau đó, chúng ta in ra thông tin của mỗi người dùng.


Kết luận: hàm mysqli_connect() là một công cụ quan trọng trong thế giới lập trình PHP, giúp bạn thiết lập kết nối an toàn và đáng tin cậy với cơ sở dữ liệu MySQL. Trong bài viết này, chúng ta đã tìm hiểu về định nghĩa, cú pháp, giá trị trả về và cách sử dụng hàm mysqli_connect().

Bình luận Facebook
Khóa học liên quan đến bài viết

KHÓA HỌC LẬP TRÌNH FRONT END VỚI REACT.JS

56 giờ
Học Lập trình Front end hiện đại với ReactJS. Học làm chủ HTML, CSS, JS và thư viện JavaScript phổ biến nhất hiện nay. Sẵn sàng đi thực tập / đi làm ngay sau khóa học.

Khóa học PHP Full stack [2023] cho người mới bắt đầu

96 giờ
Khóa học Lập trình PHP Full stack, phiên bản cập nhật lần thứ 8. Dạy Lập trình PHP bài bản từ Front end đến Back end + Laravel. Hướng dẫn làm 2 Dự Án Web lớn

KHÓA HỌC LẬP TRÌNH PHP WEB

54 giờ
NIIT - ICT Hà Nội cung cấp Khóa học Lập trình Web Fullstack với PHP, phiên bản cập nhật lần thứ 5 (T8/2019). Dạy Lập trình PHP bài bản, chi tiết (từ Front-end đến Back-end)

Khóa học Lập trình Game Unity

40 giờ
Nắm vững các kiến thức C# hướng đối tượng, Có khả năng xây dựng và phát tiển các ý tường game của bản thân. Hiểu được những khái niệm và các vận hành của các tựa Game

LẬP TRÌNH JAVA WEB VỚI FRAME WORK

40 giờ
Khóa học Lập trình JAVA Web với Framework giúp học viên nắm vững các kiến thức hiện nay như: JSF, Hibernate, Spring Boot. Sử dụng tốt một Framework rất nổi tiếng hiện nay là Spring Boot ... Biết cách kết hợp giữa Spring Boot với các công nghệ khác như: JPA, Hibernate, Restful WebServices.

Lập trình Web với Django

30
Khóa học giúp học viên sử dụng thành thạo ngôn ngữ Lập trình Python (3x). Hiểu và phát triển được Ứng dụng Web với Django Framework. Học thực hành với Giảng viên cao cấp.

KHÓA HỌC PYTHON HƯỚNG ĐỐI TƯỢNG

50 giờ
Khóa học giúp học viên sử dụng thành thạo ngôn ngữ Lập trình Python (3x). Hiểu và phát triển được Ứng dụng Web với Django Framework. Học thực hành với Giảng viên cao cấp.

Lập trình PHP với Laravel Framework

42 giờ
Khóa học Lập trình PHP với Laravel Framework được NIIT - ICT HÀ NỘI xây dựng nhằm hoàn thiện kỹ năng lập trình web các các bạn đã biết Lập trình Web PHP thuần.

Khóa học Tiền lương & Phúc lợi (C&B Excel) tại TP HCM

5 buổi
Khai giảng Khóa học C&B Excel tại TP HCM. Khóa học Tiền lương, Bảo hiểm xã hội, Phúc lợi... Sử dụng Excel giải quyết bài toán tính thuế TNCN, quy tình tính bảo hiểm...

KHÓA HỌC ANGULAR & TYPESCRIPT (FRONT END)

48 giờ
Khóa học Angular & TypeScript (Front end) sẽ giúp bạn làm chủ được nền tảng Angular từ đó phát triển được các ứng dụng mạnh mẽ, đa nền tảng.
Mục lục
Đăng ký tư vấn
Nhân viên gọi điện tư vấn miễn phí sau khi đăng ký
Được cập nhật các ưu đãi sớm nhất
Hotline: 0383180086
Tên không được để trống
Số điện thoại không được để trống
Email không được để trống
Hãy đăng ký để nhận những thông tin mới nhất về học bổng mới nhất tại NIIT - ICT Hà Nội
top
Đóng lại Đăng ký học tại NIIT - ICT Hà Nội
6260+ học viên đã theo học tại NIIT - ICT Hà Nội và có việc làm tốt trong ngành lập trình. Nắm lấy cơ hội ngay hôm nay!
Chọn khóa học
  • KHÓA HỌC LẬP TRÌNH FRONT END VỚI REACT.JS
  • KHÓA HỌC LẬP TRÌNH PHP WEB
  • Khóa học PHP Full stack [2023] cho người mới bắt đầu
  • Khóa học BIG DATA với Hadoop và Spark
  • Khóa học Lập trình Android tại Hà Nội
  • [Tuyển sinh 2023] Lập trình viên Quốc tế DigiNxt
  • Khóa học Tiền lương & Phúc lợi (C&B Excel) tại Hà Nội
  • LẬP TRÌNH GAME
    • Khóa học Lập trình Game Unity
  • LẬP TRÌNH WEB FRONT END
    • KHÓA HỌC PYTHON HƯỚNG ĐỐI TƯỢNG
    • KHÓA HỌC ANGULAR & TYPESCRIPT (FRONT END)
  • LẬP TRÌNH WEB BACK END
    • LẬP TRÌNH JAVA WEB VỚI FRAME WORK
    • Lập trình Web với Django
    • Lập trình PHP với Laravel Framework
  • CHƯƠNG TRÌNH ĐÀO TẠO ỨNG DỤNG CÔNG NGHỆ
    • Khóa học Tiền lương & Phúc lợi (C&B Excel) tại TP HCM
  • LẬP TRÌNH WEB FULL STACK
    • Khóa học Java Full stack (IJFD)
  • LẬP TRÌNH MOBILE
    • FRONT-END VỚI REACTJS VÀ REACT NATIVE
    • Lập trình Android Nâng cao
  • ĐÀO TẠO CHO DOANH NGHIỆP
    • KHÓA HỌC BUSINESS ANALYSIC TỪ CƠ BẢN ĐẾN NÂNG CAO 2023
    • Khóa học Magento: Làm chủ CMS TMĐT lớn nhất
    • Khóa học IOT: Xây dựng Sản phẩm IOT với Raspberry Pi
    • Khóa học Automation Testing Chuyên nghiệp
  • KHÓA HỌC DỰ ÁN
    • Học sử dụng bộ Office: Word, Excel, Power Point, Mail chuyên nghiệp
  • KHÓA HỌC KHÁC
    • VBA Excel Toàn Tập (Cơ Bản - Nâng Cao)
    • VBA Excel Nâng cao
    • Khóa học JMeter: Performance Testing
    • Khóa học Tester đạt chuẩn Quốc tế ISTQB Foundation Level
    • Khoá Học Tester đạt chuẩn quốc tế ISTQB Advanced Level
Bạn chưa chọn khóa học cần đăng ký
Tên không được để trống
Số điện thoại không được để trống
Email không được để trống
Đăng ký học thành công!
Cảm ơn bạn đã đăng ký học tại NIIT - ICT HÀ NỘI!