Trong quá nghiên cứu chuyên đề thực tập dưới sự hướng dẫn của Th.S Phạm Minh Hoàn em đã nắm vững hiểu rõ ngôn ngữ lập trình web PHP qua đó vận dụng kiến thức trên để xây dựng trang web bán sách báo trên mạng với các tính năng nổi bật như là: giới thiệu sản phẩm, tìm kiếm, đặt hàng, mua hàng ... Cũng trong thời gian này em đã vận dụng tất cả kiến thức được học trong 4 năm học để hoàn thiện sản phẩm của mình. Mặc dù đã cố gắng nhưng trang web vẫn còn những mặt hạn chế: giao diện chưa thật sự bắt mắt, tính bảo mật chưa cao, khả năng ứng dụng vào thực tế còn khó. Tuy nhiên trong tương lai em sẽ cố gắng hoàn thiện và phát triển sản phẩm với những tính năng tốt hơn, tính bảo mật cao, không những có khả áp dụng những doanh nghiệp bán sách mà còn có thể áp dụng vào các doanh nghiệp kinh doanh thương mại điện tử. Em xin chân thành cảm ơn quý thầy cô đã cung cấp kiến thức hữu ích để em hoàn thành bản chuyên đề thực tập này.
Trang 1CHƯƠNG 1 KHẢO SÁT VÀ TỔNG QUAN ĐỀ
TÀI
1.1.KHẢO SÁT
Ngày nay, trên thị trường có rất nhiều các trang web bán sách,báo trựctuyến,online Nổi bật trong số đó như Vinabook hay SAHARA Bây giờ chúng
ta sẽ tìm hiểu cấu trúc,mô hình của Vinabook qua đó lam rõ cấu trúc của đề tài
và mục đích của website mang lại
CẤU TRÚC TRANG WEB
Trang 2Ưu điểm của trang Vinabook
Dao diện trang chủ thân thiện với người dùng Danh mục sách được thiết kế rất
đa dạng và phong phú Bạn có thể nhanh chóng và dễ dàng tìm được cuốc sách
mà bạn cần theo các đề mục như là kích vào các lĩnh vực kinh tế, văn hóa, xã hội, văn học
Trang 3PHP là một ngôn ngữ lập trình kịch bản 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 đíchtổng quát Nó rất thích hợp với web và có thể dễ dàng nhúng vào trang HTML
Do được tối ưu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn, cú phápgiố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 sovới các ngôn ngữ khác nên PHP đã nhanh chóng trở thành một ngôn ngữ lậptrình web phổ biến nhất thế giới Chính vì vậy em đã chọn PHP là ngôn ngữ lậptrình để thiết kế trang web này
1.2 MỤC ĐÍCH ĐỀ TÀI
Mục đích đề tài là đáp ứng nhu cầu mua bán, xem thông tin sách,báo một
Trang 4Website đáp ứng yêu cầu:
o Xem thông tin sản phẩm: giá cả,hình ảnh,nhà xuất bản
o Tìm kiếm sản phẩm theo yêu cầu
o Mua sản phẩm bằng cách đặt hàng qua mạng an toàn nhanh chóng
o Xem tin tức về sản phẩm mới trên thị trường
1.3 ĐỐI TƯỢNG NGHIÊN CỨU
Tìm hiểu ngôn ngữ PHP và hệ quản trị cơ sở dữ liệu Mysql và tìm hiểu về vềquy trình xây dựng một website và cách thức làm việc của một website bán vàgiới thiệu sản phẩm tới khách hàng.Qua đó ta sử dụng ngôn ngứ PHP và hệ quảntrị cơ sở dữ liệu Mysql để xây dựng website bán sách,báo
1.4 Ý NGHĨA THỰC TIỄN
Ý nghĩa thực tiễn của Website:
phẩm mà khách hàng không cần tới tận cửa hàng
Trang 5 Quảng bán được sản phẩm mọi lúc mọi nơi (24/24) mà chi phí thìlại cự kì thấp.
Khách hàng mua hàng một cách nhanh chóng và tiện lợi
CHƯƠNG 2: PHƯƠNG PHÁP LUẬN XÂY DỰNG
TRANG WEB
2.1 THƯƠNG MẠI ĐIỆN TỬ
2.1.1 Thương mại điện tử là gì?
Có nhiều khái niệm về thương mại điện tử (TMĐT), nhưng hiểu một cáchtổng quát, TMĐT là việc tiến hành một phần hay toàn bộ hoạt động thương mạibằng những phương tiện điện tử TMĐT vẫn mang bản chất như các hoạt độngthương mại truyền thống Tuy nhiên, thông qua các phương tiện điện tử mới, cáchoạt động thương mại được thực hiện nhanh hơn, hiệu quả hơn, giúp tiết kiệmchi phí và mở rộng không gian kinh doanh TMĐT càng được biết tới như mộtphương thức kinhdoanh hiệu quả từ khi Internet hình thành và phát triển Chính
vì vậy, nhiều người hiểu TMĐT theo nghĩa cụ thể hơn là giao dịch thương mại,mua sắm qua Internet và mạng (ví dụ mạng Intranet của doanh nghiệp)
2.1.2 Lợi ích của thương mại điện tử
Lợi ích lớn nhất màTMĐT đem lại chính là sự tiết kiệm chi phí và tạo thuậnlợi cho các bên giao dịch Giao dịch bằng phương tiện điện tử nhanh hơn so vớigiao dịch truyền thống, ví dụ gửi fax hay thư điện tử thì nội dung thông tin đếntay người nhận nhanh hơn gửi thư Các giao dịch qua Internet có chi phí rất rẻ,một doanh nghiệp có thể gửi thư tiếp thị, chào hàng đến hàng loạt khách hàngchỉ với chi phí giống như gửi cho một khách hàng Với TMĐT, các bên có thể
Trang 6Điều này cho phép các doanh nghiệp tiết kiệm chi phí đi lại, thời gian gặp mặttrong khi mua bán Với người tiêu dùng, họ có thể ngồi tại nhà để đặt hàng, muasắm nhiều loại hàng hóa, dịch vụ thật nhanh chóng
Những lợi ích như trên chỉ có được với những doanh nghiệp thực sự nhậnthức được giá trị của TMĐT Vì vậy, TMĐT góp phần thúc đẩy sự cạnh tranhgiữa các doanh nghiệp để thu được nhiều lợi ích nhất Điều này đặc biệt quantrọng trong bối cảnh hội nhập kinh tế quốc tế, khi các doanh nghiệp trong nướcphải cạnh tranh một cách bình đẳng với các doanh nghiệp nước ngoài
2.1.3 Công đoạn của một giao dịch bán hàng trên mạng
Có 6 công đoạn:
1 Khách hàng,từ một máy tính ở một nơi bất kỳ,điền những thông tin thanhtoán và địa chỉ liên hệ vào đơn đặt hàng(order from) của websibe bánhàng Doanh nghiệp nhận được yêu cầu mua hàng hóa hay dịch vụ củakhách hàng và phản hồi xac nhận tóm tắt lại nhưng thông tin cần thiếtnhững mặt hàng đã chọn,địa chỉ giao nhận và số phiếu đặt hàng
2 Khách hàng kiểm tra lại thông tin và kích(click) vào nút (button) “đặthàng”,từ bàn phím hay chuột của máy tính,để gửi thông tin trả về chodanh nghiệp
3 Doanh nghiệp nhận và lưu trữ thông tin đặt hàng đòng thời chuyển tiếpthông tin thanh toán(số thẻ tín dụng,ngày đáo hạn,chur thẻ ) đã đượcmãhóa đến máy chủ(server,thiết bị xử lý dữ liệu) của trung tâm cung cấp dịch
vụ xử lý thẻ trên mạng internet Với quá trình mã hóa các thông tin thanhtoán của khách hàng được bảo mật an toàn nhằm chống gian lận trog cácdao dịch
4 Khi trung tâm xử lý thẻ tín dụng nhận được thông tin thanh toán,sẽ giải mãthông tin và xử lý giao dịch đằng sau bức tường lửa và tách rời mạnginternet, nhằm mục đích chính là bảo mật tuyệ đối cho các giao dịch
Trang 7hàng Tổ chức tài chính này sẽ phản hồi là đồng ý hay từ chối thanh toánđến trung tâm xử lý thẻ tín dụng trên mạng internet.
6 Trung tâm xử lý thẻ tín dụng trên mạng internet sẽ tiếp tục chuyển tiếpnhững thông tin phản hồi trên đến doanh nghiệp, và tùy theo đó doanhnghiệp thông báo cho khách hàng được rõ là đơn đặt hàng sẽ được thựchiện hay không
2.2 CÔNG CỤ XÂY DỰNG WEB
Ngôn ngữ, các thư viện, tài liệu gốc của PHP được xây dựng bởi cộng đồng và
có sự đóng góp rất lớn của Zend Inc., công ty do các nhà phát triển cốt lõi củaPHP lập nên nhằm tạo ra một môi trường chuyên nghiệp để đưa PHP phát triển ởquy mô doanh nghiệp
2.2.1.2 Những ưu điểm của php
ngôn ngữ kịch bản khác, bởi PHP là phần mềm mã nguồn mở, được hỗtrợ bởi những lập trình viên có trình độ và có số lượng đông đảo Ngoài raPHP chạy được nhiều hệ điều hành khác nhau
Trang 8 PHP cho phép tách phần HTML code và phần scrip, do đó có thể độc lậpgiữa công việc phát triển mã và thiết kế Điều này giúp ta dễ dàng thay đổigao diện.
với mục đích thương mại
chóng được sửa chữa bởi những chuyên gia có trình độ cao,
PHP vượt trội hơn ở một số test, vượt trội ở tốc độ biên dịch
PHP được thiết kế để chạy trên nhiều nền tảng khác nhau,có thể làm việcvới nhiều phần mềm máy chu, cơ sỏ dữ liệu
Hai kiểu đặc biệt : resource và NULL
Loại dữ liệu của biến thông thường không được gán bởi người lập trình mà đượcquyết định tại thời gian chạy của PHP, phụ thuộc vào ngữ cảnh mà biến đượcdùng
Trang 92.2.2.3 Đặc điểm của MySQL
MySQL là một phần mềm quản trị CSDL dạng server-based (gầntương đương với SQL Server của Microsoft)
nhiều bảng quan hệ chứa dữ liệu
thể được quản lý một hoặc nhiều CSDL khác nhau, mỗi người dùng cómột tên truy cập (user name) và mật khẩu tương ứng để truy xuất đếnCSDL
2.2.2.4 Cú pháp cơ bản của MySQL
Create MySQL Table
CREATE TABLE user(name varchar(10) NOT NULL,
Id int(8) NOT NULL,
Trang 10PRIMARY KEY (id)
UNIQUE(id)
) ;
.Query Datasabe
SELECT *FROM user;
SELECT * FROM user WHERE name =””;
SELECT DISTINCT name FROM user;
CHƯƠNG 3: PHÂN TÍCH VÀ THIẾT KẾ HỆ
THỐNG
3.1.CHỨC NĂNG CỦA HỆ THỐNG
3.1.1.Đối với người sử dụng.
Đối với khách hàng truy cập website hệ thống cung cấp những chức năng sau:
Chức năng hiển thị thông tin và phân loại sản phẩm trong gian hàng ảo:
o Sản phẩm hiển thị lên website sẽ được hiển thị đầy đủ thông tin vềsản phẩm đó như: hình ảnh sản phẩm, tên sản phẩm, dặc điêm nổibật cảu sản phẩm, thông tin chi tiết sản phẩm, giá, nhà xuất bản
o Các sản phẩm được sắp xếp và phân loại theo từng nhóm chủngloại, theo chủng loại hay theo hãng sản xuất Sự phân loại này sẽ
Trang 11Khi tham khảo đầy đủ thông tin về mặt hàng cần thiết, khách hàng sẽ muahàng ngay tại website bằng giỏ hàng, giỏ hàng được mô phỏng như giỏ hàngtrong thực tê, có thể thêm hàng, bớt hàng, tính tổng giá trị hàng Sau khi đã lựachọn các mặt hàng cần thiết, khách hàng sẽ thanh toán giỏ hàng hiện tại Khichọn thanh toán giỏ hàng cần phải đăng nhập và cung cấp đầy đủ thông tin cánhân Hóa đơn hàng hóa này sẽ được hệ thông lưu trữ và chờ xử lý.
Chức năng đăng ký thành viên và đăng nhập hệ thống :
Mỗi khách hàng khi giao dịch tại website sẽ được quyền đăng ký một tàikhoản riêng Tài khoản này sẽ sử dụng khi hệ thống yêu cầu Một tài khoản dokhách hàng đăng kí sẽ lưu trữ đầy đủ thông tin của cá nhân đó và lịch sử giaodịch tại website Trong trường hợp thành viên đã đăng ký mà quên mật khẩuđăng nhập hệ thống sẽ cho phép lấy lại mật khẩu bằng thông tin đã đăng ký
Chức năng tìm kiếm sản phẩm:
Khách hàng sẽ được cung cấp chức năng tìm kiếm trên website, có haimức độ tìm kiếm là tìm kiếm phổ thông và tìm kiếm nâng cao Khi nhập vào từkhóa và lựa chọn những chi tiết cần thiết ( với chức năng tìm kiếm nâng cao) hệthống sẽ đáp ứng yêu cầu với từ khóa của khách hàng nhập vào Từ khóa sẽ đượctìm kiếm trên tất cả các trường thông tin cần thiết của mỗi sản phẩm trênwebsite
Chuyên trang tin tức:
Là một trang trên website cập nhật các tin tức thời sự thuộc cùn lĩnh vực
Các chức năng phụ :
Ngoài những chức năng chính trên, hệ thống sẽ cung cấp thêm một sốchức năng như thông kê website, liên hệ phản hồi của khách hàng với quản trị( chức năng này yêu cầu là thành viên), chức năng quảng cáo cho các Cty khác,chức năng tạo thuận tiện cho khách hàng khi cần hỗ trợ trực tuyến (VD : Hỗ trợqua Yahoo!Messenger)
3.1.2.Đối với quản trị website
Người quản trị website là người được quyền theo dõi, cập nhật và quản lýtoàn bộ thông tin trên website Hệ thống khi xây dựng phải đảm bảo đầy đủ các
Trang 12 Chức năng cập nhật sản phẩm, loại sản phẩm, chủng loại sản phẩm:
Người quản trị website sẽ có quyền cập nhật, thêm, sửa, xóa các sản phẩmtrên website Các sản phẩm sẽ được Admin đưa lên website với trang cập nhậtsản phẩm Khi cập nhật sản phẩm sẽ có thêm chức năng quy định sản phẩm cócần được đưa lên website hay không, sản phẩm thuộc thành phần nào (bán chạy,nổi bật,mới…) và tình trạng sản phẩm trong kho hàng (còn hàng hay không) Tấtnhiên mỗi sản phẩm phải được nằm trong nhóm hàng tương ứng với nó Nhómhàng sẽ được Admin cập nhật trước đó Khi một sản phẩm đã tồn tại người quảntrị có thể sửa thông tin sản hẩm đó
Chức năng cập nhật tin tức:
Tương tự như các sản phẩm, các tin tức cho công ty khác cũng được cậpnhât, sửa xoa,bởi người quản trị
3.2 XÂY DỰNG BIỂU ĐỒ PHÂN CẤP CHỨC NĂNG
3.2.1 Biểu đồ phân cấp chức năng toàn hệ thống
Trang 13Hình 3.1: Biểu đồ phân cấp chức năng của hệ thống
Website bán sách báo
Giao tiếp khách hàng
Quản trị hệ thống
Xem thông tin Mua hàngTìm kiếm
Quản lý sản phẩm
Quản lý tin tứcQuản lý bán hàng
Quản lý khách hàng
Tìm kiếmĐăng nhập
Đăng kýĐăng nhập
Trang 14Hình 3.2: Biểu đồ phân rã chức năng “Quản lý sản phẩm”
Hình 3.3: Biểu đồ phân rã chức năng “Quản lý tin tức”
Trang 15Hình 3.4: Biểu đồ phân rã chức năng “Quản lý bán hàng”
Hình 3.5: Biểu đồ phân rã chức năng “Quản lý khách hàng”
Trang 16Hình 3.6: Biểu đồ phân rã chức năng “Tìm kiếm”
Hình 3.7: Biểu đồ phân rã chức năng “Mua hàng”
Trang 173.3 XÂY DỰNG BIỂU ĐỒ LUỒNG DỮ LIỆU
3.3.1 Biểu đồ luồng dữ liệu mức khung cảnh
Hình 3.8: Biểu đồ luồng dữ liệu mức khung cảnh của hệ thống
Kết quả tìm kiếm
Xử lý thanh toán Chi tiết sản phẩm
Tìm kiếm thông tin
K/q Cập nhật thông tin
Website bán sách báo
Cập nhật sản phẩm
Quản trị viên
Trang 183.3.2 Biểu đồ luồng dữ liệu mức đỉnh
Hình 3.9: Biểu đồ luồng dữ liệu mức đỉnh của hệ thống
KHÁCH
HÀNG
QUẢN TRỊ VIÊN
Quản trị hệ thống
Giao tiếp khách hàng
Yêu cầu thông tin sản phẩm Sản phẩm khách cần mua
Thông tin sản phẩm Thông tin khách hàng
Trang 193.3.3.1 Biểu đồ dữ liệu mức dưới đỉnh của chức năng quản trị hệ thống
Hình 3.10: Biểu đồ dữ liệu mức dưới đỉnh của chức năng quản trị hệ thống
Lấy thông tin khách hàng
Y/c tìm kiếm
Thông tin khách hàng
Thông tin sản phảm
s s\ppspphẩmDanh sách đơn hàng Cập nhật sản
Quản lý khách hàng
Quản lý bán hàng
Quản lý tin tức
Tìm Kiếm
Quản lý sản phẩm
Trang 203.3.3.2 Biểu đồ dữ liệu mức dưới đỉnh của chức năng giao tiếp khách hàng
y/c đăng nhập
k/q đăng nhập k/q đăng ký
Trang 213.4 XÂY DỰNG SƠ ĐỒ THỰC THỂ LIÊN KẾT
Admin gồm thuộc tính sau:AdminId, ten, MatKhau.
Nhà xuất bản gồm thuộc tính sau:NhaxuatbanId, NhaxuatBanName.
Sản Phẩm gồm thuộc tính sau: SanPhamId, SanPhamTen,SanPhamGia,
SanPhamSoLuong,SanPhamNgaNnhap,SanPhammoTa,SanPhamNhaXuatBan,SanPhamHinhAnh,SanPhamTacGia
Chi tiết đơn hàng gồm thuộc tính sau: MaChiTietDonHang,
MaDonHang, MaSanPham, ThanhTien, SoLuong
Tin Tức gồm thuộc tính sau: MaTinTuc,NguoiPostTin,TieuDeTin,
LinkHinhAnh, NoiDungNgan,NoiDungChiTiet,NgayDua
Trang 223.4.3.Bảng cơ sở dữ liệu
3.4.3.1 Bảng sản phẩm
sách
3.4.3.2 Bảng nhà xuất bản
3.4.3.3 Bảng kháh hàng
Trang 23CauhinhTitle Text Not null Tiêu đề cấu hình
3.4.3.5 Diagram
Trang 243.4.4 Thiết kế các trang giao diện
3.4.4.1 Hiển thị danh sách sản phẩm
nhà xuất bản
chủng loại hay nhà xuất bản
Xử lý tình huống Khi một sản phẩm được bấm chọn,mãsản phẩm được gửi tới trang xem chi
tiết để hiện thị sản phẩmKhi chọn bấm mua hàng, mã sản phẩmđược gửi đến đầu vào trang giỏ hàng
Trang 253.4.4.2 Tìm kiếm sản phẩm
được nhập vào
Tên nhà xuất bản,loại sách
Truy cập cơ sở dữ liệu tìm kiếm từkhóa trên các trường thông tin của sảnphẩm,so sánh giá sản phẩm với mứcgiá nhập vào theo nhà xuất bản
Từ cơ sở dữ liệu lấy ra sản phẩm tìmđược
Hiển thị danh sách sản phẩm tìm đượclên ,website nếu không tìm thấy xuất rathông báo không tìm thấy
thông báo không không tìm thấy kếtquả
nhập vào form
Trang 273.4.4.3 Xem chi tiết sản phẩm
chọn
Truy cập cơ sở dữ liệu lấy sản phẩm có
được gửi đến làm đầu vào cho trang giỏhàng
Trang 283.4.4.4 Giỏ hàng
hàng thực tế dùng để chứa mặt hàng
mà khách chọn mua
sửa,xóa)
Truy cập cơ sở dữ liệu lấy ra các sảnphẩm được chọn mua liệt kê thànhdanh sách các mặt hàng trong giỏ.Tính tổng giá trị giỏ hàng
đã mua và tổng giá trị của giỏ hàng
dùng cần đăng nhập với tài khoản đãđăng ký trên website
Trang 293.4.4.5 Thanh toán giỏ hàng
hàng và muốn thanh toán giỏ hàng
Mã người dùng đang đăng nhập
Lấy thông tin khách hàng đang đăngnhập từ cơ sở dữ liệu cho vào formthông tin thanh toán
Bấm chọn đặt hàng thông tin đơn hàngđược lưu vào cơ sở dữ liệu
liệu
Xử lý tình huống Nếu chưa đăng nhập thì chuyển đếnyêu cầu đăng nhập
Kiểm tra sự tương thích của thông tinnhập vào from
Khi thông tin được xác nhận đầy đủ,hóa đơn hàng sẽ được lưu vào cơ sở dữliệu
Trang 303.4.4.6 Đăng ký thành viên
đưa vào cơ sở dữ liệu
của thông tin Nếu thông tin thích hợpchuyển vào cơ sở dữ liệu
Trang 313.4.4.7 Đăng nhập
Khi đã đăng nhập, khách hàng có thểxem, sửa được thông tin cá nhân vàlịch sử
Trang 323.4.5.Thiết kế chức năng theo yêu cầu
3.4.5 1.Thiết kế chức năng theo yêu cầu (phần người dùng)
Trang chủ
kiếm
Liên hệ phản hồi
Đăng nhập
Mua sản
Thông tin cá
Trang 333.3.5.2 Thiết kế chức năng trang Admin (dành cho quản trị)
Hình 3.13: Sơ đồ hoạt động đối với Admin
Trang chủ admin
Trang 34CHƯƠNG 4: LẬP TRÌNH VÀ CÀI ĐẶT
4.1.GIAO DIỆN
4.1.1.Giao diện trang chủ
Hình 4.1: Giao diện trang chủ dành cho người sủ dụng
Trang 354.1.2.Giao diện tìm kiếm sản phẩm theo nhà xuất bản
Hình 4.2: Giao diện trang tìm kiếm sản phẩm theo nhà xuất bản