TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN , BÁO CÁO BTL THUỘC HỌC PHẦN THỰC TẬP CƠ SỞ NGÀNH ĐỀ TÀI TÌM HIỂU PHP VÀ WEBSITE BÁN LAPTOP VÀ PHỤ KIỆN GVHD Nhóm Lớp Thành viên 62 Hà Nội, Năm 2022 Thực Tập Cơ Sở Ngành MỤC LỤC LỜI MỞ ĐẦU 3 CHƯƠNG 1 4 GIỚI THIỆU VỀ CÔNG NGHỆ SỬ DỤNG CHO DỰ ÁN PHẦN MỀM 4 1 1 Một vài khái niệm về php 4 1 2 Giới thiệu về mô hình MVC 5 1 2 1 Khái niệm chung 5 1 2 2 Mô hình MVC trong dự án website 7 1 2 2 1 Controller trong dự án website 7 1.
Trang 1KHOA CÔNG NGHỆ THÔNG TIN
======***======
BÁO CÁO BTL THUỘC HỌC PHẦN:
Trang 2MỤC LỤC
2.2.2 Phân tích use case đăng nhập 18
2.2.3 Phân tích use case xem sản phẩm theo danh mục 20
2.2.4 Phân tích use case đánh giá sản phẩm 22
2.2.5 Phân tích use case tìm kiếm sản phẩm 25
2.2.6 Phân tích use case đặt hàng 27
2.2.7 Phân tích use case xem bài viết 30
2.2.8 Phân tích use case xem thông tin chi tiết sản phẩm 31
2.2.9 Phân tích use case bảo trì sản phẩm 33
2.2.10 Phân tích use case bảo trì bài viết 37
2.3 Hình dung màn hình website 42
2.3.1 Màn hình đăng nhập 42
2.3.2 Màn hình trang chủ 42
2.3.3 Màn hình tìm kiếm sản phẩm 43
2.3.4 Màn hình danh mục sản phẩm 45
2.3.5 Màn hình giỏ hàng 46
2.3.6 Màn hình đánh giá sản phẩm 46
2.3.7 Màn hình bảo trì sản phẩm 47
2.3.8 Màn hình bảo trì bài viết 48
KẾT LUẬN 50
Trang 3Ở nước ta việc sử dụng và áp dụng website thương mại điện tử để đẩynhanh tốc độ xử lý các vấn đề trong công việc còn nhiều hạn chế do mọingười chưa nắm bắt được tác dụng và độ hiệu quả cao của website thươngmại điện tử mang lại Chính vì sự cấp thiết của vấn đề làm gì để có thể giảiquyết công việc thật nhanh chóng, hiệu quả, tiết kiệm thời gian, chúng em xinđưa ra một ứng dụng của website thương mại điện tử trong việc hỗ trợ quảntrị web đó là: Xây dựng hệ thống website thương mại điện tử.
Trong thời gian hoàn thành công việc có thể sẽ có những thiếu sót màchúng em chưa thể hoàn thành một cách trọn vẹn Kính mong quý thầy côcùng các bạn sẽ đóng góp thêm để chúng em có một hệ thống mang lại nhiềutrải nghiệm tốt cho người dùng
Chúng em xin chân thành cảm ơn!
Trang 4CHƯƠNG 1 GIỚI THIỆU VỀ CÔNG NGHỆ SỬ DỤNG CHO DỰ
ÁN PHẦN MỀM
1.1 Một vài khái niệm về php
PHP 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
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ậptrì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ớinhau và hoàn chỉnh sản phẩm của mình Đối với lập trình viên trong mỗi mộtlĩ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ữngphầ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ấutrúc cơ bản để xây dựng những ứng dụng đó Hay nói cách khác, PHPframework 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
Trang 51.2.1 Khái niệm chung
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…
Hình 1: Các phành phần cơ bản của mô hình MVC
Luồng xử lý trong của mô hình MVC
-Khi một yêu cầu của từ máy khách (Client) gửi đến Server Thì bị Controller trong MVC chặn lại để xem đó là URL request hay sự kiện
-Sau đó, Controller xử lý input của user rồi giao tiếp với Model trongMVC
-Model chuẩn bị data và gửi lại cho Controller
Trang 6-Cuối cùng, khi xử lý xong yêu cầu thì Controller gửi dữ liệu trở lạiView và hiển thị cho người dùng trên trình duyệt.
Hình 2: mô tả luồng xử lý trong của mô hình MVC
Trang 71.2.2.1 Controller trong dự án website
Là bộ phận có nhiệm vụ xử lý các yêu cầu người dùng đưa đến thông qua View Một controller bao gồm cả Model lẫn View Nó nhận input và thực hiện các update tương ứng.(Hình 3)
Vị trí lưu : (Hình 3)
Hình 3: Vị trí thư mục controller trong dự án
Trang 81.2.2.2 View trong dự án website
Vị trí lưu: View trong Laravel là các file trình bày dữ liệu (code html,css, js) (Hình 4)
Hình 4: Vị trí view trong dự án
1.2.2.3 Model trong dự án website
Là bộ phận có chức năng lưu trữ toàn bộ dữ liệu của ứng dụng và là cầu nối giữa 2 thành phần bên dưới là View và Controller Một model là dữ liệu được sử dụng bởi chương trình Đây có thể là cơ sở dữ liệu, hoặc file XML bình thường hay một đối tượng đơn giản Chẳng hạn như biểu tượng hay là một nhân vật trong game
Vị trí lưu : (Hình 5)
Trang 9Hình 5 : vị trí view
1.3 Lịch sửa phát triển của php
PHP được phát triển từ một sản phẩm có tên là PHP/FI PHP/FI
do Rasmus Lerdorf tạo ra năm 1994, ban đầu được xem như là một tập con đơn giản của các mã kịch bản Perl để theo dõi tình hình truy cập đến bản sơ yếu lý lịch của ông trên mạng Ông đã đặt tên cho bộ mã kịch bản này là 'Personal Home Page Tools' Khi cần đến các chức năng rộng hơn, Rasmus đãviết ra một bộ thực thi bằng C lớn hơn để có thể truy vấn tới các cơ sở dữ liệu và giúp cho người sử dụng phát triển các ứng dụng web đơn giản
Rasmus đã quyết định công bố mã nguồn của PHP/FI cho mọi người xem, sử dụng cũng như sửa các lỗi có trong nó đồng thời cải tiến mã nguồn
PHP/FI, viết tắt từ "Personal Home Page/Forms Interpreter", bao gồm một số các chức năng cơ bản cho PHP như ta đã biết đến chúng ngày nay Nó
có các biến kiểu như Perl, thông dịch tự động các biến của form và cú pháp
Trang 10HTML nhúng Cú pháp này giống như của Perl, mặc dù hạn chế hơn nhiều, đơn giản và có phần thiếu nhất quán.
Vào năm 1997, PHP/FI 2.0, lần viết lại thứ hai của phiên bản C, đã thu hút được hàng ngàn người sử dụng trên toàn thế giới với xấp xỉ 50.000 tên miền đã được ghi nhận là có cài đặt nó, chiếm khoảng 1% số tên miền có trên mạng Internet Tuy đã có tới hàng nghìn người tham gia đóng góp vào việc tu chỉnh mã nguồn của dự án này thì vào thời đó nó vẫn chủ yếu chỉ là dự án củamột người
PHP/FI 2.0 được chính thức công bố vào tháng 11 năm 1997, sau một thời gian khá dài chỉ được công bố dưới dạng các bản beta Nhưng không lâu sau đó, nó đã được thay thế bởi các bản alpha đầu tiên của PHP 3.0
1.4 Ưu điểm và nhược điểm của php
1.4.1 Ưu điểm
- Sử dụng mã nguồn mở: Việc cài đặt cũng như sử dụng ngôn ngữ lập trình PHP rất dễ dàng và hoàn toàn miễn phí dành cho tất cả mọi người Vì vậy nên ngôn ngữ này luôn được cài đặt rất nhiều trên các Web Server như: IIS, Apache, Nginx
- Có tính cộng đồng cao: Do PHP là mã nguồn mở, lại dễ sử dụng nên ngôn ngữ này được ưa chuộng từ cộng đồng các lập trình viên Cộng đồng ngôn ngữ này rất rộng rãi và đảm bảo được tính chất lượng Đã có không ít diễn đàn, Blog, website trong và ngoài nước giải thích về ngôn ngữ này nên khả năng tiếp cận của mọi người sẽ dễ dàng và nhanh chóng hơn
- Hệ thống thư viện phong phú: Do lượng người dùng nhiều nên thư việncủa ngôn ngữ PHP ngày càng được phát triển và mở rộng Với thư viện Code hay hàm phong phú sẽ giúp cho việc học tập hoặc viết các ứng dụng PHP trở nên dễ dàng và nhanh chóng Do đó, đây chính là đặc điểm làm cho ngôn ngữnày trở nên nổi bật Ngôn ngữ PHP có thể kết hợp với những cơ sở dữ liệu lớnhơn như: Oracle, MySQL, Cassandra
Trang 11- Tính bảo mật: Do đây là mã nguồn mở, đồng thời được sự hỗ trợ của cộng đồng các lập trình nên ngôn ngữ lập trình PHP sẽ an toàn khi sử dụng Khi kết hợp với kỹ thuật bảo mật ở các tầng khác nhau thì ngôn ngữ lập trình
sẽ chắc chắn và đảm bảo được hoạt động của website
Trang 12CHƯƠNG 2 CÁC BƯỚC XÂY DỰNG WEBSITE BÁN
LAPTOP VÀ PHỤ KIỆN 2.1 Khái niệm website thương mại điện tử
KN: Webite thương mại điện tử là trang thông tin điện tử được tạo lập
để phục vụ một phần hoặc toàn bộ quy trình hoạt động mua bán hàng hóa haydịch vụ, từ trưng bày giới thiệu sản phẩm đến giao kết hợp đồng, cung ứngdịch vụ, tiến hành thanh toán và các dịch vụ sau bán hàng
Website thương mại điện tử bao gồm 2 loại hình:
• Website bán hàng: là các trang do tổ chức, cá nhân tự thiết lập đểphục
vụ hoạt động mua bán hàng hóa hay cung ứng dịch vụ của chínhmình
mà không bán sản phẩm / dịch vụ của nhà sản xuất khác
• Website cung cấp dịch vụ thương mại điện tử: bao gồm các sànthương
mại điện tử như: Shopee, TiKi, Lazada, Sen Đỏ, các websitekhuyến
mãi trực tuyến hay các trang web đấu giá trực tuyến như eBay,Sohot
2.2 Các bước xây dựng 1 website bán phụ kiện và laptop
cơ bản
• Bước 1: Xác định dạng website muốn thành lập
Bạn cần xác định mình muốn xây dựng một website bán hàng trực
tuyến hay một sàn thương mại điện tử, blog, Bên cạnh đó, bạn cần xácđịnh sản phẩm, dịch vụ hay lĩnh vực mình muốn kinh doanh thông quawebsite đó
• Bước 2: Lựa chọn và tiến hành đăng ký tên miền
Trang 13Lựa chọn tên miền(địa chỉ web) phù hợp cho website của mình, bạn
nên chọn các tên ngắn gọn, dễ nhớ Sau đó, đăng kí tên miền với các đơn
vị cung cấp như: WordPress, Wix, blogger, Nếu muốn có tên miền đẹp,ngắn, chuyên nghiệp, bạn nên mua các tên có trả phí
• Bước 3: Xác định mục tiêu cho website
Xác định rõ lý do lập website thương mại điện tử là gì, để giưới thiệusản phẩm, để PR thương hiệu hay thúc đẩy bán hàng, Các mục tiêu này
sẽ ảnh hưởng đến những yêu cầu, cũng như cách thức vận hành chowebsite
• Bước 4: Vạch ra yêu cầu cho website thương mại điện tử
Đưa ra list các yêu cầu cần thiết cho website Đó sẽ là cơ sở cho các
nhà thiết kế web thực hiện công việc của họ Có thể vạch ra yêu cầu bằngcách trả lời các câu hỏi sau:
- Bạn cần tao bao nhiêu website?
- Website cần bao nhiêu lưu lượng lưu trữ?
- Cần những tiện ích cần thiết nào, VD: bản đồ, mục đánh giá củakhách hàng, hộp chat trực tuyến, giỏ hàng,
- Website thương mại điện tử có cần liên kết với các trang mang xã hộicủa bạn như facebook, Youtube, Instagram, hay không?
- Bạn có cần chèn các video, âm thanh và các loại file khác trên webkhông?
• Bước 5: Lựa chọn người thiết kế website
Bạn nên thuê dịch vụ thiết kế website thương mại điện tử từ một đơn
vị uy tín bên ngoài Bởi website có vai trò quảng bá thương hiệu đến kháchhàng, vì vậy bạn nên đầu tư tìm một dịch vụ thiết kế website chuyênnghiệp
Ngoài ra, bạn nên lựa chọn dịch vụ thiết kế website chuẩn SEO đểgiúp trang web được đánh giá cao trên các công cụ tìm kiếm
• Bước 6: Mua dịch vụ hosting (dịch vụ lưu trữ website)
Dữ liệu website thương mại điện tử của bạn cần được lưu trữ trênmột hệ thống máy chủ nào đó và các nhà cung cấp dịch vụ hosting sẽ giúp
Trang 14bạn làm điều này Bạn có thể thuê hosting từ một tổ chức uy tín bằng cáchtìm kiếm, nghiên cứu thông tin về các nhà cung ứng trên internet hay quangười quen Ngoài ra, bạn cũng có thể thuê hosting của đơn vị thiết kếwebsite đã chọn ở bước trên nếu họ có dịch vụ đó.
• Bước 7: Trỏ tên miền website
Sau khi đã lựa chọn được dịch vụ hosting, bạn tiến hành trỏ tên miềnwebsite thương mại điện tử đăng ký ở bước 2 về nơi lưu trữ web Bạn cóthể tìm kiếm trên mạng cách trỏ tên miền về hosting hoặc liên hệ với đơn
vị hosting đó để được hỗ trợ
• Bước 8: Xây dựng nội dung trang thương mại điện tử
Trước khi vận hành, bạn cần xây dựng những thông tin cơ bản cầnccos trên website thương mại điện tử như: tông tin liên hệ( địa chỉ công ty,email, điện thoại, ), bài viết giới thiệu về doanh nghiệp, lĩnh vực kinhdoanh,
• Bước 9: Quảng bá website thương mại điện tử
Sau khi xây dựng xong website, ban cần quảng bá đến người dùng
về sự thành lập, chức năng, điểm độc đáo của website để thu hút kháchhàng truy cập web Có nhiều cách để quảng bá như: chạy quảng cáoGoogle, banner quangrcaos, mạng xã hội, căn cứ vào đặc điểm hành vingười dùng mục tiêu trên internet cho phù hợp
• Bước 10: Liên tục phát triển website
Sau khi khách hàng biết đến website thương mại điện tử của mình,
bạn nên liên tục nghiên cứu cách thức cung cấp những nội dung giá trị đểgiữ chân khách hàng Hãy luôn tiếp thu các ý kiến đóng góp, comment củangười dùng để phát triển trang web ngày một tốt hơn
Trang 15CHƯƠNG 3 PHÂN TÍCH USE CASE
2.1 Use case tổng quan
DanhGiaSanPham
DatHang KhachHang
Trang 162.2 Phân tích các use case
2.2.1 Phân tích use case đăng ký
Use case này bắt đầu khi khách hàng kích chuột vào nút “Đăng ký”
ở trang chủ và nhấn chọn “Đăng ký” Hệ thống sẽ hiển thị ra màn hìnhyêu cầu nhập số điện thoại, email, mật khẩu
Khách hàng nhập số điện thoại Hệ thống sẽ gửi mã OTP về điện thoại
Khách hàng nhập mã OTP vừa nhận được và gửi xác nhận, hệ thống xác nhận thành công và đưa ra thông báo Đăng ký thành công Use case kết thúc
*) Luồng rẽ nhánh:
Tại bước 2 trong luồng cơ bản, nếu khách hàng nhập không đúngđịnh dạng số điện thoại, hệ thống sẽ hiển thị thông báo lỗi và yêu cầunhập lại Use case kết thúc
Tại bước 3 trong luồng cơ bản, nếu khách hàng nhập không đúngOTP hoặc quá thời gian nhập mã thì tài khoản sẽ không được đăng ký.Use case kết thúc
Tại bất kỳ thời điểm nào trong quá trình thực hiện use case nếukhông kết nối được cơ sở dữ liệu thì hệ thống sẽ không làm việc và usecase kết thúc
2.2.1.3 Các yêu cầu đặc biệt
Mỗi số điện thoại chỉ tạo được một tài khoản duy nhất
Trang 172.2.1.4 Tiền điều kiện
Khách hàng chưa có tài khoản truy cập trên hệ thống
2.2.1.5 Hậu điều kiện:
Không có
2.2.1.6 Điểm mở rộng:
không có
2.2.1.7 Biểu đồ trình tự
Trang 182.2.1.8 Biều đồ lớp phân tích tổng quan
2.2.2 Phân tích use case đăng nhập
*) Luồng rẽ nhánh:
Tại bước 1 trong luồng cơ bản, nếu nhập sai tài khoản hoặc tài
Trang 19Tại bất kỳ thời điểm nào trong quá trình thực hiện use case, nếukhông kết nối được cơ sở dữ liệu thì hệ thống sẽ không làm việc và usecase kết thúc.
2.2.1.3 Các yêu cầu đặc biệt
Không có
2.2.1.4 Tiền điều kiện
Khách hàng đã có tài khoản truy cập trên hệ thống
2.2.1.5 Hậu điều kiện
Không có
2.2.1.6 Điểm mở rộng
Không có
2.2.1.7 Biểu đồ trình tự
Trang 202.2.2.8 Biểu đồ lớp phân tích tổng quan
2.2.3 Phân tích use case xem sản phẩm theo danh mục
mã sản phẩm , tên sản phẩm , giá , giảm giá, ảnh minh họa Use case kếtthúc
*) Luồng rẽ nhánh
Tại bước 1 trong luồng cơ bản, nếu không hiển thị các sản phẩm nào thuộc danh mục cha vừa chọn từ bảng “PRODUCTS”, thì hệ thống
Trang 21sẽ hiển thị một thông báo: “Không tìm thấy sản phẩm nào thuộc danh mục này!” và use case kết thúc.
Tại bất kỳ bước nào trong luồng cơ bản, nếu không kết nối được với
cơ sở dữ liệu thì hệ thống sẽ hiển thị một thông báo lỗi và use case kết thúc
2.2.3.3 Các yêu cầu đặc biệt
Trang 222.2.3.8 Biểu đồ lớp phân tích tổng quan
2.2.4 Phân tích use case đánh giá sản phẩm
Khách hàng nhập: Họ tên, số điện thoại, hình ảnh thực tế, nhận xét
và đánh giá mức độ hài lòng Use case kết thúc
Trang 23Tại bước 1 trong luồng cơ bản, nếu khách hàng không nhập đầy đủ thông tin thì hệ thống sẽ hiển thị một thông báo: “Nhận xét đầy đủ trước khi gửi!” và use case kết thúc.
Tại bất kỳ bước nào trong luồng cơ bản, nếu không kết nối được với
cơ sở dữ liệu thì hệ thống sẽ hiển thị một thông báo lỗi và use case kết thúc
2.2.4.3 Các yêu cầu đặc biệt
Khách hàng muốn đánh giá nhận xét về sản phẩm thì phải là có số điện thoại, email
2.2.4.4 Tiền điều kiện
Trang 242.2.4.7 Biều đồ trình tự
Trang 252.2.4.8 Biều đồ lớp phân tích tổng quan
2.2.5 Phân tích use case tìm kiếm sản phẩm
2.2.5.1 Mô tả vắn tắt
Use case này cho phép khách hàng tìm kiếm sản phẩm theo tên
2.2.5.2 Luồng sự kiện
*) Luồng cơ bản
Use case này bắt đầu khi khách hàng nhấn trên thanh tìm kiếm , gõ
từ khóa và hệ thống sẽ lấy danh sách sản phẩm khớp với từ khóa mà khách hàng nhập từ trong bảng “PRODUCTS” Use case kết thúc
*) Luồng rẽ nhánh