Bài 30: Kết nối Cơ Sở Dữ Liệu MYSQL Sử dụng MYSQLI

Ngày đăng: 2024-04-14 06:40:17

Mục lục:

         1. Tạo Database

            2. Kết nối dữ liệu với Database

            3. Truy vấn lấy danh sách Record

            4. Câu lệnh truy vấn delete

            5. Câu lệnh truy vấn update

 

1. Tạo Database

Trước tiên chúng ta tạo một database để test đã nhé, các bạn vào phpmyadmin và tạo một cơ sở dữ liệu tên là demo và tạo một table tên là customer bằng cách chạy câu truy vấn sau:

CREATE TABLE IF NOT EXISTS `customer` (

  `id` INT(11) NOT NULL AUTO_INCREMENT,

  `name` VARCHAR(200) COLLATE utf8_unicode_ci DEFAULT NULL,

  `phone` VARCHAR(200) COLLATE utf8_unicode_ci DEFAULT NULL,

  `address` VARCHAR(500) COLLATE utf8_unicode_ci DEFAULT NULL,

  PRIMARY KEY (`id`)

) ENGINE=INNODB  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ;

 

INSERT INTO `customer` (`id`, `name`, `phone`, `address`) VALUES

(1, 'Nguyen Van A', '0970 306 603', NULL),

(2, 'Nguyen Van B', '0970 306 603', NULL),

(3, 'Nguyen Van C', '0970 306 603', NULL),

(4, 'Nguyen Van D', '0970 306 603', NULL);

Chúng ta sẽ thao tác với dữ liệu này.

2. Kết nối database với php

Để kết nối vào database ta sẽ dùng hàm mysqli_connect với cấu trúc như sau:

mysqli_connect($host, $user, $password, $database, $port, $socket).

 

Trong đó:

  • $host: là địa chỉ host của bạn, thông thường là localhost luôn
  • $user: là tên đăng nhập vào database
  • $password: là mật khẩu kết nối vào database
  • $database: Tên database bạn chọn để xử lý
  • $port: Cổng kêt nối
  • $socket: Phương thức socket kết nối

Ví dụ:

1

$conn = mysqli_connect('localhost', 'root', 'vertrigo', 'demo') or die ('Không thể kết nối tới database');

Tất cả những tham số đó thì ta chỉ quan tâm đến 4 tham số đầu tiên, 2 tham số còn lại bạn khỏi truyền vào nhé. Còn đoạn code or die ('Không thể kết nối tới database') dùng cho trường hợp không thể kết nối tới CSDL thì sẽ in ra màn hình dòng thông báo đó.

3. Câu truy vấn lấy danh sách record

Bạn tạo file demo.php với nội dung như sau:

// Kết nối CSDL và lưu vào biến kết nối

// Các tham số gồm:

// - localhost: là tên server, thường mặc định là localhost luôn

// - root: là tên đăng nhập vào database

// - vertrigo: là mật khẩu đăng nhập vào database

// - demo: Là database sẽ xử lý

$conn = mysqli_connect('localhost', 'root', 'vertrigo', 'demo') or die ('Không thể kết nối tới database');

 

// Câu truy vấn

$sql = 'SELECT * FROM CUSTOMER';

 

// Thực hiện câu truy vấn, hàm này truyền hai tham số vào là biến kết nối và câu truy vấn

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

 

// Nếu thực thi không được thì thông báo truy vấn bị sai

if (!$result){

    die ('Câu truy vấn bị sai');

}

 

// Lặp qua kết quả và in ra ngoài màn hình

// Vì các field trong database là id, name, phone, address nên

// khi vardum mang sẽ có cấu trúc tương tự

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

    var_dump($row);

}

 

// Xóa kết quả khỏi bộ nhớ

mysqli_free_result($result);

 

// Sau khi thực thi xong thì ngắt kết nối database

mysqli_close($conn);

 

Để thực thi câu truy vấn bất kỳ thì ta dùng hàm mysqli_query()nếu câu truy vấn trả về danh sách thì ta sẽ dùng vòng lặp while để hiển thị nó ra. Chi tiết mình đã mô tả trong phần comment rồi nhé.

4. Câu lệnh truy vấn delete

Tương tự như phần 3, bạn sẽ viết một câu truy vấn delete và sau đó dùng hàm mysqli_query() để thực hiện.

Ví dụ:

$conn = mysqli_connect('localhost', 'root', 'vertrigo', 'demo') or die ('Không thể kết nối tới database');

 

// Câu truy vấn

$sql = 'DELETE FROM customer WHERE id = 1';

 

// DELETE

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

    echo 'Xóa thành công';

}

 

// Ngắt kết nối

mysqli_close($conn);

 

5. Câu truy vấn update

Ta sẽ viết một câu truy vấn update và thực thi tương tự như phần 3,4.

Ví dụ:

 

$conn = mysqli_connect('localhost', 'root', 'vertrigo', 'demo') or die ('Không thể kết nối tới database');

 

// Câu truy vấn

$sql = "UPDATE customer SET name = 'TEN MOI' where id = 2";

 

// DELETE

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

    echo 'Cập nhật thành công';

}

 

// Ngắt kết nối

mysqli_close($conn);

 

Về bài trước...

                                 Bài tiếp theo...

 

 


Tài liệu lập trình PHP

Bài viết trong cùng chuyên mục

Góc games giải trí (chơi trực tiếp trên web) Đăng nhập (chơi có thưởng)Hướng dẫn chơi nhận thưởng



Cờ caro


Butterfly


Lật hình (luyện trí nhớ)

Cờ tướng ONLINE

Xếp hình

Ghép hình

15_PUZZLE

Kill ghosts

Banchim

Planet Defense

Tower game

Bắn bóng

Plapy Bird (NH.Đông)

Diablo

Vẽ hình cứu người

Game Phases

Game vui chơi có thưởng

Game bắn cá

Street Fight (Chơi trên điện thoại và máy tính bảng)

Street Fight (Chơi trên máy tính và laptop)



0379136392

Thông tin liên hệ: Lê Văn Thuyên - ĐT: 0379136392 ; Gmail: lethuyen0379136392@gmail.com

 +   Lê Văn Thuyên-0379136392:Cảm ơn quý vị và các bạn đã vào Website của Lê Thuyên! Lê thuyên rất mong nhận được sự góp ý của quý vị và các bạn. Xin chân thành cảm ơn!

 *   Dũng Trung-090567448:Lê Văn Thuyên0379136392--->Ok.Anh!

 *   Bé Nguyễn-benguyen@gmail,com:Lê Văn Thuyên0379136392--->Good job!

 +   KTT-0362497726:Ok! Mình rất thích trang web của bạn.

 +   HoangQuan-0985073641:Cần tạo nhiều game hay nữa em!

 *   Lê Thuyên-0379136391:HoangQuan0985073641--->Ok! Em cảm ơn anh ạ!

 +   Lê Dương-0393499146:Làm thêm game 3D nữa?

 *   Lê Thuyên-0379136392:Lê Dương0393499146--->Sắp có game 3D hay rồi.Tuyệt phẩm nhé kkk

 *   Lê Dương-0393499146:Lê Dương0393499146--->Game Street Fight mới chỉ chơi được trên máy tính phải không anh Titoe?

 *   Lê Thuyên-0379136392:Lê Dương0393499146--->Ừ Em. Anh đang làm điều khiển cho phần Smathhome em.

 *   Lê Thuyên-0379136392:Lê Dương0393499146--->Game Street Fight đã chơi được trên điện thoại rồi nhé em.

 +   L.Ngư-0906744578:Nghiên cứu tích hợp sàn giao dịch tiền ảo đi cu.

 *   Lê Thuyên-0379136392:L.Ngư0906744578--->Đang nghiên cứu Grandma.

 +   Nguyễn Tuyển-0909615882:Thiết kế web đa ngôn ngữ đi em.

 *   Lê Thuyên-0379136392:Nguyễn Tuyển0909615882--->Ok chị!

378047