Hóa đơn sử dụng PHP MySQL

Trong hướng dẫn trước của chúng tôi, bạn đã học cách phát triển Hệ thống quản lý nhà hàng bằng PHP và MySQL. Trong hướng dẫn này, bạn sẽ học cách phát triển Hệ thống thanh toán GST với PHP và MySQL

Hệ thống hóa đơn hoặc hóa đơn GST là một ứng dụng trực tuyến được sử dụng trong các cửa hàng, nhà máy để tạo hóa đơn đặt hàng. Nó cho phép thêm các mặt hàng hoặc chi tiết sản phẩm, tạo người dùng, quản lý thuế và hóa đơn. Hệ thống hóa đơn cung cấp các tính toán tức thời về mặt hàng, số lượng, thuế và tổng số

Ngoài ra, đọc

  • Hệ thống quản lý khách truy cập với PHP & MySQL

Vì vậy, nếu bạn là một lập trình viên PHP và đang tìm kiếm giải pháp để phát triển hệ thống Hóa đơn hoặc Hóa đơn GST của riêng mình, thì bạn đang ở đúng nơi. Trong hướng dẫn này, chúng tôi sẽ đề cập đến hướng dẫn phát triển hệ thống thanh toán với PHP và MySQL


Ở đây trong hướng dẫn này, chúng tôi sẽ phát triển một ví dụ về hệ thống thanh toán trực tuyến và đề cập đến những điều sau đây

Quản trị viên sẽ làm như sau

  • Quản lý Mặt hàng/Sản phẩm
  • Quản lý thuế
  • Quản lý Thanh toán / Hóa đơn
  • Quản lý người dùng

Người dùng bình thường sẽ làm như sau

  • Quản lý Thanh toán / Hóa đơn

Vì vậy, hãy triển khai hệ thống thanh toán trực tuyến. Các tập tin chính là

  • mặt hàng. php
  • thuế. php
  • hóa đơn. php
  • người dùng. php
  • Người sử dụng. php. Lớp người dùng để giữ các phương thức liên quan đến người dùng
  • Mục. php. Lớp vật phẩm để giữ các phương thức liên quan đến các mặt hàng thực phẩm
  • Thuế. php. Lớp thuế để giữ các phương thức liên quan đến thuế
  • Hóa đơn. php. Lớp hóa đơn để giữ các phương thức liên quan đến quản lý hóa đơn

Bước 1. Tạo bảng cơ sở dữ liệu MySQL

Chúng tôi sẽ tạo các bảng cơ sở dữ liệu MySQL. Vì vậy, chúng tôi sẽ tạo bảng

CREATE TABLE `billing_items` [
  `id` int[11] NOT NULL,
  `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `price` decimal[10,2] NOT NULL,
  `category_id` int[11] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
1 để lưu trữ chi tiết đăng nhập của người dùng


CREATE TABLE `billing_user` [
  `id` int[11] UNSIGNED NOT NULL,
  `first_name` varchar[255] DEFAULT NULL,
  `last_name` varchar[255] DEFAULT NULL,
  `gender` enum['Male','Female'] NOT NULL,
  `email` varchar[255] DEFAULT NULL,
  `password` varchar[64] NOT NULL,
  `mobile` varchar[12] NOT NULL,
  `address` text NOT NULL,
  `created` datetime NOT NULL DEFAULT current_timestamp[],
  `role` enum['admin','user'] DEFAULT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8;

ta sẽ tạo bảng

CREATE TABLE `billing_items` [
  `id` int[11] NOT NULL,
  `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `price` decimal[10,2] NOT NULL,
  `category_id` int[11] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
2 để lưu irem/chi tiết sản phẩm

CREATE TABLE `billing_items` [
  `id` int[11] NOT NULL,
  `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `price` decimal[10,2] NOT NULL,
  `category_id` int[11] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

chúng tôi sẽ tạo bảng

CREATE TABLE `billing_items` [
  `id` int[11] NOT NULL,
  `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `price` decimal[10,2] NOT NULL,
  `category_id` int[11] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
3 để lưu trữ chi tiết thuế CGST, SGST, v.v.

CREATE TABLE `billing_tax` [
  `id` int[11] NOT NULL,
  `tax_name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `percentage` decimal[4,2] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL DEFAULT 'Enable'
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

chúng tôi sẽ tạo bảng

CREATE TABLE `billing_items` [
  `id` int[11] NOT NULL,
  `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `price` decimal[10,2] NOT NULL,
  `category_id` int[11] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
4 để lưu trữ chi tiết đơn đặt hàng hoặc hóa đơn

CREATE TABLE `billing_order` [
  `id` int[11] NOT NULL,
  `gross_amount` decimal[12,2] NOT NULL,
  `tax_amount` decimal[12,2] NOT NULL,
  `net_amount` decimal[12,2] NOT NULL,
  `created` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `created_by` int[11] NOT NULL,
  `status` enum['In Process','Paid'] COLLATE utf8_unicode_ci NOT NULL DEFAULT 'In Process'
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

và chúng tôi sẽ tạo bảng

CREATE TABLE `billing_items` [
  `id` int[11] NOT NULL,
  `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `price` decimal[10,2] NOT NULL,
  `category_id` int[11] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
5 để lưu trữ các mặt hàng đặt hàng/chi tiết mặt hàng hóa đơn

CREATE TABLE `billing_order_item` [
  `id` int[11] NOT NULL,
  `order_id` int[11] NOT NULL,
  `item_id` int[11] NOT NULL,
  `quantity` int[4] NOT NULL,
  `rate` decimal[12,2] NOT NULL,
  `amount` decimal[12,2] NOT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

Bước 2. Quản lý Mặt hàng/Sản phẩm

Trong phần này, chúng tôi sẽ quản lý các mặt hàng để hiển thị danh sách các mặt hàng. Chúng tôi sẽ triển khai chức năng thêm các mục mới bằng chỉnh sửa và xóa. Chúng tôi sẽ tạo một phương thức

CREATE TABLE `billing_items` [
  `id` int[11] NOT NULL,
  `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `price` decimal[10,2] NOT NULL,
  `category_id` int[11] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
6 trong lớp
CREATE TABLE `billing_items` [
  `id` int[11] NOT NULL,
  `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `price` decimal[10,2] NOT NULL,
  `category_id` int[11] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
7 để trả về danh sách các mục dưới dạng dữ liệu JSON để tải trong bảng dữ liệu jQuery


CREATE TABLE `billing_user` [
  `id` int[11] UNSIGNED NOT NULL,
  `first_name` varchar[255] DEFAULT NULL,
  `last_name` varchar[255] DEFAULT NULL,
  `gender` enum['Male','Female'] NOT NULL,
  `email` varchar[255] DEFAULT NULL,
  `password` varchar[64] NOT NULL,
  `mobile` varchar[12] NOT NULL,
  `address` text NOT NULL,
  `created` datetime NOT NULL DEFAULT current_timestamp[],
  `role` enum['admin','user'] DEFAULT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8;
2

Chúng tôi sẽ thực hiện phương pháp

CREATE TABLE `billing_items` [
  `id` int[11] NOT NULL,
  `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `price` decimal[10,2] NOT NULL,
  `category_id` int[11] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
8 để chèn các mục

CREATE TABLE `billing_user` [
  `id` int[11] UNSIGNED NOT NULL,
  `first_name` varchar[255] DEFAULT NULL,
  `last_name` varchar[255] DEFAULT NULL,
  `gender` enum['Male','Female'] NOT NULL,
  `email` varchar[255] DEFAULT NULL,
  `password` varchar[64] NOT NULL,
  `mobile` varchar[12] NOT NULL,
  `address` text NOT NULL,
  `created` datetime NOT NULL DEFAULT current_timestamp[],
  `role` enum['admin','user'] DEFAULT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8;
4

Chúng tôi cũng sẽ triển khai phương pháp

CREATE TABLE `billing_items` [
  `id` int[11] NOT NULL,
  `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `price` decimal[10,2] NOT NULL,
  `category_id` int[11] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
9 để cập nhật các mục

CREATE TABLE `billing_user` [
  `id` int[11] UNSIGNED NOT NULL,
  `first_name` varchar[255] DEFAULT NULL,
  `last_name` varchar[255] DEFAULT NULL,
  `gender` enum['Male','Female'] NOT NULL,
  `email` varchar[255] DEFAULT NULL,
  `password` varchar[64] NOT NULL,
  `mobile` varchar[12] NOT NULL,
  `address` text NOT NULL,
  `created` datetime NOT NULL DEFAULT current_timestamp[],
  `role` enum['admin','user'] DEFAULT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8;
6

Bước 3. Quản lý hóa đơn

Trong phần này, chúng tôi sẽ triển khai chức năng quản lý đơn đặt hàng hoặc hóa đơn. Chúng ta sẽ tạo phương thức

CREATE TABLE `billing_tax` [
  `id` int[11] NOT NULL,
  `tax_name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `percentage` decimal[4,2] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL DEFAULT 'Enable'
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
0 trong lớp
CREATE TABLE `billing_tax` [
  `id` int[11] NOT NULL,
  `tax_name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `percentage` decimal[4,2] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL DEFAULT 'Enable'
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
1 để triển khai chức năng liệt kê hóa đơn

CREATE TABLE `billing_user` [
  `id` int[11] UNSIGNED NOT NULL,
  `first_name` varchar[255] DEFAULT NULL,
  `last_name` varchar[255] DEFAULT NULL,
  `gender` enum['Male','Female'] NOT NULL,
  `email` varchar[255] DEFAULT NULL,
  `password` varchar[64] NOT NULL,
  `mobile` varchar[12] NOT NULL,
  `address` text NOT NULL,
  `created` datetime NOT NULL DEFAULT current_timestamp[],
  `role` enum['admin','user'] DEFAULT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8;
9

chúng ta sẽ thực hiện phương pháp

CREATE TABLE `billing_items` [
  `id` int[11] NOT NULL,
  `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `price` decimal[10,2] NOT NULL,
  `category_id` int[11] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
8 trong lớp
CREATE TABLE `billing_tax` [
  `id` int[11] NOT NULL,
  `tax_name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `percentage` decimal[4,2] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL DEFAULT 'Enable'
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
1 để lưu hóa đơn mới với các chi tiết vào bảng
CREATE TABLE `billing_items` [
  `id` int[11] NOT NULL,
  `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `price` decimal[10,2] NOT NULL,
  `category_id` int[11] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
4 và
CREATE TABLE `billing_items` [
  `id` int[11] NOT NULL,
  `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `price` decimal[10,2] NOT NULL,
  `category_id` int[11] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
5

CREATE TABLE `billing_items` [
  `id` int[11] NOT NULL,
  `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `price` decimal[10,2] NOT NULL,
  `category_id` int[11] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
4

chúng ta sẽ thực hiện phương pháp

CREATE TABLE `billing_items` [
  `id` int[11] NOT NULL,
  `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `price` decimal[10,2] NOT NULL,
  `category_id` int[11] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
9 để cập nhật chi tiết hóa đơn vào bảng
CREATE TABLE `billing_items` [
  `id` int[11] NOT NULL,
  `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `price` decimal[10,2] NOT NULL,
  `category_id` int[11] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
4 và
CREATE TABLE `billing_items` [
  `id` int[11] NOT NULL,
  `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `price` decimal[10,2] NOT NULL,
  `category_id` int[11] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
5


CREATE TABLE `billing_items` [
  `id` int[11] NOT NULL,
  `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL,
  `price` decimal[10,2] NOT NULL,
  `category_id` int[11] NOT NULL,
  `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
0

Chúng tôi cũng đã triển khai chức năng quản lý thuế, người dùng trong bản demo trực tiếp với chức năng thêm, chỉnh sửa và xóa

Làm cách nào để tạo hóa đơn PDF từ cơ sở dữ liệu trong PHP?

Chúng tôi sẽ sử dụng chức năng libs của FPDF để tạo tệp pdf có đầu trang và chân trang. .
Bước 1. Chúng ta sẽ tạo bảng employee vào cơ sở dữ liệu MySQL
Bước 2. Hãy kết nối cơ sở dữ liệu MySQL với PHP. Chúng tôi sẽ tạo kết nối. .
Bước 3. Chúng tôi sẽ tạo generate_pdf. php và thêm mã bên dưới
Bước 4. Chúng tôi sẽ tạo chỉ mục

Làm cách nào để tạo biên lai trong PHP?

Cách tạo Biên nhận PDF từ HTML trong PHP .
Tương tác với API. Tạo một tệp PHP mới có tên là chỉ mục. .
Chuẩn bị tải trọng. Gửi trọng tải với đối tượng hướng dẫn. .
Yêu cầu. Bắt đầu bằng cách mở một tệp có tên là kết quả. pdf với chế độ đọc và ghi [ w+ ]. .
Tạo PDF

MySQL có thể được sử dụng với PHP không?

Với PHP, bạn có thể kết nối và thao tác với cơ sở dữ liệu. MySQL là hệ thống cơ sở dữ liệu phổ biến nhất được sử dụng với PHP .

Làm cách nào để tạo hóa đơn PDF có thể in bằng PHP?

php //gọi thư viện FPDF require['fpdf17/fpdf. php']; . 219mm // lề mặc định. 10 mm mỗi bên // có thể ghi ngang. 219-[10*2]=189mm //tạo đối tượng pdf $pdf = new FPDF['P','mm','A4']; . Next, add a blank page using $pdf->AddPage[]; method. Sau đó xuất kết quả bằng $pdf->Output[]; . .

Chủ Đề