Tải bản đầy đủ (.docx) (125 trang)

đồ án lập trình web C

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.8 MB, 125 trang )

TRƯỜNG ĐẠI HỌC TÀI CHÍNH – MARKETING
KHOA CƠNG NGHỆ THƠNG TIN

ĐỒ ÁN HỌC PHẦN
TÊN HỌC PHẦN: LẬP TRÌNH WEB (4 tín chỉ)
MÃ SỐ LỚP HP: 2111112005701

Tên đề tài: Lập trình phát triển WebApp bán gia vị các loại trực tuyến
(online)

Họ tên sinh viên: Nguyễn Thu Hằng [05]
Mã số sinh viên: 1921006685
Lớp: 19DHT03[G1]
Ngày nộp: 03/12/2021
Ký tên:


TP.HCM, ngày 26 tháng 11 năm 2021

TRƯỜNG ĐẠI HỌC TÀI CHÍNH – MARKETING
KHOA CƠNG NGHỆ THƠNG TIN

ĐỀ TÀI ĐỒ ÁN HỌC PHẦN
TÊN HỌC PHẦN: LẬP TRÌNH WEB (4 tín chỉ)
MÃ SỐ LỚP HP: 2111112005701

Tên đề tài: Lập trình phát triển Webapp bán các loại gia vị online
Giảng viên giảng dạy: ThS. GVC. Võ Xuân Thể
Sinh viên thực hiện: Nguyễn Thu Hằng[05]
Mã số sinh viên: 1921006685
Lớp: 2111112005701 [G1]



Tên sản phẩm đề tài : G105NTHANG_DAHP_NhauOnline (.Net framework 4.6.1, Visual Studio 2017)
Phần quản lý có 2 Accounts: Admin với Password = admin@vn VÀ Guest với password = guest@vn
Tên DB SQL: 1G105NguyenThuHangGIAVIONLINE.bak (MS. SQL 2017)

Local:
Máy chủ MS SQL Server: DESKTOP-R53LJ7F\SQLEXPRESS

Tên đăng nhập DB SQL: sa
Mật khẩu (password) đăng nhập SQL: 123456789
Online some.com:
MS SQL Server address:1G105NGUYENTHUHANGGIAVION.mssql.somee.com
Login name:
G1GIAVIONLINE_SQLLogin_1
Login password:
3hsrur7sgn
URL:

or
Nhận xét của giảng viên:
………………………………………………………..
………………………………………………………..
Điểm đánh giá:………….(…………………)
Ngày……./……../2021
Giảng viên Ký tên

- 2-


TP.HCM, ngày 26 tháng 11 năm 2021


LỜI CẢM ƠN
Trong lời đầu tiên của báo cáo đồ án tốt nghiệp “Lập trình phát triển Webapp bán các
loại gia vị online” này, em muốn gửi những lời cám ơn và biết ơn chân thành nhất của mình
tới tất cả những ngƣời đã hỗ trợ, giúp đỡ em về kiến thức và tinh thần trong quá trình thực
hiện đồ án.
Em xin chân thành cảm ơn sự giúp đỡ của ThS. GVC. Võ Xuân Thể, giảng viên khoa
Công Nghệ Thông Tin, Trường Đại Học Tài Chính Marketing, người đã trực tiếp hướng
dẫn, nhận xét, giúp đỡ em trong suốt quá trình thực hiện đồ án này.
Xin chân thành cảm ơn các thầy cô trong khoa cơng nghệ thơng tin và các phịng ban
nhà trường đã tạo điều kiện tốt nhất cho em cũng như các bạn khác trong suốt thời gian học
tập tại trường.
Do thời gian thực hiện có hạn, kiến thức cịn nhiều hạn chế nên đồ án này chắc chắn
không tránh khỏi những thiếu sót nhất định. Em rất mong nhận được ý kiến đóng góp của
thầy cơ giáo và các bạn để chính bản thân em có thêm kinh nghiệm và tiếp tục hồn thiện
hơn nữa đồ án của mình.
Em xin chân thành cảm ơn!
Nguyễn Thu Hằng

- 3-


DANH MỤC CÁC TỪ VIẾT TẮT
CSDL hoặc DB

Cơ sở dữ liệu: DataBase

HQTCSDL = DBMS

Hệ quản trị Cơ sở dữ liệu


NSD = Users = Account

Người Sử Dụng = là quyền làm việc trên WebApp được đảm
bảo bởi tối thiểu là 2 yếu tố: tên đăng nhập (Username) và mật
khẩu (Password)

CAPTCHA

Completely Automated Public Turing test to tell Computers
and Humans Apart: phép kiển tra để đảm bảo người truy xuất
dịch vụ web có ý thức.

Digital ID

Digital Identification: Chữ ký số

e-Doc

e-Document: Chứng từ điện tử

MS
OS
PC
PIN
SQL

Cơng ty Microsoft
Operating System: Hệ điều hành
Personal Computer: Máy tính cá nhân

Personal Identification Number: Mã số nhận diện cá nhân
Ngôn ngữ vấn tin có cấu trúc: Structured Query Language
An tồn và bảo mật hệ thống thông tin: Safety and
Security of Information Systems
Uniform Resource Locator = địa chỉ thống nhất trên mạng
máy tính, đặc biệt là Internet, cho phép định vị các tài
nguyên dịch vụ ứng dụng, đặc biệt là trang điện tử đa
phương tiện (Multimedia), ví dụ: địa chỉ web, …
Virtual Private Network: mạng riêng ảo.
Virtual Machine Software: Phần mềm máy ảo
Web Application Software: phần mềm ứng dụng dạng
Web
Random Access Memory: bộ nhớ chính của máy tính và
các hệ thống điều khiển

SSIS

URL
VPN
VMWARE
WebApp
RAM

- 4-


DANH MỤC CÁC THUẬT NGỮ
Giao diện người dùng

Là hệ thống các màn hình giao tiếp cho phép người sử dụng

tương tác với các thành phần hệ thống, điều khiển hệ thống
hoạt động theo yêu cầu của người dùng - tương ứng các
chức năng hiện có của phần mềm.

Mạng xã hội: Social Network 1Mạng xã hội là dịch vụ dựa trên nền tảng công nghệ (Công
= Social Media
nghệ Web hoặc công nghệ App trên SMART Phone) cho
phép nối kết các thành viên trên mạng Internet (là các tài
khoản người làm việc trên mạng thông qua e-mail, số điện
thoại hoặc các dạng thơng tin nhận diện cá nhân nào đó) lại
với nhau với nhiều mục đích khác nhau khơng phân biệt
khơng gian và thời gian. Thông thường các thành viên tham
gia vào một mạng xã hội nào đó sẽ hình thành một cơng
đồng mạng xã hội có gần như cơ bản các hoạt động xã hội
như công đồng dân cư thực tế, nhưng tất cả đều dựa trên
tương tác “ảo” trên Internet. Các thành viên trên một mạng
xã hội có thể gơm nhóm lại với nhau dựa trên cơ sở chung
nhau một số yếu tố nào đó, như: cùng sở thích, cùng nhóm
làm việc, cùng cộng đồng xã hội, …
Người dùng (User):
Tài khoản (Account)

Là một quyền làm việc trên hệ thống được cấp phát cho một
cá nhân thông qua tên tài khoản (username) và mật khẩu
(password).

Trực tuyến = Online

Là các hoạt động được thực hiện từ xa thông qua các dịch
vụ trên Internet, đặc biệt là dịch vụ Web


Firewall

Bức tường lửa

Network

Mạng máy tính

Intranet

Mạng nội bộ

Internet

Mạng tồn cầu (International Network)

Extranet

Mạng ngoại bộ / VPN

Host Web

Là không gian lưu trữ và phát hành WebApp (Websites) trên
mạng máy tính, đặc biệt là mạng Internet

MỤC LỤC
1 Đây là khái niệm về “Mạng xã hội” [SN] theo Giảng viên học phần: Võ Xuân Thể

- 5-



KHOA CÔNG NGHỆ THÔNG TIN

PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN HỌC PHẦN
Giảng viên: ThS. GVC. Võ Xuân Thể
Tên học phần: Lập trình web (4 tín chỉ); Mã lớp HP: 2111112005701
Tên đề tài: Lập trình phát triển WebApp gia vị các loại trực tuyến (online)
Sinh viên thực hiện: Nguyễn Thu Hằng,

1921006685

Thời gian thực hiện: 30/08/2021 đến 26/11/2021
Yêu cầu của ĐỒ ÁN HỌC PHẦN & Cơ cấu điểm
Lý thuyết: Cơ sở lý thuyết HP Lập trình Web (4 tín chỉ) bao gồm lập trình Web giao dịch và lập
trình Web quản lý trên nền tảng Cơng nghệ ASP.NET
Thực hành:
Lập trình phát triển WebApp gia vị các loại trực tuyến (online), bao gồm 2 phần:
+ Giao dịch mua các loại gia vị
. Main.Master: Mẫu trang giao dịch kiêm quản lý các mặt hàng gia vị được bày bán trang
webapp
. homepage.aspx: Trang chủ, trưng bày các mẫu gia vị các loại;
. giohang.aspx: Giỏ hàng các sản phẩm gia vị mà khách hàng đang chọn mua. Đối tượng giả
hàng là ở trên bộ nhớ trong (RAM);
. dathang.aspx: Đặt mua các sản phẩm đã có trong giỏ hàng, tiến hành thanh toán;
+ Master Quản lý Main.Master: Sử dụng Master Giao dịch (nêu trên)
. Quản lý chung: có xử lý đăng nhập Login
. Quản lý gia vị, các loại gia vị, nhân viên, kho hàng, tồn kho các chức năng: Thêm, Xóa, Sửa,
RBTV;
. Chuyển Nhóm gia vị các loại

+ Phát hành WebApp lên Host miễm phí: somee.com

Ngày 30 tháng 08 năm 2021
SV Thực hiện

GIẢNG VIÊN

- 6-


Chương 1:

GIỚI THIỆU ĐỒ ÁN CỦA HP

1.1. Tổng quan về ĐỒ ÁN HỌC PHẦN
Đồ án học phần thiết kế và lập trình phát triển WebApp bán các loại gia vị.trực tuyến
trên nền tảng công nghệ ASP.NET : phiên bản 4.6.1 với cơng cụ MS.Visual Studio.NET
2017, dùng ngơn ngữ lập trình C#.NET: G105NTHANG_DAHP_GIAVIONLINE
Hệ thống WebApp nêu trên được triển khai thực nghiệm trên Host Web của
www.somee.com với URL là:
/>
hoặc

/>
Hệ thống CSDL dùng cho WebApp nên trên 1G105NguyenThuHangGIAVIONLINE .bak
(MS. SQL 2017) được thiết kế và cập nhật trên MS. SQL Server 2017 (trên somee là : MS
SQL 2019 Express)

1.2. Nội dung chuyên mơn chính của ĐỒ ÁN HỌC PHẦN
Vận dụng kiến thức về thiết kế và lập trình WebApp 1 lớp trên nền tảng công nghệ

ASP.NET vào việc phát triển một WebApp đơn giản sử dụng trong thực tiễn là: Hệ thống
Websites bán các loại gia vị trực tuyến.

1.3. Công cụ và nền tảng kỹ thuật thực hiện ĐỒ ÁN HỌC PHẦN
+ ASP.NET 4.6.1 trên MS. Visual Studio .NET 2017
+ Hệ quản trị CSDL MS. SQL Server 2017 trên Local
+ Free Host Web: some.com

1.4. Sản phẩm của ĐỒ ÁN HỌC PHẦN
+ Hệ thống WebApp bán gia vị các loại trực tuyến (online) dạng Local trên PC:
G105NTHANG_DAHP_GIAVIONLINE

+ Hệ thống WebApp bán gia vị các loại trực tuyến (online) dạng Online trên somee:
http:// giavionlinetoanquoc.somee.com hoặc />
1.5. Bố cục của báo cáo
Báo cáo gồm những nội dung như sau:
- 7-


Chương 1 Giới thiệu đồ án của HP là Hệ thống WebApp bán gia vị các loại Online
Chương 2 Các cơ sở lý thuyết của HP Lập trình Web (4 TC) phục việc thực hiện đề tài HP
Chương 3 Thiết kế và cập nhật CSDL phục vụ WebApp bán gia vị các loại Online
Chương 4 Thiết kế và lập trình WebApp phần giao dịch trực tuyến của khách hàng mua các loại
gia vị
Chương 5 Thiết kế và lập trình WebApp phần quản lý trực tuyến của cơ sở bán gia vị các
loại Online
Chương 6 Triển khai và phát hành WebApp bán gia vị các loại Online trực tuyến trên Host:
somee
Chương 7 Tổng kết các kết quả đạt được và còn hạn chế của đồ án, đồng thời đề xuất
hướng khắc phục hạn chế và phát triển Đồ án.


- 8-


Chương 2:

CƠ SỞ LÝ THUYẾT CỦA HỌC PHẦN

2.1. Giới thiệu về lập trình WebApp trên ASP.NET
ASP.NET là một nền tảng ứng dụng web (web application framework) được phát triển
và cung cấp bởi Microsoft, cho phép những người lập trình tạo ra những trang web động,
những ứng dụng web và những dịch vụ web. Lần đầu tiên được đưa ra thị trường vào tháng
1 năm 2002 cùng với phiên bản 1.0 của.NET framework, là công nghệ nối tiếp của
Microsoft's Active Server Pages(ASP). SP.N T được biên dịch dưới dạng Common
Language Runtime (CLR), cho phép những người lập trình viết mã ASP.NET với bất kỳ
ngôn ngữ nào được hỗ trợ bởi.NET language. 1.1.2. Những ƣu điểm nổi bật của ASP.NET ASP.Net cho phép bạn lựa chọn một trong các ngôn ngữ lập trình mà bạn u thích Visual
Basic.Net, J#, #,… - Trang SP.Net được biên dịch trước. Thay vì phải đọc và thông dịch mỗi
khi trang web được yêu cầu, ASP.Net biên dịch những trang web động thành những tập tin
DLL mà Server có thể thi hành nhanh chóng và hiệu quả. Yếu tố này là một bước nhảy vọt
đáng kể so với kỹ thuật thơng dịch của ASP.

Hình 2.1 ASP.NET trong .Net Framework

- 9-


Hình 2.2 Hệ thống namespace

ASP.Net là kỹ thuật lập trình và phát triển ứng dụng web ở phía Server trên môi trường
Visual Studio .Net


2.2. Phát triển WebApp ASP.NET đơn giản có CSDL dùng ADO.NET
ADO là viết tắt của Microsoft ActiveX Data Objects. ADO.NET là một trong những
công nghệ truy cập dữ liệu của Microsoft. Nó là một phần của .Net Framework được sử
dụng để thiết lập kết nối giữa ứng dụng .NET và các nguồn dữ liệu.
Các nguồn dữ liệu có thể là SQL Server, Oracle, MySQL, XML, .... ADO.NET bao
gồm một tập hợp các lớp có thể được sử dụng để kết nối, truy xuất, chèn và xóa dữ liệu khỏi
nguồn dữ liệu. ADO.NET chủ yếu sử dụng System.Data.dll và System.Xml.dll.
ADO.NET có thể được sử dụng để phát triển bất kỳ loại ứng dụng .NET nào. Sau đây
là một số ứng dụng .NET mà bạn có thể sử dụng công nghệ truy cập dữ liệu ADO.NET để
tương tác với nguồn dữ liệu.
• ASP.NET Web Form Applications
• Windows Applications
• ASP.NET MVC Applications
- 10 -


• Console Applications
• ASP.NET Web API Applications
Các thành phần (Components) của ADO.NET

Hình 2.3 Các thành phần ADO.NET

Các Compnents của ADO.NET được thiết kế để thao tác dữ liệu và truy cập
nhanh vào dữ liệu. Connecton, Command, DataReader, DataAdapter, DataSet và
DataView là các Components của ADO.NET được sử dụng để thực hiện các hoạt động
cơ sở dữ liệu. ADO.NET có hai thành phần chính được sử dụng để truy cập và thao tác
dữ liệu như sau:
• Data Provider
ADO.net chứa các khơng gian tên cho phép người dùng truy cập, thao tác với cơ

sở dữ liệu. Với mỗi hệ quản trị cơ sở dữ liệu tương ứng có các lớp khác nhau.
+

Data.OleDb: Access, SQL Server, Oracle

+

Data.SqlClient: SQL Server
- 11 -


+

Data.OracleClient: Oracle

Đặc điểm:
Cả ba thư viện trên về giao tiếp lập trình là giống nhau. Dùng thư viện SqlClient truy
xuất SQL Server nhanh hơn OleDb
• DataSet
Là thành phần chính của kiến trúc không kết nối cơ sở dữ liệu, được dùng để nắm giữ
dữ liệu của mọi cơ sở dữ liệu và cho phép thay đổi dữ liệu bên trong đối tượng này để sau
đó cập nhật trở lại cơ sở dữ liệu nguồn bằng phương thức Update của đối tượng
DataAdapter.

2.3. Master Page = Mẫu trang web
2.3.1.

Căn bản về MASTER PAGE

2.3.1.1.Khái niệm Masterpage (mẫu trang web)

Trong một hệ thống website thường sẽ có nhiều trang con khác nhau, mỗi trang sẽ phụ
trách một mảng nội dung nào đó, có thể kết cấu trang cũng có những điểm khác biệt nhất
định nhưng tất cả sẽ được thiết kế theo một khuôn mẫu nào đó, và áp dụng chung cho tất cả
các trang. Khuôn mẫu này thường chúng ta sẽ gọi là Theme hay Template, cịn trong
ASP.Net có khái niệm MasterPage. MasterPage là một trang dùng để tạo ra cấu trúc giao
diện chung cho các trang web trong hệ thống, những trang thừa kế từ MasterPage sẽ áp
dụng lại giao diện mẫu của nó. Trong một website của thể có 1 hoặc nhiều MasterPage.
Trong MasterPage được chia thành 2 phần:
• Phần chung: Đây là giao diện chung áp dụng cho những trang con kế thừa từ nó
• Phần riêng: Đây là nơi chứa nội dung riêng của từng trang.
Master pages cho phép tạo 1 bố cục nhất định nhất quán trên các trang web trong cùng
1 website.
Nội dung thể hiện trên trình duyệt là sự kết hợp giữa trang .master- master page và
trang .aspx (hoặc .ascx) – content page.
- 12 -


Master page là tập tin có phần mở rộng .master
Thao tác thiết kế: giống như trang aspx, nhưng phải bổ sung ít nhất một điều khiển
ContentPlaceHolder

2.3.1.1.1. Ưu điểm
Trang chính cung cấp chức năng mà các nhà phát triển đã tạo ra theo truyền thống
bằng cách sao chép nhiều lần mã, văn bản và phần tử điều khiển hiện có; sử dụng bộ khung;
sử dụng các tệp bao gồm cho các phần tử chung; sử dụng điều khiển người dùng ASP.NET;
và như thế. Ưu điểm của trang chủ bao gồm những điều sau:
• Chúng cho phép bạn tập trung chức năng chung của các trang để bạn có thể cập
nhật chỉ ở một nơi.
• Chúng giúp bạn dễ dàng tạo một bộ điều khiển và mã và áp dụng kết quả cho
một nhóm trang. Ví dụ: bạn có thể sử dụng các điều khiển trên trang chính để

tạo menu áp dụng cho tất cả các trang.
• Chúng cung cấp cho bạn khả năng kiểm soát chi tiết đối với bố cục của trang
cuối cùng bằng cách cho phép bạn kiểm soát cách các điều khiển trình giữ chỗ
được hiển thị.
• Họ cung cấp một mơ hình đối tượng cho phép bạn tùy chỉnh trang chính từ các
trang nội dung riêng lẻ.

2.3.1.1.2. Số lượng Masterpage trong 1 Websites
2.3.1.1.3. Các thành phần trên Masterpage
1.

Master Pages

Trang chính là tệp ASP.NET có phần mở rộng .master (ví dụ: MySite.master) với bố
cục được xác định trước có thể bao gồm văn bản tĩnh, phần tử HTML và điều khiển máy
chủ. Trang chính được xác định bằng lệnh @ Master đặc biệt thay thế lệnh @ Trang được sử
dụng cho các trang .aspx thông thường. Chỉ thị trông giống như sau.
<%@ Master Language="C#" %>

- 13 -


Chỉ thị @ Master có thể chứa hầu hết các chỉ thị giống như chỉ thị @ Control có thể
chứa. Ví dụ: chỉ thị trang chính sau đây bao gồm tên của tệp mã phía sau và gán tên lớp cho
trang chính.
<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="main.master.cs"
Inherits="_1G105NGUYENTHUHANGGIAVI.main" %>

Ngồi chỉ thị @ Master, trang chính cũng chứa tất cả các phần tử HTML cấp cao nhất
cho một trang, chẳng hạn như html, head và form. Ví dụ: trên trang chính, bạn có thể sử

dụng bảng HTML cho bố cục, phần tử img cho biểu trưng công ty của bạn, văn bản tĩnh cho
thông báo bản quyền và các điều khiển máy chủ để tạo điều hướng tiêu chuẩn cho trang web
của bạn. Bạn có thể sử dụng bất kỳ HTML và bất kỳ phần tử ASP.NET nào như một phần
của trang chính của bạn.
2.

Replaceable Content Placeholders

Ngoài văn bản tĩnh và các điều khiển sẽ xuất hiện trên tất cả các trang, trang chính
cũng bao gồm một hoặc nhiều điều khiển ContentPlaceHolder . Các điều khiển trình giữ chỗ
này xác định các khu vực nơi nội dung có thể thay thế sẽ xuất hiện. Đổi lại, nội dung có thể
thay thế được xác định trong các trang nội dung. Sau khi bạn đã xác định các điều khiển
ContentPlaceHolder Content Pages
Bạn xác định nội dung cho các điều khiển trình giữ chỗ của trang chính bằng cách tạo
các trang nội dung riêng lẻ, là các trang ASP.NET (tệp .aspx và, tùy chọn, các tệp mã phía
sau) được liên kết với một trang chính cụ thể. Liên kết được thiết lập trong chỉ thị @ Page
của trang nội dung bằng cách bao gồm thuộc tính MasterPageFile trỏ đến trang chính sẽ
được sử dụng.
3.

Content Pages

Trong trang nội dung, bạn tạo nội dung bằng cách thêm các điều khiển Nội dung và
ánh xạ chúng tới các điều khiển ContentPlaceHolder trên trang chính. Ví dụ: trang chính có
thể có các trình giữ chỗ nội dung được gọi là Chính và Chân trang. Trong trang nội dung,
bạn có thể tạo hai điều khiển Nội dung , một điều khiển được ánh xạ tới Chính điều khiển
ContentPlaceHolder và điều khiển còn lại được ánh xạ tới Chân trang điều khiển
ContentPlaceHolder , như thể hiện trong hình sau.
- 14 -



Hình 2.4 Ánh xạ tới chân trang điều khiển

Sau khi tạo các điều khiển Nội dung , bạn thêm văn bản và các điều khiển vào chúng.
Trong một trang nội dung, bất kỳ thứ gì khơng nằm trong các điều khiển Nội dung (ngoại
trừ các khối tập lệnh cho mã máy chủ) đều dẫn đến lỗi. Bạn có thể thực hiện bất kỳ tác vụ
nào trong một trang nội dung mà bạn thực hiện trong một trang ASP.NET. Ví dụ: bạn có thể
tạo nội dung cho Kiểm sốt nội dung bằng cách sử dụng các điều khiển máy chủ và truy vấn
cơ sở dữ liệu hoặc các cơ chế động khác.
Lệnh Page liên kết trang nội dung với một trang chính cụ thể và nó xác định tiêu đề
cho trang sẽ được hợp nhất vào trang chính. Lưu ý rằng trang nội dung khơng có đánh dấu
nào khác ngồi các điều khiển Nội dung . (Trang chính phải chứa phần tử head có thuộc tính
runat = "server" để cài đặt tiêu đề có thể được hợp nhất tại thời điểm chạy.). Bạn có thể tạo
nhiều trang chính để xác định các bố cục khác nhau cho các phần khác nhau của trang web
và một tập hợp các trang nội dung khác nhau cho mỗi trang chính.

2.3.1.2.Các bước thực hiện
Bước 1: Tạo master page

- 15 -


Hình 2.5 Tạo trang master trên Visual Studio

Trang m.master được sinh ra với mã ASP.NET mặc định như sau:
<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="m.master.cs"
Inherits="test.m" %>
<!DOCTYPE html>
<html>
<head runat="server">

<title></title>
<asp:ContentPlaceHolder ID="head" runat="server">
</asp:ContentPlaceHolder>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
</div>
</form>
</body>
</html>

Các vùng giữa các thẻ <asp:ContentPlaceHolder> (tạm dịch giữ chổ cho nội dung) sẽ
được thay thế bởi nội dung của các trang áp dụng master page này.

- 16 -


2.3.1.3.Xây dựng Mẫu trang (Masterpage)
2.3.1.3.1. Thiết kế Masterpage
Trong bài này chúng ta thiết kế một master page có layout riêng của mình vì vậy bạn
thay nội dung trang master trên thành:

2.3.1.3.2. VIẾT THỦ TỤC ẨN / HIỆN Login
Hàm khi page_load chạy thì sẽ ẩn đi cơng cụ login vào hệ thống:
protected void Page_Load(object sender, EventArgs e)
{


Loginql.Visible = false;

}

Hàm khi người dùng ấn trên thanh menu là đăng nhập thì sẽ hiện ra công cụ login
ngay trên trang master:
protected void Menu4_MenuItemClick(object sender, MenuEventArgs e)
{
if(e.Item.Value == "ql" || e.Item.Value == "dn")
{
Loginql.Visible = true ;// hiện công cụ login
}
else
{
}

Loginql.Visible = false;

}

2.4. Phát triển các chức năng GIAO DỊCH trên WebApp ASP.NET
2.4.1. Trưng bày sản phẩm (dịch vụ) trên DataList
Khi đã có CSDL (ở đây dùng SQL Sever) thì ta thực hiện đổ dữ liệu vào trong
Datalist. Một số thuộc tính cần chú ý của DataList:
• RepeatDirection: Qui định hướng hiển thị dữ liệu trong đó: Horizontal: Hiển thị
dữ liệu theo chiều ngang, Vertical (mặc định): Hiển thị dữ liệu theo chiều đứng
• RepeatColumns: Qui định số cột hiển thị của DataList

- 17 -



2.4.2. Session và giỏ hàng
Đối tượng Session là biến được tạo ra ở mỗi phiên làm việc của một người dùng, vậy
là mỗi người đăng nhập vào sẽ có một session riêng và phiên làm việc của họ cũng có biến
session riêng và được hủy khi phiên làm việc đó kết thúc và họ logout.
Session là một trong những biến quan trọng nhất trong ứng dung web, nó là riêng biệt
với các đối tượng người dùng tuy nhiên biến này được tạo ra sẽ sử dụng ở tất cả mọi trang
trong website và lưu vết của người dùng đó đã làm nhưng gì trên website mình.
Ví dụ: WEB bán hàng khi khách hàng chọn hàng vào giỏ ở trang chủ, và sau đó khách
tham quan các trang sản phẩm khác vẫn add được hàng vào giỏ hàng đó số lượng tăng lên…
và giỏ đó hủy khi bấm hủy giỏ hay thanh toán.
Bạn lưu ý rằng cũng như Cookie khi một Session được tạo ra, một trạng thái session
có tên ASP.NET_SessionID được tự động thêm vào trình duyệt của bạn và Session này
được lưu trữ trên web server và không lưu trữ trên webClient. Và khi bạn tắt trình duyệt đi
thì Session này của bạn vẫn tồn tại trong khoảng thời gian quy định, mà ASP.NET
Framework quy định thời gian mặc định của Session là 20 phút. bạn có thể thiểt lập thời
gian nhiều hơn.

Hình 2.6 Clients- Session

Như đã nói Session là biến hoạt động trên Server nên tốn bộ nhớ, Khi khơng có tác
động từ clien để duy trì sự tồn tại của biến Session thì Session vẫn tồn tại nên rất tồn cùng
như server do đó tính tự hủy khi hết time sẽ hoạt động nhờ vào một phương thức người ta
gọi đó làm phương thức Abandon.
- 18 -


• Biến Session
Khi vào một website, người dùng có thể duyệt rất nhiều trang web của website đó.
Nếu muốn lưu trữ thông tin về khách thăm này trong cả phiên làm việc thì có thể lưu vào

các biến, gọi là biến Session. Nói cách khác, biến session là một biến mà mọi trang trong
một phiên (Session) đều có thể truy xuất.
• Đối tượng Session
Là đối tượng dùng để quản lý (tạo, đọc, ghi) các biến sesstion và một số thông số khác.
Thuộc tính & phương thức
 Thuộc tính Timeout
Qui định khoảng thời gian (tính bằng phút) mà Web Server duy trì đối tượng Session
nếu người dùng khơng gởi u cầu nào về lại Server. Giá trị mặc định của thuộc tính này là
20. Nếu khơng có u cầu nào kể từ lần yêu cầu sau cùng một khoảng thời gian là
<Timeout> phút, đối tượng Session mà Web server cấp cho lần làm việc đó sẽ tự động được
giải phóng. Những yêu cầu sau đó được Web server coi như là một người dùng mới, và
đương nhiên sẽ được cấp một đối tượng Session mới.
 Phương thức Abandon
Trong khoảng thời gian <Timeout> phút kể từ lần yêu cầu sau cùng của Client, đối
tượng Session vẫn được duy trì dù cho khơng có sự tương tác nào của Client. Điều này đồng
nghĩa với việc Web server phải sử dụng một vùng nhớ để duy trì đối tượng Session trong
một khoảng thời gian tương ứng.
Phương thức Abandon của đối tượng Session sẽ giải phóng vùng nhớ được dùng để
duy trì đối tượng Session trên Web Server ngay khi được gọi thực hiện. Những yêu cầu sau
đó được Web server coi như là một người dùng mới.

- 19 -


2.4.3. Đặt hàng và thanh toán

2.5. Phát triển các chức năng quản lý trên WebApp ASP.NET
2.5.1. Quản lý đăng nhập và bảo mật
2.5.2. Quản lý sản phẩm
2.5.3. Các chức năng thao tác dữ liệu: Thêm _ Sửa _ Xóa


2.6. Xử lý Ràng buộc toàn vẹn dữ liệu (RBTV) trên CSDL trong
ASP.NET
2.6.1. Giới thiệu về lập trình xử lý RBTV dữ liệu trên CSDL trong ASP.NET
2.6.1.1. Giới thiệu về RBTV
2.6.1.2. Cách thực hiện:
2.6.1.3. Các bước thực hiện
2.6.2. Thiết kế hệ thống xử lý RBTV dữ liệu
2.6.3. Lập trình hệ thống xử lý RBTV dữ liệu

2.7. Lập trình thủ tục Chuyển nhóm dữ liệu trong ASP.NET
2.7.1. Giới thiệu về lập trình Chuyển nhóm dữ liệu trên CSDL trong ASP.NET
2.7.2. Thiết kế hệ thống xử lý Chuyển nhóm dữ liệu
2.7.3. Lập trình hệ thống xử lý Chuyển nhóm dữ liệu

2.8. Lập trình thủ tục giao dịch Đặt hàng (Order)
2.8.1.
2.8.2.
2.8.3.
2.8.4.
2.8.5.

Giới thiệu về lập trình xử lý giao dịch đặt hàng trong ASP.NET
Chức năng khách hàng
Chức năng đơn đặt hàng
Chức năng chi tiết đơn hàng
Xử lý lưu trữ vào DB

2.9. Triển khai phát hành WebApp ASP.NET trên Internet (hoặc
Intranet)

2.10.Giới thiệu về lập trình WebApp trên PHP
Ngơn ngữ lập trình PHP là một ngơn ngữ thường dùng trong thiết kế web. Khi bạn
truy cập vào một trang bất kỳ, bạn có thể xác định xem trang đó có được viết bằng ngơn ngữ
PHP hay khơng thơng qua đường link trên thanh địa chỉ của nó. Nếu ở cuối link bạn thấy
phần tử .PHP nghĩa là web đó được lập trình, thiết kế dựa trên ngơn ngữ PHP.
- 20 -


Theo nghĩa chuyên môn, PHP (viết tắt của Personal Home Page) là một ngơn ngữ lập
trình script (một nhánh của ngơn ngữ lập trình) hay một loại mã lệnh chủ yếu được dùng để
phát triển các ứng dụng viết cho máy chủ, mã nguồn mở, dùng cho mục đích tổng quát.
PHP, viết tắt của cụm từ Programing Hypertext Preprocessor, là một loại ngơn ngữ lập
trình kịch bản (scripting language) mã nguồn mở được sử dụng phổ biến để tạo ra các ứng
dụng web chạy trên máy chủ, hoặc để tạo ra các hệ thống back-end cho các website, phần
mềm ứng dụng, app trên máy tính, điện thoại.
Được ra đời vào năm 1994 bởi Rasmus Lerdorf, cùng với hệ thống cơ sở dữ liệu
Mysql, đến thời điểm hiện tại PHP đã được sử dụng rất nhiều cho các website, ứng dụng.
Theo nguồn thống kê chính thức từ Github, PHP là ngơn ngữ đứng hạng thứ 6 trong top 10
ngôn ngữ lập trình phổ biến nhất của năm 2020.
Những đặc điểm và ưu điểm của thiết kế web bằng PHP
Ngôn ngữ lập trình PHP có thể được sử dụng trên nhiều hệ điều hành khác nhau bao
gồm Windows, Mac OS và Linux (Ubuntu, Linux Mint…). Hiện nay, PHP đang là một
trong những ngôn ngữ phổ biến hàng đầu được dùng trong lập trình web.
1. Website được thiết kế bằng PHP ít mã code, dễ sử dụng
Do được tối ưu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn, cú pháp giống C và
Java, dễ học và thời gian xây dựng sản phẩm tương đối ngắn hơn so với các ngôn ngữ khác
nên PHP đã nhanh chóng trở thành một ngơn ngữ lập trình (thiết kế) web phổ biến nhất thế
giới. Website được thiết kế bằng PHP có thời gian hồn thiện rất nhanh vì nó sử dụng khá ít
mã code, có khả năng tùy chọn bộ nhớ khi xây dựng.
2. Sự tương thích tuyệt vời của PHP với ngơn ngữ và trình duyệt web

PHP (Hypertext Preprocessor) là một ngơn ngữ lập trình mã nguồn mở dùng để phát
triển các ứng dụng web. Là một ngơn ngữ lập trình web phổ biến nhất hiện nay bởi sự đơn
giản thân thiện và tương thích cao với mọi ngơn ngữ, trình duyệt web.
Ngày nay có rất nhiều ngơn ngữ kịch bản được sử dụng trên thế giới như .Net, Java,
C++ … Tuy nhiên phần lớn các nhà phát triển sử dụng ngôn ngữ PHP làm nền tảng chính để
thiết kế web cho mình. Các trang web sử dụng PHP rất thân thiện, bạn không cần phải lo
- 21 -


lắng về vấn đề tương thích giữa các trình duyệt. Ngơn ngữ PHP có khả năng tương thích rất
cao với những trình duyệt phổ biến hiện nay như Fifefox, Chrome hoặc cả Cốc Cốc của Việt
Nam.
3. Thiết kế web PHP nhanh chóng, giá thành rẻ
Ngơn ngữ PHP là một mã nguồn mở có tính năng động, có sự phát triển của rất nhiều
người, các thiết kế web sử dụng PHP cũng dễ dàng hơn, tốn ít thời gian hơn hơn. PHP sử
dụng mã ít hơn, có khả năng tùy chọn bộ nhớ khi xây dựng, vì vậy kết quả việc thiết kế
nhanh hơn. PHP cũng có thể phát triển cấu trúc cao cấp cho các trang web phức tạp với kết
quả tương tự như các ngơn ngữ khác. Vì vậy, nếu đang băn khoăn về chi phí thiết kế phát
triển web thì thiết kế web với PHP là một lựa chọn tối ưu.
Một lợi thế rất lớn của ngôn ngữ mã nguồn mở PHP cung cấp là tính cộng đồng. PHP
được phát triển và tối ưu liên tục từ các nhà phát triển trên tồn thế giới khiến cho nó vơ
cùng thân thiện với mọi người và ngày càng hồn thiện hơn. Bạn có thể rút ngắn được rất
nhiều thời gian phát triển thiết kế web và tối ưu hóa trang web cho mình thơng qua việc
thiết kế web với PHP.
Điểm đặc biệt là tuy sử dụng rất ít câu lệnh nhưng PHP vẫn có khả năng thiết kế
những cấu trúc phức tạp khơng kém gì các loại ngơn ngữ lập trình thơng dụng nhất hiện nay.
Do đó, nếu bạn khơng có nhiều kinh phí đầu tư website thì lựa chọn PHP sẽ giúp bạn tiết
kiệm rất nhiều.
4. Thiết kế web PHP rất thông dụng và là lựa chọn ưu việt cho người dùng
Tại Việt Nam, ngơn ngữ lập trình PHP là một trong những ngôn ngữ được sử dụng

nhiều nhất khi thiết kế web. Thiết kế web bằng PHP là lựa chọn ưu việt bởi sự đơn giản nhẹ
nhàng và thân thiện của nó đối với các hệ thống máy chủ, trình duyệt. Thời gian thiết kế
nhanh chóng, chi phí rẻ khiến cho PHP trở thành sự lựa chọn tối ưu của các doanh nghiệp
vừa và nhỏ trong việc thiết kế và phát triển web cho mình.
5. Một website đơn giản hay phức tạp thơng qua PHP có thể làm tất cả

- 22 -


Với những ưu điểm trên, PHP đã nhanh chóng trở thành ngơn ngữ lập trình web được
nhiều người sử dụng. Với xu hướng ưa chuộng sự đơn giản và tiện lợi trong sử dụng web
của nhiều khách hàng hiện nay, ngôn ngữ PHP nghiễm nhiên trở thành sự lựa chọn hàng đầu
của nhiều đơn vị thiết kế và lập trình web. Với sự hỗ trợ của PHP, hiển thị của website trở
nên đơn giản, dễ hiểu, dễ sử dụng nhưng vần đảm bảo tối ưu bảo mật.

- 23 -


Chương 3:

THIẾT KẾ VÀ CẬP NHẬT CSDL PHỤC VỤ

WEBAPP
3.1. Phân tích và thiết kế DB
Hệ thống webapp bán gia vị các loại online gồm 2 phần chức năng:

+

Bên giao dịch (bên mua): Cho phép khách hàng trực tuyến có thể chọn hàng từ
trang homepage.aspx sử dụng cart. Đây là cơ sở để lập ra đơn hàng: mỗi khách

hàng có nhiều đơn hàng và mỗi đơn hàng chỉ thuộc về một khách hàng duy nhất.
Mỗi đơn hàng bao gồm nhiều gia vị các loại tùy theo nhu cầu của từng khách.
Khách khi đặt hàng đều có những thơng tin cơ bản sau: mã khách hàng, họ tên
khách, địa chỉ, số điện thoại và số điểm tích lũy (tích từ những lần mua hàng trước

+

để đạt được số điểm nhất định được giảm giá).
Bên quản lý (bên bán): Hệ thống bán gia vị trực tuyến gồm nhiều kho. Mỗi kho có
sức chứa và cất giữ một số các mặt hàng gia vị nhất định. Mỗi kho đều có một mã
để phân biệt và có địa chỉ khác nhau. Hệ thống kinh doanh đầy đủ các loại gia vị
thiết yếu. Mỗi loại đều có mã riêng và tên để phân biệt. Mỗi loại gồm nhiều sản
phẩm gia vị và mỗi gia vị chỉ thuộc về một loại mà thôi. Mỗi mặt hàng gia vị đều
có mã riêng, tên, DVT, giá bán, ghi chú, hình ảnh sản phẩm. Mỗi loại gia vị được
quy định cất trữ ở một kho nhất định để đảm bảo chất lượng sản phẩm. Các mặt
hàng gia vị đều được trưng bày trên trang homepage.aspx. Hệ thống quản lý nhân
viên gồm có các thơng tin cơ bản là mã (để phân biệt các nhân viên với nhau), tên
nhân viên và số điện thoại. Mỗi nhân viên nắm giữ một chức vụ. Mỗi chức vụ
gồm nhiều nhân viên quản lý và làm việc tại cơ sở các kho. Mỗi chức vụ gồm mã
chức vụ và tên chức vụ đó. Mỗi đơn hàng là do một nhân viên phụ trách, một
nhân viên được phụ trách được nhiều đơn hàng. Các đơn đặt hàng đều có một mã
riêng biệt, ngày lập đơn, thời hạn, tình trạng, và ghi chú. Mỗi chi tiết đặt hàng có
những thơng tin của đơn đặt hàng là số lượng gia vị mà khách đặt

- 24 -


3.2. Diagram của DB bán các loại gia vị online
Căn cứ vào phân tích, thiết kế thành phần CSDL từ mục 3.1 nêu trên, ta có Diagram
của CSDL phục vụ cho hoạt động của WebApp gia vị các loại như Error: Reference source

not found
DMKHACHHANG
MAKH
TENKH
DIACHI
SDT
DIEMTL

CTDH

DMGIAVI

MADH

MAGV

MAGV

TENGV

SOLUONG

DVT

DONDATHANG

GIA

MADH


GHICHU

NGAYLAP

DMKHO

MAKH

MAKHO

sdtgiao

TENKHO

DIACHI

SUCCHUA

MANV

DIACHI

THOIHAN

SDT

TONKHO
MAKHO

HINHMAU

MALOAIGV

MAGV
SLTON

DMLOAIGV
MALOAIGV
TENLOAIGV

DMNHANVIEN

MOTA

MANV

MAKHO

TENNV
SODT
MACV
NGAYSINH

DMCHUCVU
MACV
TENCHUCVU

Hình 3.7 Diagram của DB bán các loại gia vị online

3.3. Thiết kế các Tables dữ liệu
3.3.1.


Thiết kế các Table DMKHO

Hình 3.8 Bảng DMKHO

- 25 -


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×