I.Phần mở đầu61.Lý do chọn đề tài62.Mục tiêu và nhiệm vụ nghiên cứu62.1 Mục tiêu62.2 Nhiệm vụ nghiên cứu63.Đối tượng và khách thể nghiên cứu63.1 Đối tượng nghiên cứu63.2 Khách thể nghiên cứu64.Giới hạn đề tài65.Phương pháp nghiên cứu7II.Phần nội dung8CHƯƠNG I: CƠ SỞ LÝ THUYẾT81.1.Giới thiệu ASP.NET81.2.Giới thiệu Ajax81.3.Giới thiệu SQL Server9Kết luận Chương 19CHƯƠNG 2: NGHIÊN CỨU XÂY DỰNG TRANG WEB102.1 Thiết kế cơ sở dữ liệu102.1.1 Mô hình quan hệ102.1.2 chi tiết các bảng dữ liệu102.2 Thiết kế giao diện trang web132.2.1 Phần User132.2.2 Phần Admin282.3 Cài đặt chương trình422.3.1 Yêu cầu hệ thống422.3.1.1 Phần cứng422.3.1.2 Phần mềm422.3.2 Cài đặt hệ thống432.3.3 Hướng dẫn cài đặt chương trình43Kết luận chương 246III. Kết Luận463.1 Những mặt đạt được463.2 Những mặt hạn chế473.3 Hướng phát triển473.4 Các tài liệu tham khảo:47
Trang 1ỦY BAN NHÂN DÂN THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THỦ ĐỨC
KHOA CÔNG NGHỆ THÔNG TIN
ĐỒ ÁN LẬP TRÌNH WEB
Tên Đề tài:
XÂY DỰNG ỨNG DỤNG WEBSITE BÁN SÁCH QUA MẠNG
SỬ DỤNG CÔNG NGHỆ ASP.NET VÀ AJAX
Code tại dự án www.sharecode.org
Giáo Viên hướng dẫn: Phan Gia Phước Học sinh thực hiện: Kiều Vũ Anh Tú
Mã Số Học Sinh: 1050tt0417
Trang 2Lớp: C10CNTT1 Thành phố Hồ Chí Minh
Trang 3NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Ngày … Tháng … Năm …
Giáo Viên Phan Gia Phước
Trang 4NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
Ngày … Tháng … Năm …
Trang 5Lời cảm ơn
Em xin chân thành cám ơn thầy Phan Gia Phước là giáo viên hướng dẫn trong đềtài mà em thực hiện, em rất trân trọng sự giúp đỡ nhiệt tình của thầy để em có thể hoànthành tốt đồ án này
Em cũng xin cám ơn khoa Công Nghệ Thông Tin đã tạo điều kiện tốt nhất để em
có được những tiết học tuyệt vời
Em cũng xin cám ơn trường Cao Đẳng Công Nghệ Thủ Đức là ngôi trường tuyệtđẹp và tốt nhất mà em từng học Xin cám ơn trường vì những đóng góp đã giúp em cóđược kiến thức không chỉ về mặc học vấn mà còn những kiến thức về xã hội để giúp em
có thể vững bước trên con đường của chính mình
Trang 6Mục lục
I.Phần mở đầu 6
1.Lý do chọn đề tài 6
2.Mục tiêu và nhiệm vụ nghiên cứu 6
2.1 Mục tiêu 6
2.2 Nhiệm vụ nghiên cứu 6
3.Đối tượng và khách thể nghiên cứu 6
3.1 Đối tượng nghiên cứu 6
3.2 Khách thể nghiên cứu 6
4.Giới hạn đề tài 6
5.Phương pháp nghiên cứu 7
II.Phần nội dung 8
CHƯƠNG I: CƠ SỞ LÝ THUYẾT 8
1.1.Giới thiệu ASP.NET 8
1.2.Giới thiệu Ajax 8
1.3.Giới thiệu SQL Server 9
Kết luận Chương 1 9
CHƯƠNG 2: NGHIÊN CỨU XÂY DỰNG TRANG WEB 10
2.1 Thiết kế cơ sở dữ liệu 10
2.1.1 Mô hình quan hệ 10
2.1.2 chi tiết các bảng dữ liệu 10
2.2 Thiết kế giao diện trang web 13
2.2.1 Phần User 13
2.2.2 Phần Admin 28
2.3 Cài đặt chương trình 42
2.3.1 Yêu cầu hệ thống 42
2.3.1.1 Phần cứng 42
2.3.1.2 Phần mềm 42
2.3.2 Cài đặt hệ thống 43
2.3.3 Hướng dẫn cài đặt chương trình 43
Kết luận chương 2 46
III Kết Luận 46
3.1 Những mặt đạt được 46
3.2 Những mặt hạn chế 47
3.3 Hướng phát triển 47
3.4 Các tài liệu tham khảo: 47
Trang 7I.Phần mở đầu
1.Lý do chọn đề tài
Xã hội ngày càng tiến bộ, nhu cầu tiếp cận thông tin của mọi người ngàycàng lớn, nhưng thông tin có chọn lọc lại càng là nhu cầu lớn hơn, cũngxuất phát từ nhu cầu đó và cũng nhằm mục đích tạo một kênh mua bánsách trên mạng, phục vụ cho tất cả mọi người, để họ có thể thuận tiện hơntrong việc tiếp cận nguồn tri thức nhân loại, trang web sẽ phục vụ bán sáchtrong cả nước, giao hàng và thu tiền tận nơi
2.Mục tiêu và nhiệm vụ nghiên cứu
2.1 Mục tiêu
Tạo cho mọi người một trang mua bán sách mọi lúc, mọi nơi2.2 Nhiệm vụ nghiên cứu
Nghiên cứu cơ sở lý thuyết về ASP.NET, AJAX
Xây dựng chức năng hiển thị sách mới nhất
Xây dựng chức năng thêm, xóa, sửa vào các mục như sách, nhà xuấtbản, chủ đề sách…
Xây dựng chức năng Upload hình ảnh đại diện cho sách
Xây dựng chức năng Thêm, sửa và xóa tài khoản đăng nhập
Xây dựng chức năng Lọc các kết quả sách theo chủ đề sách, nhàxuất bản, tác giả
Xây dựng chức năng hiển thị quảng cáo động
Xây dựng chức năng hiển thị tooltip động
Xây dựng chức năng tìm kiếm sáchXây dựng chức năng Tạo giỏ hàng
3.Đối tượng và khách thể nghiên cứu
3.1 Đối tượng nghiên cứu
Website bán hàng qua mạng (KIEU BROTHERS’s Book Store).3.2 Khách thể nghiên cứu
Website bằng công nghệ ASP.NET4.Giới hạn đề tài
Trang web có chức năng sau:
Chức năng thêm xóa sửa sách, nhà xuất bản, tác giả, chủ đề sách.Chức năng Hiển thị sách mới nhập
Trang 8Chức năng Hiển các sách cùng nhà xuất bản, tác giả, chủ đề sách.Chức năng Upload hình ảnh đại diện.
Chức năng Hiển thị tooltip động hình đại diện cho từng cuốn sách.Chức năng Đổi mật khẩu đăng nhập
Chức năng Ghi nhớ mật khẩu đăng nhập
Chức năng Tạo lịch khi click vào textbox nhập ngày tháng năm.Chức năng Tạo giỏ hàng
Chức năng thêm quảng cáo động
5.Phương pháp nghiên cứu
Tìm hiểu sách báo
Tìm hiểu ở Mạng xã hội
Tìm hiểu tại các Diễn đàn về Công Nghệ Thông Tin
Trang 9II.Phần nội dung
CHƯƠNG I: CƠ SỞ LÝ THUYẾT
1.1.Giới thiệu ASP.NET
Đầu năm 2002, Microsoft giới thiệu một kỹ thuật lập trình Web khá mới mẻ với tên gọi ban đầu là ASP+, tên chính thức sau này là ASP.Net Với ASP.Net, không những không cần đòi hỏi bạn phải biết các tag HTML, thiết kế web, mà nó còn hỗ trợ mạnh lập trình hướng đối tượng trong quá trình xây dựng và phát triển ứng dụng Web
ASP.Net là kỹ thuật lập trình và phát triển ứng dụng web ở phía Server(Server-side) dựatrên nền tảng của Microsoft Net Framework
Hầu hết, những người mới đến với lập trình web đều bắt đầu tìm hiểu những
kỹ thuật ở phía Client (Client-side) như: HTML, Java Script, CSS (Cascading StyleSheets) Khi Web browser yêu cầu một trang web (trang web sử dụng kỹ thuật client-side), Web server tìm trang web mà Client yêu cầu, sau đó gởi về cho Client Clientnhận kết quả trả về từ Server và hiển thị lên màn hình
ASP.Net sử dụng kỹ thuật lập trình ở phía server thì hoàn toàn khác, mã lệnh
ở phía server (ví dụ: mã lệnh trong trang ASP) sẽ được biên dịch và thi hành tại WebServer Sau khi được Server đọc, biên dịch và thi hành, kết quả tự động được chuyểnsang HTML/JavaScript/CSS và trả về cho Client Tất cả các xử lý lệnh ASP.Net đềuđược thực hiện tại Server và do đó, gọi là kỹ thuật lập trình ở phía server
1.2.Giới thiệu Ajax
AJAX là một công nghệ cho phép lập trình bất đồng bộ trong ứng dụng Web.Thông thường người dùng muốn thay đổi thông tin từ trang Web bằng cách nhấp vàocác nút lệnh(button) hay các liên kết (link) để submit yêu cầu về Web Server để thayđổi nội dung trang Web (postback) Như vậy toàn bộ trang Web phải được xử lý lại do
đó tốn khá nhiều thời gian và gia tăng sự phản hồi các trang Web, Công nghệ Ajax( Asynchronous JavaScript and XML) cho phép chỉ các thông tin nào cần thay đổi đượcgửi về Sever xử lý , sau đó Server sẽ xử lý và trả kết quả về cho Client Sau đây là mộtvài thông tin chung sẽ giúp chúng ta hiểu hơn về Ajax
AJAX bắt đầu phổ biến từ năm 2005 bởi Google (với một ứng dụng Google Suggest, Google Maps, Gmail)
AJAX không phải là ngôn ngữ lập trình mới, mà nó là một công nghệ mới để tạo ra một ứng dụng web nhỏ hơn, nhanh hơn, tốt hơn và giao diện thân thiện với ngườidùng hơn
Ajax dựa trên các thành phần HTML trước đây :
HTML
Trang 10dữ liệu đến, do đó trang web của bạn không reload lại
Ajax sử dụng cơ chế làm việc bất đồng bộ (Asynchonous), tức là trong khi đối tượng XMLHttpRequest thực hiện gửi yêu cầu đến Web server thì Web browser vẫn tiếp tục
xử lý các công việc khác mà không cần Web server hoàn thành việc trả lời lại yêu cầu
đó Nhiều công việc được sử lý song song với nhau, điều này khác với cách lập trình web cổ điển trước đây, do đó ứng dụng web sẽ chạy nhanh hơn
Ajax là một kĩ thuật của Web browser và độc lập với Web server
Tất cả Web có sử dụng Ajax gọi là Web 2.0
Ajax có thể gởi và nhận dữ liệu với nhiều định dạng khác nhau, bao gồm XML, HTML và thậm chí là file text
1.3.Giới thiệu SQL Server
SQL Server là một hệ thống quản lý cơ sở dữ liệu (Relational Database
Management System (RDBMS) ) sử dụng Transact-SQL để trao đổi dữ liệu giữa Client
và SQL Server Một RDBMS bao gồm databases, database engine và các ứng dụng dùng để quản l dữ liệu và các bộ phận khác nhau trong RDBMS
SQL Server được tối ưu để có thể chạy trên môi trường cơ sở dữ liệu rất lớn (VeryLarge Database Environment) lên đến Tera-Byte và có thể phục vụ cùng lúc cho hàngngàn user SQL Server có thể kết hợp với các server khác như Microsoft InternetInformation Server (IIS), E -Commerce Server, Proxy Server
Kết luận Chương 1
Qua cơ sở lý thuyết giúp ta nắm được các công nghệ sẽ được sử dụng trong trang web
Trang 11CHƯƠNG 2: NGHIÊN CỨU XÂY DỰNG TRANG WEB
2.1 Thiết kế cơ sở dữ liệu
2.1.1 Mô hình quan hệ
2.1.2 chi tiết các bảng dữ liệu
Sach (masach, tensach, dongia, donvitinh, mota, hinhminhhoa, #macd, #manxb,
ngaycapnhat, tentacgia)
Tên bảng Mô tả bảng Tên thuộc tính Ý nghĩa Kiểu dữ liệu
Sach Mô tả thông
Manxb Mã nhà xuất Int
Trang 12bảnNgaycapnhat Ngày cập nhật SmalldatetimeTentacgia Tên tác giả Nvarchar(80)Bảng 2.1 Bảng Sách
Chude (macd, tencd)
Tên bảng Mô tả bảng Tên thuộc tính Ý nghĩa Kiểu dữ liệu
Chude Mô tả chủ đề sách Macd Mã chủ đề(khóa chính)
Int
Tenchude Tên chủ đề Nvarchar(50)Bảng 2.2 Bảng Chủ Đề
Nhaxuatban (manxb, tennxb)
Tên bảng Mô tả bảng Tên thuộc tính Ý nghĩa Kiểu dữ liệu
Nhaxuatban Mô tả nhà xuất bản
Manxb Mã nhà xuất
bản (khóachính)
Tên bảng Mô tả bảng Tên thuộc tính Ý nghĩa Kiểu dữ liệu
Khachhang Mô tả thông
tin khách hàng
tử)
Nvarchar(50)
Trang 13Matkhauthat Mật khẩu thật Nvarchar(50)Quyen Quyền hạn int
Bảng 2.4 Bảng Khách Hàng
Chinhanh (macn, tencn, diachi, sdt, email, hinh)
Tên bảng Mô tả bảng Tên thuộc tính Ý nghĩa Kiểu dữ liệu
Chinhanh Mô tả chi nhánh
tử)
Nvarchar(50)
Hinh Hình đại diện Nvarchar(50)Bảng 2.5 Bảng Chi Nhánh
Quangcao (stt, tenct, hinhminhhoa, href, ngaybatdau, ngayhethan)
Tên bảng Mô tả bảng Tên thuộc tính Ý nghĩa Kiểu dữ liệu
Quangcao quảng cáo Mô tả
stt Số thứ tự quảng
cáo (khóachính)
Int
Tencty Tên công ty
muốn đặt quảngcáo
Nvarchar(200)
Hinhminhhoa Hình quảng cáo Nvarchar(100)Href Đường dẫn đến
trang công tyđặt quảng cáo
Nvarchar(100)
Ngaybatdau Ngày bắt đầu
đăng quảng cáo
Giohangkh (id, tendn, masach, ngaymua)
Tên bảng Mô tả bảng Tên thuộc tính Ý nghĩa Kiểu dữ liệu
Trang 14Giohangkh Mô tả giỏ hàng
2.2 Thiết kế giao diện trang web
2.2.1 Phần User
2.2.1.1 Trang chủ (TrangChu.aspx)
Trang chủ là trang đầu tiên mà người sử dụng sẽ gặp khi ghéthăm trang web Tại trang chủ khách viếng thăm sẽ thấy đượcnhững sách mới nhất mà cửa hàng cung cấp
Trang 15Hình 2.2.1.1 Trang Chủ2.2.1.2 Trang sách theo chủ đề (Sach_theo_chu_de.aspx)
Đây là trang hiển thị các chủ đề sách tương ứng khi bạn clickvào menu chủ đề sách bên trái, tất cả các sách thuộc chủ đề sẽhiển thị tương ứng ở phần giữa trang web, phần trên sách làchủ đề sách mà bạn chọn, tiếp theo là tổng số sách tương ứng
Trang 16Hình 2.2.1.2 Sách theo chủ đề
2.2.1.3 Trang sách theo nhà xuất bản (Sach_theo_NXB.aspx)
Đây là trang hiển thị các nhà xuất bản tương ứng khi bạn clickvào menu nhà xuất bản bên trái, tất cả các sách thuộc nhà xuấtbản sẽ hiển thị tương ứng ở phần giữa trang web, phần trênsách là chủ đề sách mà bạn chọn, tiếp theo là tổng số sáchtương ứng
Trang 17Hình 2.2.1.3 Sách theo nhà xuất bản
2.2.1.4 Trang giới thiệu (Gioi_Thieu.aspx)
Đây là trang giới thiệu về cửa hàng sách KIEU BROTHERS
Trang 18Hình 2.2.1.4 Trang Giới thiệu về trang Web
2.2.1.5 Trang đăng ký tài khoản mới (Dang_Ky.aspx)
Trang này dùng để người dùng đăng ký tài khoản mới để muasách trực tuyến
Trang 19Hình 2.2.1.5 Trang đăng ký tài khoản mới
2.2.1.6 Trang đăng nhập tài khoản (Dang_Nhap_KH.aspx)
Trang này dùng để đăng nhập vào trang web, khi click vàocheckbox “ghi nhớ mật khẩu cho lần đăng nhập sau” trang sẽ tựđộng đăng nhập khi bạn truy cập vào trang một lần nữa
Trang 20Hình 2.2.1.6 Trang Đăng nhập tài khoản
2.2.1.7 Trang liên hệ (Lien_He.aspx)
Trang này cung cấp thông tin cho người dùng địa chỉ, số điệnthoại, email để họ có thể liên lạc với nhà sách
Trang 21Hình 2.2.1.7 Trang Liên Hệ
2.2.1.8 Trang chi tiết sách (Chi_tiet_sach.aspx)
Trang hiển thi chi tiết cuốn sách khi bạn click vào tựa cuốnsách mà bạn quan tâm
Trang 22Hình 2.2.1.8 Trang Chi tiết sách2.2.1.9 Trang hiển thị sách của tác giả(Sach_Theo_TacGia_FromChiTietSach.aspx)
Hiển thị các sách của tác giả bạn vừa click vào trong trang chitiết sách
Trang 23Hình 2.2.1.9 Trang hiển thị sách cùng tác giả
2.2.1.10 Trang chủ đề sách (Sac_theo_CD_From_ChitietSach.aspx)
Hiển thị các sách của chủ đề bạn vừa click vào trong trang chitiết sách
Trang 24Hình 2.2.1.10 Trang chủ đề sách2.2.1.11 Trang nhà xuất bản(Sach_Theo_NXB_FromChiTietSach.aspx)
Hiển thị các sách mà nhà xuất bản bạn vừa click vào trongtrang chi tiết sách
Trang 25Hình 2.2.1.11 Trang sách theo nhà xuất bản2.2.1.12 Khi các bạn muốn tìm kiếm sách hãy gõ vào textbox ở phíabên phải trên cùng và nhấn vào nút tìm kiếm (hình kính lúp) bên cạnh ta sẽchuyển đến trang kết quả tìm kiếm (Ket_Qua_Tim_Kiem.aspx).
Trang này sẽ hiển thị kết quả tìm kiếm theo từ khóa mà bạnnhập sẽ hiển thị tổng sách phù hợp với từ khóa
Trang 26Hình 2.2.1.12 Trang Kết quả tìm kiếm2.2.1.13 Sau khi đăng nhập bằng tài khoản user đây là trang sau khiđăng nhập
Bên phải là “menu người dùng” gồm có các lựa chọn: “thôngtin các nhân”, “đổi mật khẩu”, “thoát” đây là những menuquen thuộc đã được giới thiệu bên phần admin
Ngay phía dưới menu người dùng là menu giỏ hàng bên dưới
là đường link liên kết đến trang giỏ hàng, phía dưới nữa làthông báo về tổng tiền đã mua sách
Trang 27Hình 2.2.1.13 Giao diện sau khi đăng nhập bằng quyền người dùng
2.2.2.14 Để đến với trang giỏ hàng bạn nhấp vào nút chọn mua ởmỗi cuốn sách được hiển thị Sau khi nhấp vào nút “chọn mua”, bạn sẽđược đưa đến trang giỏ hàng với cuốn sách vừa chọn đây là giao diện:
Trang 28Hình 2.2.1.14 Trang Giỏ hàngTổng số sách và tổng tiền sẽ được cập nhật, nếu như bạn muốn xóa cuốn sách ra khỏigiỏ hàng chỉ việc nhấn vào “xóa sách”.
2.2.1.15 Sau khi đã chọn được những cuốn sách ưng ý, bạn nhấn vào nút thanh toán,sau khi nhấn ta sẽ có thông báo:
Trang 29Hình 2.2.1.15 Thông báo đã mua hàngNhư vậy là bạn đã mua thành công sách sẽ được chuyển đến tạn nơi cho bạn và và cũng
sẽ thu tiền tận nơi luôn
2.2.2 Phần Admin
Những trang tiếp theo đây là những trang chỉ hữu dụng sau khi đăng nhập bằng quyềnquả trị trang web (username: kvat911, password: 123456)
2.2.2.1 Trang thông tin cá nhân (ThongTinCaNhan.aspx)
Trang này sẽ hiển thị thông tin cá nhân của người đăng nhập
Trang 30Hình 2.2.2.1 Trang Thông tin cá nhân
2.2.2.2 Trang thay đổi mật khẩu (Doi_MK.aspx)
Trang này sẽ cho phép người đăng nhập đổi mật khẩu
Trang 31Hình 2.2.2.2 Trang đổi mật khẩu
2.2.2.3 Trang thêm chủ đề sách (Admin_Them_CD_Sach.aspx)
Trang này cho phép bạn thêm chủ đề sách sau khi thêm thànhcông sẽ hiển thị bên menu trái phần chủ đề sách Bạn chỉ cần gõ vàotên chủ đề sách rồi nhấn nút “hoàn tất”
Trang 32Hình 2.2.2.3 Trang Thêm chủ đề sách2.2.2.4 Trang sửa và xóa chủ đề sách(Admin_SuaVaXoa_CD_Sach.aspx)
Trang này cho phép ta chọn chủ đề sách mong muốn sửa chửabằng cách nhần vào “chọn chủ đề” bên cạnh chủ đề ở bảng, sau khichọn xong các thông tin của chủ đề sách đó sẽ được cập nhật lên cáctextbox tương ứng, ta chỉ việc sửa chửa lại cho phù hợp rồi nhấn
“cập nhật”, còn nếu muốn xóa thi ta nhấn vào “xóa chủ đề” kế bêncạnh “chọn chủ đề” về bên phải
Trang 33Hình 2.2.2.4 Trang sửa và xóa chủ đề sách
2.2.2.5 Trang thêm sách (Admin_QLSach.aspx)
Trang này cho phép bạn thêm sách mới bằng cách nhập vàocác thuộc tính của sách, chọn hình đại diện bằng cách nhấn vào nút
“choose…” rồi nhấn “đưa hình lên” sau khi xong điền xong tất cả tanhấn nút “hoàn tất”
Trang 34Hình 2.2.2.5 Trang Thêm sách
2.2.2.6 Trang sửa và xóa sách (Admin_SuaVaXoaSach.aspx)
Trang này cho phép ta chọn sách mong muốn sửa chửa bằngcách nhần vào “sửa tin” bên cạnh chủ đề ở bảng, sau khi chọn xongcác thông tin của sách đó sẽ được cập nhật lên các textbox tươngứng, ta chỉ việc sửa chửa lại cho phù hợp rồi nhấn “cập nhật”, cònnếu muốn xóa thì ta nhấn vào “xóa tin” kế bên cạnh “sửa tin” về bênphải