Nền tảng Kiến thức - Hành trang tới Tương lai
Card image

Chương 5-Bài 5. Tạo API lấy dữ liệu báo cáo thống kê

Tác giả: Dương Nguyễn Phú Cường #8194
Ngày đăng: Hồi xưa đó
Lượt xem: 249

Step 1: tạo API lấy dữ liệu tổng số Mặt hàng

  • Tạo file backend/ajax/baocao-tongsomathang-ajax.php
<?php
// Include file cấu hình ban đầu của `Twig`
require_once __DIR__.'/../../bootstrap.php';

// Truy vấn database để lấy danh sách
// 1. Include file cấu hình kết nối đến database, khởi tạo kết nối $conn
include_once(__DIR__.'/../../dbconnect.php');

// 2. Chuẩn bị câu truy vấn $sql
$sqlquantitySanPham = "select count(*) as quantity from `sanpham`";

// 3. Thực thi câu truy vấn SQL để lấy về dữ liệu
$result = mysqli_query($conn, $sqlquantitySanPham);

// 4. Khi thực thi các truy vấn dạng SELECT, dữ liệu lấy về cần phải phân tích để sử dụng
// Thông thường, chúng ta sẽ sử dụng vòng lặp while để duyệt danh sách các dòng dữ liệu được SELECT
// Ta sẽ tạo 1 mảng array để chứa các dữ liệu được trả về
$dataquantitySanPham = [];
while($row = mysqli_fetch_array($result, MYSQLI_ASSOC))
{
    $dataquantitySanPham[] = array(
        'quantity' => $row['quantity']
    );
}

// Dữ liệu JSON, array PHP -> JSON 
echo json_encode($dataquantitySanPham[0]);

Step 2: tạo API lấy dữ liệu tổng số khách hàng

  • Tạo file backend/ajax/baocao-tongsokhachhang-ajax.php
<?php
// Include file cấu hình ban đầu của `Twig`
require_once __DIR__.'/../../bootstrap.php';

// Truy vấn database để lấy danh sách
// 1. Include file cấu hình kết nối đến database, khởi tạo kết nối $conn
include_once(__DIR__.'/../../dbconnect.php');

// 2. Chuẩn bị câu truy vấn $sql
$sqlquantityKhachHang = "select count(*) as quantity from `khachhang`";

// 3. Thực thi câu truy vấn SQL để lấy về dữ liệu
$result = mysqli_query($conn, $sqlquantityKhachHang);

// 4. Khi thực thi các truy vấn dạng SELECT, dữ liệu lấy về cần phải phân tích để sử dụng
// Thông thường, chúng ta sẽ sử dụng vòng lặp while để duyệt danh sách các dòng dữ liệu được SELECT
// Ta sẽ tạo 1 mảng array để chứa các dữ liệu được trả về
$dataquantityKhachHang = [];
while($row = mysqli_fetch_array($result, MYSQLI_ASSOC))
{
    $dataquantityKhachHang[] = array(
        'quantity' => $row['quantity'] 
    );
}

// Dữ liệu JSON, array PHP -> JSON 
echo json_encode($dataquantityKhachHang[0]);

Step 3: tạo API lấy dữ liệu tổng số Góp ý

  • Tạo file backend/ajax/baocao-tongsogopy-ajax.php
<?php
// Include file cấu hình ban đầu của `Twig`
require_once __DIR__.'/../../bootstrap.php';

// Truy vấn database để lấy danh sách
// 1. Include file cấu hình kết nối đến database, khởi tạo kết nối $conn
include_once(__DIR__.'/../../dbconnect.php');

// 2. Chuẩn bị câu truy vấn $sql
$sqlquantityGopY = "select count(*) as quantity from `gopy`";

// 3. Thực thi câu truy vấn SQL để lấy về dữ liệu
$result = mysqli_query($conn, $sqlquantityGopY);

// 4. Khi thực thi các truy vấn dạng SELECT, dữ liệu lấy về cần phải phân tích để sử dụng
// Thông thường, chúng ta sẽ sử dụng vòng lặp while để duyệt danh sách các dòng dữ liệu được SELECT
// Ta sẽ tạo 1 mảng array để chứa các dữ liệu được trả về
$dataquantityGopY = [];
while($row = mysqli_fetch_array($result, MYSQLI_ASSOC))
{
    $dataquantityGopY[] = array(
        'quantity' => $row['quantity'] 
    );
}

// Dữ liệu JSON, array PHP -> JSON 
echo json_encode($dataquantityGopY[0]);

Step 4: tạo API lấy dữ liệu tổng số Đơn hàng

  • Tạo file backend/ajax/baocao-tongsodonhang-ajax.php
<?php
// Include file cấu hình ban đầu của `Twig`
require_once __DIR__.'/../../bootstrap.php';

// Truy vấn database để lấy danh sách
// 1. Include file cấu hình kết nối đến database, khởi tạo kết nối $conn
include_once(__DIR__.'/../../dbconnect.php');

// 2. Chuẩn bị câu truy vấn $sql
$sqlquantityDonHang = "select count(*) as quantity from `dondathang`";

// 3. Thực thi câu truy vấn SQL để lấy về dữ liệu
$result = mysqli_query($conn, $sqlquantityDonHang);

// 4. Khi thực thi các truy vấn dạng SELECT, dữ liệu lấy về cần phải phân tích để sử dụng
// Thông thường, chúng ta sẽ sử dụng vòng lặp while để duyệt danh sách các dòng dữ liệu được SELECT
// Ta sẽ tạo 1 mảng array để chứa các dữ liệu được trả về
$dataquantityDonHang = [];
while($row = mysqli_fetch_array($result, MYSQLI_ASSOC))
{
    $dataquantityDonHang[] = array(
        'quantity' => $row['quantity'] 
    );
}

// Dữ liệu JSON, array PHP -> JSON 
echo json_encode($dataquantityDonHang[0]);

Step 5: tạo API lấy dữ liệu thống kê Loại sản phẩm

  • Tạo file backend/ajax/baocao-thongkeloaisanpham-ajax.php
<?php
// Include file cấu hình ban đầu của `Twig`
require_once __DIR__.'/../../bootstrap.php';

// Truy vấn database để lấy danh sách
// 1. Include file cấu hình kết nối đến database, khởi tạo kết nối $conn
include_once(__DIR__.'/../../dbconnect.php');

// 2. Chuẩn bị câu truy vấn $sql
$sql = <<<EOT
    SELECT lsp.lproduct_name, COUNT(*) AS quantity
    FROM `sanpham` sp
    JOIN `loaisanpham` lsp ON sp.lsp_ma = lsp.lsp_ma
    GROUP BY sp.lsp_ma
EOT;

// 3. Thực thi câu truy vấn SQL để lấy về dữ liệu
$result = mysqli_query($conn, $sql);

// 4. Khi thực thi các truy vấn dạng SELECT, dữ liệu lấy về cần phải phân tích để sử dụng
// Thông thường, chúng ta sẽ sử dụng vòng lặp while để duyệt danh sách các dòng dữ liệu được SELECT
// Ta sẽ tạo 1 mảng array để chứa các dữ liệu được trả về
$data = [];
while($row = mysqli_fetch_array($result, MYSQLI_ASSOC))
{
    $data[] = array(
        'TenLoaiSanPham' => $row['lproduct_name'],
        'quantity' => $row['quantity'] 
    );
}

// Dữ liệu JSON, array PHP -> JSON 
echo json_encode($data);
 

Chương trình học


  1. Bức tranh tổng thể về Lập trình WEB 1
    1. Sơ đồ vận hành của một Website #1311
  2. Cài đặt môi trường Lập trình PHP 1
    1. Các chương trình cần thiết để Lập trình Web #8136
  3. Thực hiện Dự án PHP thực tế mẫu - sử dụng TWIG template
  4. Dự án thực tế mẫu (TWIG template) - Trang web bán hàng trực tuyến - Thiết kế CSDL 3
    1. Mô hình thiết kế CSDL mẫu NetaShop #7896
    2. Tạo cấu trúc (schema) database netashop #7897
    3. Tạo dữ liệu mẫu (data seed / dummy data) cho netashop #7898
  5. Dự án thực tế mẫu (TWIG template) - Trang web bán hàng trực tuyến - Thiết kế Backend 6
    1. Thiết kế bố cục (layouts) cho giao diện Backend #7900
    2. Tạo chức năng CRUD (Thêm, Sửa, Xóa, Xem) danh mục phẳng #8180
    3. Tạo chức năng CRUD (Thêm, Sửa, Xóa, Xem) danh mục có liên kết khóa ngoại #8183
    4. Tạo chức năng CRUD (Thêm, Sửa, Xóa, Xem) upload hình Sản phẩm (upload đơn, mỗi lần 1 file) #8186
    5. Tạo API lấy dữ liệu báo cáo thống kê #8194
    6. Tạo trang Dashboard #8199
  6. Dự án thực tế mẫu (TWIG template) - Trang web bán hàng trực tuyến - Thiết kế Frontend 11
    1. Thiết kế bố cục (layouts) cho giao diện Frontend #8158
    2. Thực hiện Trang chủ Frontend #8160
    3. Thực hiện Trang Đăng nhập Login #8164
    4. Thực hiện Trang Đăng ký Register #8167
    5. Thực hiện chức năng Kích hoạt Tài khoản #8174
    6. Thực hiện Trang Liên hệ (có gởi mail thông báo) #8178
    7. Thực hiện chức năng Đăng xuất #8192
    8. Thực hiện Trang chi tiết Sản phẩm #8213
    9. Thực hiện Xử lý cho phép Đặt hàng trong trang Chi tiết Sản phẩm #8215
    10. Thực hiện Trang Giỏ hàng #8218
    11. Thực hiện Trang tìm kiếm Sản phẩm #8225
Các bài học

Chương trình học

Bao gồm Module, Chương, Bài học, Bài tập, Kiểm tra...

Chương trình học


  1. Bức tranh tổng thể về Lập trình WEB 1
    1. Sơ đồ vận hành của một Website #1311
  2. Cài đặt môi trường Lập trình PHP 1
    1. Các chương trình cần thiết để Lập trình Web #8136
  3. Thực hiện Dự án PHP thực tế mẫu - sử dụng TWIG template
  4. Dự án thực tế mẫu (TWIG template) - Trang web bán hàng trực tuyến - Thiết kế CSDL 3
    1. Mô hình thiết kế CSDL mẫu NetaShop #7896
    2. Tạo cấu trúc (schema) database netashop #7897
    3. Tạo dữ liệu mẫu (data seed / dummy data) cho netashop #7898
  5. Dự án thực tế mẫu (TWIG template) - Trang web bán hàng trực tuyến - Thiết kế Backend 6
    1. Thiết kế bố cục (layouts) cho giao diện Backend #7900
    2. Tạo chức năng CRUD (Thêm, Sửa, Xóa, Xem) danh mục phẳng #8180
    3. Tạo chức năng CRUD (Thêm, Sửa, Xóa, Xem) danh mục có liên kết khóa ngoại #8183
    4. Tạo chức năng CRUD (Thêm, Sửa, Xóa, Xem) upload hình Sản phẩm (upload đơn, mỗi lần 1 file) #8186
    5. Tạo API lấy dữ liệu báo cáo thống kê #8194
    6. Tạo trang Dashboard #8199
  6. Dự án thực tế mẫu (TWIG template) - Trang web bán hàng trực tuyến - Thiết kế Frontend 11
    1. Thiết kế bố cục (layouts) cho giao diện Frontend #8158
    2. Thực hiện Trang chủ Frontend #8160
    3. Thực hiện Trang Đăng nhập Login #8164
    4. Thực hiện Trang Đăng ký Register #8167
    5. Thực hiện chức năng Kích hoạt Tài khoản #8174
    6. Thực hiện Trang Liên hệ (có gởi mail thông báo) #8178
    7. Thực hiện chức năng Đăng xuất #8192
    8. Thực hiện Trang chi tiết Sản phẩm #8213
    9. Thực hiện Xử lý cho phép Đặt hàng trong trang Chi tiết Sản phẩm #8215
    10. Thực hiện Trang Giỏ hàng #8218
    11. Thực hiện Trang tìm kiếm Sản phẩm #8225

Bài học trước Bài học tiếp theo