Đang tải... (xem toàn văn)
BỘ GIÁO DỤC VÀ ĐÀO TẠOTRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐÔNG Á
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO
Trang 3LỜI MỞ ĐẦU
Ngày nay công nghệ thông tin đã có những bước phát triển mạnh mẽ theo cả chiều rộng và chiều sâu Máy tính điện tử không còn là một thứ phương tiện quý hiếm mà đang dần trở thành một công cụ làm việc và giải trí thông dụng của con người, không chỉ ở nơi làm việc mà còn ở ngay ở trong gia đình Đặc biệt là công nghệ thông tin được áp dụng trên mọi lĩnh vực kinh tế, chính trị, xã hội
Ứng dụng công nghệ thông tin và tin học hóa được xem là một trong yếu tố mang tính quyết định trong hoạt động của quốc gia, tổ chức và trong cả các cửa hàng Nó đóng vai trò hết sức quan trọng và có thể tạo nên bước đột phá mạnh mẽ Mạng Internet là một trong những sản phẩm có giá trị hết sức lớn lao và ngày càng trở nên một công cụ không thể thiếu, là nền tảng để truyền tải, trao đổi thông tin trên toàn cầu Bằng Internet, chúng ta đã thực hiện được những công việc với tốc độ nhanh hơn, chi phí thấp hơn nhiều so với các cách thức truyền thống
Chính điều này đã thúc đẩy sự khai sinh và phát triển của thương mại điện tử trên khắp thế giới, làm biến đổi đáng kể bộ mặt văn hóa, nâng cao đời sống con người Trong hoạt động sản xuất, kinh doanh, thương mại điện tử đã khẳng định được xúc tiến và thúc đẩy sự phát triển của doanh nghiệp Đối với một hàng, việc quảng bá và giới thiệu sản phẩm đến khách hàng đáp ứng nhu cầu mua sắm ngày càng cao của khách hàng sẽ là cần thiết
Vì vậy em đã thực hiện đề tài “ Xây dựng Website bán quần áo ” Cửa hàng có thể đưa các sản phẩm lên Website của mình và quản lý Website đó, khách hàng có thể tự đặt mua, mua hàng của cửa hàng mà không cần đến cửa hàng, cửa hàng sẽ gửi sản phẩm đến tận tay khách hàng Website là nơi cửa hàng quảng bá tốt nhất tất cả các sản phẩm mình bán ra
Trang 4TÓM TẮT DỰ ÁN
Với mức độ phức tạp của quá trình thiết kế ra một Website, cộng thêm vấn đề về thời gian cho nên đề tài “ Website bán quần áo bằng Laravel” chỉ dừng lại ở một số chức năng cơ bản và áp dụng xây dựng ứng dụng thử nghiệm trang Web bán quần áo trên màn cho các cửa hàng thời trang.
Website với mục đích cung cấp cho khách hàng các thông tin chính xác về các sản phẩm thời trang đang có mặt trên thị trường cà cách thức đặt mua hàng qua mạng Các thông tin được cấp nhật thường xuyên và nhanh chóng Vì vậy, rút ngắn được khoảng cách giữa người mua và người bán, đưa thông tin về các sản phẩm mới nhanh chóng đến cho khách hàng.
Do còn một số hạn chế, nên Website mới dừng lại ở chức năng đặt hàng và hình thành thanh toán trực tiếp Trong tương lai, hệ thống sẽ phát triển theo hướng thương mại điện tử Do giới hạn về việc trình bày văn bản báo cáo nên chirtrifnh bày được một số đặc điểm quan trọng từ khảo sát, phân tích, thiết kế cho đến cài đặt hệ thống Rất mong nhận được sự thông cảm của Thầy Cô và các bạn
Trang 5Hình 1 Sơ đồ nguyên lý hoạt động với MySQL 10
Hình 2Chức năng đăng kí của Người dùng 11
Trang 7DANH MỤC BẢNG BIỂU
Trang 92.Framework Laravel 9
2.1.Framework là gì ? PHP Framework là gì ? 9
2.2.Mô hình MVC là gì ? 10
2.3.Ưu và nhược điểm của Laravel 11
2.4.Những tính năng hữu ích của Laravel 12
3.Cơ sở dữ liệu MySQL 12
3.1.Giới thiệu 12
3.2.Vai trò 13
CHƯƠNG III: PHÂN TÍCH THIẾT KẾ HỆ THỐNG 14
1.Phân tích yêu cầu đề tài 14
CHƯƠNG IV: THIẾT KẾ CƠ SỞ DỮ LIỆU 24
1.Sơ đồ mối quan hệ thực thể 24
Trang 102.7.Bảng Admin 31
CHƯƠNG V: THIẾT KẾ WEBSITE 32
1.Giao diện cho trang khách hàng 32
1.1.Trang chủ 32
1.2.Trang tất cả sản phẩm 33
1.3.Đang giảm giá 33
1.4.Trang đăng ký tài khoản 34
1.5.Trang đăng nhập 34
1.6.Trang thông tin của User khi đã đăng nhập 35
1.7.Trang hiển thị đơn mua của User 35
1.8.Trang đổi mật khẩu 36
1.9.Trang giỏ hàng 36
1.10 Trang đặt hàng 37
2.Giao diện cho trang quản lý 37
2.1.Trang quản lí danh mục 37
2.2.Trang quản lí thương hiệu 38
2.3.Trang quản lí sản phẩm 38
2.4.Trang quản lí sản phẩm đang giảm giá 39
2.5.Trang quản lí đơn hàng 39
2.6.Trang thống kê doanh thu 40
Trang 111.Yêu cầu cài đặt: 422.Hướng dẫn chi tiết: 42
Trang 12CHƯƠNG I: TỔNG QUAN
1 Giới thiệu đề tài
Việc kinh doanh – mua bán là nhu cầu không thể thiếu đối với mỗi chúng ta Trong thời đại cạnh tranh hiện nay việc giới thiệu sản phẩm kinh doanh đến từng cá nhân với chi phí thấp, hiệu quả cao là một vấn đề nan giải của người kinh doạnh cùng với nhu cầu mua sắm với những sản phẩm đa chủng loại, đạt chất lượng, và hợp túi tiền của người tiêu dùng vì vậy thương mại điện tử đã được ra đời và dần dần phất triển trên toàn thế giới Việc phổ biến các sản phẩm của cửa hàng kinh doanh đến khách hàng thông qua các bảng báo giá tuy nhiên chi phí khá cao vì số lượng sản phẩm ngày một đa dạng và giá cả thay đổi liên tục và tính phổ biến không cao chưa đáp ứng được nhu cầu của người dùng Mặt khác cửa hàng còn gặp nhiều khó khăn như chưa quản lí được người dùng, thông tin nhà sản xuất, quản lý sản phẩm ….
Nắm bắt được tình hình trên, em tiến hành thiết kế trang Web bán quần áo online để mong sao giúp cho các cửa hàng phát triển nhanh hơn, giúp cho chủ cửa hàng quản lí cửa hàng một cách tốt hơn.
2 Mục đích làm đề tài
Khi xây dựng một Website, đầu tiên chúng ta phải hình dung ra ta cần phải thiết kế những gì cho Website của mình Không có chủ định và mục tiêu rõ ràng thì cả Website đó trở nên sai lầm, lan man và cuối cùng đi tới một hướng khó có thể trở lại Thiết kế cẩn thận và định hướng rõ là chìa khóa tới thành công của việc xây dựng một Website Vận dụng tổng hợp những kiến thức đã học để tiến hành thiết kế một Website bán quần áo online nhằm giải quyết những khó khăn hiện tại của cửa hàng.
Tìm hiểu thực trạng thương mại điện tử tại Việt Nam để triển khai hệ thống thương mại điện tử tại cửa hàng cho phù hợp Khai phá lợi ích của Internet để hướng đến một môi trường kinh doanh toàn cầu Giảm chi phí bán hàng tiếp thị và giao dịch Bằng phương tiện Internet/Web, một nhân viên bán hàng có thể giao dịch với rất nhiều khách hàng.
Trang 13PHP là từ viết tắt của thuật ngữ Personal Home Page Đây là một dạng mã lệnh hoặc một chuỗi ngôn ngữ kịch bản Trong đó, ngôn ngữ PHP chủ yếu được phát triển để dành cho những ứng dụng nằm trên máy chủ Mỗi khi các lập trình viên PHP viết các chương trình thì các chuỗi lệnh sẽ được chạy ở trên server, từ đó sinh ra mã HTML Nhờ vậy mà những ứng dụng trên các website có thể chạy được một cách dễ dàng.
Ngôn ngữ PHP thông thường sẽ phù hợp với việc lập trình website bởi nó có thể dễ dàng kết nối với các website khác có sử dụng HTML để chạy trên các trình duyệt web Vì vậy, đây là ngôn ngữ lập trình được người dùng đánh giá là khá dễ đọc Ngôn ngữ PHP cũng trở thành ngôn ngữ web dev phổ biến mà các lập trình viên phải học trước khi bắt đầu vào nghề.
2 Framework Laravel
2.1.Framework là gì ? PHP Framework là gì ?
Framework chính là một thư viện với các tài nguyên có sẵn cho từng lĩnh vực để lập trình viên sử dụng thay vì phải tự thiết kế Có Framework, lập trình viên chỉ tìm hiểu và khai thác những tài nguyên đó, gắn kết chúng lại với nhau và hoàn chỉnh sản phẩm của mình Đối với lập trình viên trong
Trang 14mỗi một lĩnh vực, họ cần phải xây dựng các lớp chương trình để xây dựng nên những phần mềm, ứng dụng thành phẩm.
PHP Framework là thư viện làm cho sự phát triển của những ứng dụng web viết bằng ngôn ngữ PHP trở nên trôi chảy hơn Bằng cách cung cấp 1 cấu trúc cơ bản để xây dựng những ứng dụng đó Hay nói cách khác, PHP framework giúp bạn thúc đẩy nhanh chóng quá trình phát triển ứng dụng Giúp bạn tiết kiệm được thời gian, tăng sự ổn định cho ứng dụng Giảm thiểu số lần phải viết lại code cho lập trình viên.
2.2.Mô hình MVC là gì ?
MVC (Model-View-Controller) là mẫu kiến trúc phần mềm trên máy tính nhằm mục đích tạo lập giao diện cho người dùng Theo đó, hệ thống MVC được chia thành ba phần có khả năng tương tác với nhau và tách biệt các nguyên tắc nghiệp vụ với giao diện người dùng.
Ba thành phần ấy bao gồm:
Controller: Giữ nhiệm vụ nhận điều hướng các yêu cầu từ người dùng và
gọi đúng những phương thức xử lý chúng.
Model: Là thành phần chứa tất cả các nghiệp vụ logic, phương thức xử lý,
truy xuất database, đối tượng mô tả dữ liệu như các Class, hàm xử lý…
View: Đảm nhận việc hiển thị thông tin, tương tác với người dùng, nơi
chứa tất cả các đối tượng GUI như textbox, images…
Bằng cách này, thông tin nội hàm được xử lý tách biệt với phần thông tin xuất hiện trong giao diện người dùng Bảo đảm các nguyên tắc nghề nghiệp của lập trình viên.
Trang 152.3.Ưu và nhược điểm của Laravel Ưu điểm của Laravel là gì?
- Sử dụng các tính năng mới nhất của PHP
Sử dụng Laravel 8 giúp các lập trình viên tiếp cận những tính năng mới nhất mà PHP cung cấp, nhất là đối với Namespaces, Interfaces, Overloading, Anonymous functions và Shorter array syntax.
- Nguồn tài nguyên vô cùng lớn và sẵn có
Nguồn tài nguyên của Laravel rất thân thiện với các lập trình viên với đa dạng tài liệu khác nhau để tham khảo Các phiên bản được phát hành đều có nguồn tài liệu phù hợp với ứng dụng của mình.
- Tích hợp với dịch vụ mail
Lavarel là framework được trang bị API sạch trên thư viện
SwiftMailer, do đó, bạn có thể gửi thư qua các dịch vụ dựa trên nền tảng
đám mây hoặc local.
- Tốc độ xử lý nhanh
Laravel hỗ trợ hiệu quả cho việc tạo lập website hay các dự án lớn trong thời gian ngắn Vì vậy, nó được các công ty công nghệ và lập trình viên sử dụng rộng rãi để phát triển các sản phẩm của họ.
Trang 16- Dễ sử dụng
Laravel được đón nhận và trở nên sử dụng phổ biến vì nó rất dễ sử dụng Thường chỉ mất vài giờ, bạn có thể bắt đầu thực hiện một dự án nhỏ với vốn kiến thức cơ bản nhất về lập trình với PHP.
- Tính bảo mật cao
Laravel cung cấp sẵn cho người dùng các tính năng bảo mật mạnh mẽ
để người dùng hoàn toàn tập trung vào việc phát triển sản phẩm của mình: Sử dụng PDO để chống lại tấn công SQL Injection.
Sử dụng một field token ẩn để chống lại tấn công kiểu CSRF.
Mặc định đều được Laravel escape các biến được đưa ra view mặc định, do đó có thể tránh được tấn công XSS.
Nhược điểm của Laravel là gì?
- So với các PHP framework khác, Laravel bộc lộ khá ít nhược điểm Vấn đề
lớn nhất có thể kể đến của framework này là thiếu sự liên kết giữa các phiên bản, nếu cố cập nhật code, có thể khiến cho ứng dụng bị gián đoạn hoặc phá vỡ.
- Bên cạnh đó, Lavarel cũng quá nặng cho ứng dụng di động, khiến việc tải
trang trở nên chậm chạp.
2.4.Những tính năng hữu ích của Laravel
Những tính năng tuyệt vời có thể kể đến của Laravel là:
Composer: sử dụng để nâng cấp, cài đặt…
Eloquent ORM: thao tác với cú pháp đẹp mắt và đơn giản Restful API: hỗ trợ biến Laravel thành một web service API Artisan: cung cấp các lệnh cần thiết để phát triển ứng dụng View: giúp code sạch sẽ hơn rất nhiều.
Migrations: hỗ trợ tạo các trường trong cơ sở dữ liệu, thêm các cột trong bảng, tạo mối quan hệ giữa các bảng, hỗ trợ quản lý cơ sở dữ liệu.
Authentication: cung cấp sẵn các tính năng đăng nhập, đăng ký, quên mật khẩu…
Unit Testing: hỗ trợ test lỗi để sửa chữa
Trang 26sẽ lựa chọn sản phẩm nào cần xóa sẽ có icon “Delete” tương ứng bên cạnh Sau khi xóa xong thì sẽ hiện thị lại danh sách sản phẩm.
1.2.5 Quản lí sản phẩm giảm giá
- Chức năng này cho phép người quản lý quản lý toàn bộ tài nguyên, dữ liệu của
các sản phẩm đang được giảm giá Các thông tin sản phẩm gồm: Chi tiết: Tên sản phẩm, đơn giá, giảm giá, giá hiện tại
- Xử lý
Nhập sản phẩm: Khi nhập đầy đủ thông tin về sản phẩm, hệ thống sẽ lưu sản phẩm ở CSDL với một ID riêng biệt cho các sản phẩm để dễ dàng quản lý.
Sửa sản phẩm: Chức năng này được thực hiện khi thông tin của sản phẩm này đã có trong CSDL Sau đó thao tác giống với nhập sản phẩm Xóa sản phẩm: Chức năng này được thực hiện vì cửa hàng không còn được sản xuất hoặc không tiếp tục bán sản phẩm đó trên thị trường nữa Quản lý sẽ lựa chọn sản phẩm nào cần xóa sẽ có icon “Delete” tương ứng bên cạnh Sau khi xóa xong thì sẽ hiện thị lại danh sách sản phẩm giảm giá
1.2.6 Thống kê các đơn hàng, doanh thu, sản phẩm bán được nhiều nhất- Có chức năng thống kê doanh thu, sản phẩm đã bán, đơn hàng và khách hàng- Hiển thị các mặt hàng hot nhất dựa vào id sản phẩm mà người dùng thêm vào
Cart nhiều nhất.
2 Phân tích thiết kế hệ thống 2.1 Khảo sát hiện trạng
Khách hàng: Người có nhu cầu mua sắm các mặt hàng Khác với việc đặt
hàng trực tiếp tại cửa hàng, khách hàng phải hoàn toàn tự thao tác thông qua từng bước cụ thể để có thể mua được hàng Trên web, các mặt hàng sẽ được sắp xếp theo từng loại mặt hàng giúp cho khách hàng dễ dàng tìm kiếm Trong hoạt động này, khách hàng chỉ cần chọn một mặt hàng nào đó từ trong danh mục thì những thông tin về mặt hàng đó sẽ hiện thị lên màn hình như: hình ảnh, đơn giá, hình ảnh mô tả, mô tả,… và bên cạnh là nút đẻ thêm sản phẩm vào Cart (giỏ hàng) Đây là
Trang 27Cart điện tử mà trong đó chứa các thông tin về hàng hóa lẫn số lượng khách hàng muốn mua và hoàn toàn được cập nhật trong Cart.
Khi khách hàng đặt hàng thi hệ thống hiển thị trang xác lập đơn đặt hàng cùng thông tin về khách hàng và sản phẩm Cuối cùng là do khách hàng tùy chọn đặt hàng hay không?
Nhà quản lý: Người làm chủ hệ thống, có quyền kiểm soát mọi hoạt động của
hệ thống Nhà quản lý được cung cấp một Email và Password để đăng nhập vào hệ thống thực hiện những chức năng của mình.
Nếu như quá trình đăng nhập thành công thì quản lý có thể thực hiện những công việc: quản lý cập nhật các sản phẩm, tiếp nhận đơn khách hàng, kiểm tra đơn hàng và xử lý đơn hàng Khi có như cầu nhập hàng từ nhà cung cấp thì tiến hàng liên lạc với nhà cung cấp để đặt hàng và cập nhật sản phẩm vào trong CSDL.Xác định các tác nhân và chức năng đối với Website
2.2.Biểu đồ các tác nhân sử dụng Tổng quan:
Hình 8: Biểu đồ tổng quan các tác nhân sử dụng
Trang 28CHƯƠNG IV: THIẾT KẾ CƠ SỞ DỮ LIỆU
1 Sơ đồ mối quan hệ thực thể1.1.Mô hình E-R-D
Hình 9: Biểu đồ mô hình E-R-D
Trang 30Thực thể Order
Hình 12: Thực thể Order
Thực thể Order_detail
Hình 13: Thực thể Order_detail
Trang 31Thực thể Customer
Hình 14: Thực thể Customer
Thực thể Customer_detail
Hình 15: Thực thể Customer_detail
Trang 32Thực thể Admin
Hình 16: Thực thể Admin
2 Xác định các bảng thực thể 2.1.Bảng Cartegory
Bảng số liệu 1: Table Cartegory
Tính chấtTên trườngKiểu dữ liệuKích cỡChú thích
2.2.Bảng Product
Bảng số liệu 2: Table Product
Trang 33Tính chấtTên trườngKiểu dữ liệuKích cỡChú thích
Foreign key Cartegory_id Int 11 Mã danh mục
2.3.Bảng Order
Bảng số liệu 3: Table Order
Tính chấtTên trườngKiểu dữ liệuKích cỡChú thích
Foreign key Customer_id Int 11 Mã khách hàng
Trang 34Phone Varchar 255 Số điện thoại
thanh toán
2.4.Bảng Order_detail
Bảng số liệu 4: Table Order_detail
Tính chấtTên trườngKiểu dữ liệuKích cỡChú thích
Foreign key Order_id Int 11 Mã khách hàng
Foreign key Product_id Int 11 Mã sản phẩm
2.5.Bảng Customer
Bảng số liệu 5: Table Customer
Trang 35Tính chấtTên trườngKiểu dữ liệuKích cỡChú thích
2.6.Bảng Customer_detail
Bảng số liệu 6: Table Customer_detail
Tính chấtTên trườngKiểu dữ liệuKích cỡChú thích
Foreign key Secret_key Int 11 Mã bảo mật
2.7.Bảng Admin
Bảng số liệu 7: Table Admin
Trang 36Tính chấtTên trườngKiểu dữ liệuKích cỡChú thích
hàng
CHƯƠNG V: THIẾT KẾ WEBSITE
1 Giao diện cho trang khách hàng1.1.Trang chủ
Hình 17: Trang chủ
Trang 371.2.Trang tất cả sản phẩm
Hình 18: Trang tất cả sản phẩm
1.3.Đang giảm giá
Hình 19: Trang sản phẩm đang giảm giá