Session 20 - Lab
I. Viết class truy vấn dữ liệu theo hướng đối tượng
Cấu trúc thư mục bài tập hoàn chỉnh như sau
Tạo table
-- Dumping structure for table aptech.users
CREATE TABLE IF NOT EXISTS `users` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`fullname` varchar(50) NOT NULL,
`username` varchar(50) NOT NULL,
`password` varchar(50) NOT NULL,
`gender` bit(1) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `username` (`username`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
Bước 1: Tạo abstract class BaseDataprovider
Class này là abstract class, chứa các phương thức cần có của 1 dataprovider như:
- Tìm theo ID
- Tìm tất cả
Code như sau:
Bước 2: Tạo class con UserDataprovider extends BaseDataprovider
Class con sẽ extends BaseDataprovider và định nghĩa các phương thức abstract.
- Định nghĩa ID
- Định nghĩa bảng
- Định nghĩa cột
Code như sau
Bước 3: Tạo trang danh sách tài khoản
Tạo trang giao diện chứa danh sách tài khoản. Import class UserDataprovider với từ khóa use, sau đó dùng provider này để truy vấn dữ liệu.
Code như sau:
- Giao diện
- index.php
Bước 4: Tạo trang chi tiết tài khoản
Tạo trang giao diện hiển thị chi tiết tài khoản. Import class UserDataprovider với từ khóa use, sau đó dùng provider này để truy vấn dữ liệu.
Code như sau:
II. Tiếp nối bài I, nhưng là danh sách bài Viết
Tạo table
CREATE TABLE IF NOT EXISTS `products` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`code` varchar(10) DEFAULT NULL,
`name` varchar(255) DEFAULT NULL,
`price` decimal(20,6) DEFAULT NULL,
`description` varchar(50) DEFAULT NULL,
`category` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4;
INSERT INTO `products` (`id`, `code`, `name`, `price`, `description`, `category`) VALUES
(1, 'IP0001', 'IPhone X', 11000000.000000, 'IPhone mười xịn xò', 'Điện thoại'),
(2, 'SS0003', 'Samsung A13', 4350000.000000, 'Điện thoại ghẻ', 'Điện thoại'),
(3, 'MTB005', 'Samsung Tab 99', 36500000.000000, 'Máy tính bảng xịn', 'Máy tính bảng');
Bước 1: Tạo class con ProductDataprovider extends BaseDataprovider
Class con sẽ extends BaseDataprovider và định nghĩa các phương thức abstract.
- Định nghĩa ID
- Định nghĩa bảng
- Định nghĩa cột
Code như sau
Bước 2: Tạo trang danh sách sản phẩm
Tạo trang giao diện chứa danh sách sản phẩm. Import class UserDataprovider với từ khóa use, sau đó dùng provider này để truy vấn dữ liệu.
Code như sau:
- Giao diện
- products.php