1. Trang chủ
  2. » Cao đẳng - Đại học

báo cáo đồ án website xem phim trực tuyến

71 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Website Xem Phim Trực Tuyến
Tác giả Nguyễn Quang Trưởng, Nguyễn Nhật Trường
Người hướng dẫn ThS. Huỳnh Tuấn Anh
Trường học Trường Đại Học Công Nghệ Thông Tin
Thể loại báo cáo đồ án
Năm xuất bản 2023
Thành phố Tp.HCM
Định dạng
Số trang 71
Dung lượng 16,2 MB

Cấu trúc

  • CHƯƠNG 1. GIỚI THIỆU TỔNG QUAN VỀ ĐỀ TÀI (10)
    • 1.1. Lý do hình thành đề tài (10)
    • 1.2. Mục tiêu của đề tài (10)
    • 1.3. Cơ sở khoa học và cơ sở thực tiễn (10)
    • 1.4. Nội dung đề tài (11)
  • CHƯƠNG 2. CƠ SỞ LÝ THUYẾT VÀ CÔNG CỤ SỬ DỤNG (12)
    • 2.1. Các khái niệm (12)
      • 2.1.1. Giới thiệu về Internet (12)
        • 2.1.1.1. Khái niệm (12)
        • 2.1.1.2. Sự ra đời và phát triển của Internet (12)
        • 2.1.1.3. Cơ chế hoạt động của mạng Internet (13)
        • 2.1.1.4. Vai trò to lớn của mạng internet (14)
        • 2.1.1.5. Trình duyệt web (15)
      • 2.1.2. Trang web xem phim trực tuyến (16)
    • 2.2. Giới thiệu về ngôn ngữ lập trình PHP (16)
      • 2.2.1. Định nghĩa PHP (16)
      • 2.2.2. Ưu điểm và nhược điểm của PHP (17)
      • 2.2.3. Lý do nên sử dụng ngôn ngữ PHP (19)
      • 2.2.4. Sự khác biệt của PHP so với ngôn ngữ lập trình khác (20)
    • 2.3. Giới thiệu về hệ quản trị cơ sở dữ liệu MySQL (20)
      • 2.3.1. Khái niệm về MySQL (20)
      • 2.3.2. Quá trình hình thành và phát triển của MySQL (21)
      • 2.3.3. Ưu và nhược điểm của MySQL (22)
      • 2.3.4. MySQL khác gì so với SQL Server (23)
    • 2.4. Tổng quan về XAMPP (24)
  • CHƯƠNG 3. PHÂN TÍCH, THIẾT KẾ, XÂY DỰNG HỆ THỐNG (25)
    • 3.1. Khảo sát hiện trạng và nhu cầu (25)
      • 3.1.1. Khảo sát hiện trạng (25)
      • 3.1.2. Phân tích yêu cầu (26)
        • 3.1.2.1. Yêu cầu chức năng (26)
        • 3.1.2.2. Yêu cầu phi chức năng (27)
    • 3.2. Thiết kế mô hình xử lý dữ liệu (29)
      • 3.2.1. Sơ đồ phân cấp chức năng (29)
      • 3.2.2. Mô hình dòng dữ liệu (29)
        • 3.2.2.1. Mô hình dòng dữ liệu mức 0 (DFD-0) (29)
        • 3.2.2.2. Mô hình dòng dữ liệu mức 1 (DFD-1) (30)
        • 3.2.2.3. Mô hình dòng dữ liệu mức 2 (DFD-2) (30)
      • 3.2.3. Đặc tả sơ đồ usecase (32)
        • 3.2.3.1. Sơ đồ usecase (32)
        • 3.2.3.2. Đặc tả usecase (34)
    • 3.3. Thiết kế cơ sở dữ liệu (36)
    • 3.4. Cài đặt cơ sở dữ liệu (42)
      • 3.4.1. Cài đặt cơ sở dữ liệu các bảng (42)
      • 3.4.2. Mô hình quan hệ dữ liệu (Diagram) (49)
  • CHƯƠNG 4. GIỚI THIỆU SẢN PHẨM MINH HỌA CỦA ĐỀ TÀI (50)
    • 4.1. Trang quản lý dữ liệu (50)
      • 4.1.1. Đăng nhập (50)
      • 4.1.2. Trang chủ (50)
      • 4.1.3. Quản lý giao dịch (51)
      • 4.1.4. Quản lý danh mục (52)
      • 4.1.5. Quản lý thể loại (53)
      • 4.1.6. Quản lý quốc gia (54)
      • 4.1.7. Quản lý phim (55)
      • 4.1.8. Quản lý tập phim (56)
      • 4.1.9. Quản lý link phim (57)
      • 4.1.10. Quản lý thông tin web (58)
    • 4.2. Trang web xem phim (59)
      • 4.2.1. Đăng ký tài khoản (59)
      • 4.2.2. Đăng nhập (60)
      • 4.2.3. Trang chủ (60)
      • 4.2.4. Trang chi tiết phim (63)
      • 4.2.5. Xem phim (65)
      • 4.2.6. Chức năng người dùng (65)
        • 4.2.6.1. Danh mục yêu thích (66)
        • 4.2.6.2. Nâng cấp tài khoản (67)
        • 4.2.6.3. Lịch sử giao dịch (67)
  • CHƯƠNG 5. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI (69)
    • 5.1. Những kết quả đạt được (69)
    • 5.2. Các hạn chế và hướng khắc phục (70)
      • 5.2.1. Hạn chế (70)

Nội dung

GIỚI THIỆU TỔNG QUAN VỀ ĐỀ TÀI

Lý do hình thành đề tài

Trong thời đại số hóa, nhu cầu của người dùng xem phim và giải trí trực tuyến ngày càng tăng cao Điều này được thể hiện qua sự gia tăng của các dịch vụ xem phim trực tuyến như Netflix, Amazon Prime Video, Disney+, và nhiều dự án khác Chính vì vậy, ngành công nghiệp truyền hình truyền thống đang đối mặt với sự suy giảm trọng lượng người xem do sự cạnh tranh từ các dịch vụ trực tuyến Việc xây dựng một website xem phim trực tuyến có thể giúp cung cấp sự linh hoạt và lựa chọn cho người dùng, đồng thời cung cấp cơ hội cho các doanh nghiệp trong ngành thay đổi và thích nghi.

Hiện nay, nhiều người dùng đang tìm kiếm cách tiện lợi để truy cập và xem phim trực tuyến, bất kể nơi họ ở và thiết bị họ sử dụng Website xem phim trực tuyến có tiềm năng cung cấp sự thuận tiện cho người dùng và làm tăng lợi nhuận cho các doanh nghiệp Đặc biệt trong bối cảnh của đại dịch COVID-19, nhu cầu xem phim trực tuyến đã tăng đáng kể do các giới hạn về việc ra khỏi nhà và tối ưu hóa trải nghiệm giải trí tại nhà.

Mục tiêu của đề tài

- Tạo ra một nền tảng trực tuyến cho việc xem phim, cung cấp lựa chọn rộng rãi cho người dùng, từ các thể loại, đạo diễn, diễn viên, và năm sản xuất khác nhau Điều này giúp người dùng tìm kiếm và trải nghiệm phim một cách dễ dàng.

- Xây dựng một website xem phim trực tuyến có giao diện dễ sử dụng, tích hợp cơ sở dữ liệu phim, cung cấp tính năng tìm kiếm, xem phim, quản lý danh sách yêu thích, và tạo một cộng đồng người dùng.

- Sử dụng các kiến thức và kỹ năng hiện có và thu thập thông tin cần thiết để thực hiện dự án một cách hiệu quả.

Cơ sở khoa học và cơ sở thực tiễn

- Đề tài xây dựng website xem phim trực tuyến là một đề tài mới, không phải là việc phát triển tiếp từ một đề tài nghiên cứu trước Mục tiêu là tạo ra một nền tảng xem phim trực tuyến hoàn toàn mới và đáp ứng nhu cầu người dùng hiện đại.

- Để đạt được mục tiêu của đề tài, sẽ được áp dụng nhiều giải pháp công nghệ Cụ thể, công nghệ web phải được sử dụng để phát triển giao diện người dùng và tích hợp cơ sở dữ liệu phim và ngôn ngữ lập trình được sử dụng là PHP Ngoài ra, để đảm bảo tính bảo mật và tối ưu hóa hiệu suất, công nghệ bảo mật web và công nghệ tối ưu hóa trình duyệt có thể được sử dụng.

- Bên cạnh việc xây dựng nền tảng xem phim trực tuyến, đề tài cũng cần giải quyết các vấn đề khác liên quan đến nhu cầu người dùng và quản lý nội dung Các vấn đề cụ thể có thể bao gồm:

+ Giải pháp bảo vệ quyền sở hữu trí tuệ và quản lý bản quyền nội dung phim. + Xây dựng cơ sở dữ liệu phim đáng tin cậy và hiệu quả để quản lý thông tin về phim.

+ Phát triển cơ chế tìm kiếm và phân loại phim hiệu quả để đáp ứng nhu cầu người dùng.

+ Xem xét mô hình kinh doanh và cách kiếm lợi nhuận, bao gồm việc xác định cách tích hợp hệ thống thanh toán và thu phí nếu cần.

Nội dung đề tài

Nội dung đề tài gồm có 5 chương:

- Chương 1: Giới thiệu tổng quan về đề tài

- Chương 2: Cở sở lý thuyết và công cụ sử dụng

- Chương 3: Phân tích, thiết kế, xây dựng hệ thống

- Chương 4: Giới thiệu sản phẩm minh họa của đề tài

- Chương 5: Kết luận và hướng phát triển của đề tài

CƠ SỞ LÝ THUYẾT VÀ CÔNG CỤ SỬ DỤNG

Các khái niệm

Internet là một hệ thống toàn cầu liên kết hàng tỷ thiết bị và máy tính trên khắp thế giới thông qua một cơ sở hạ tầng mạng phức tạp Được xây dựng trên giao thức truyền tải dữ liệu TCP/IP, Internet là một không gian kỹ thuật số mà mọi người có thể truy cập để chia sẻ thông tin, tương tác và tiếp cận đa dạng các dịch vụ.

2.1.1.2 Sự ra đời và phát triển của Internet

Internet ra đời từ một dự án nghiên cứu của Quân đội Hoa Kỳ vào những năm 1960 Mục tiêu ban đầu của dự án là tạo ra một hệ thống mạng máy tính có khả năng chống lại tình trạng tấn công và giúp việc chia sẻ thông tin hiệu quả hơn giữa các trung tâm nghiên cứu quân sự Dự án này, được gọi là ARPANET (Advanced Research Projects Agency Network), đã khởi đầu cho sự phát triển của Internet.

Trong thập kỷ 1970, ARPANET đã mở rộng mạng kết nối của mình và sử dụng giao thức mạng TCP/IP, một cơ sở hạ tầng mạng chung mà Internet sử dụng đến ngày nay Điều này đã tạo ra một mô hình mạng mà nhiều tổ chức và các nước trên thế giới đã bắt đầu áp dụng.

Trong thập kỷ 1980, mạng Internet đã phát triển nhanh chóng với sự gia nhập của nhiều tổ chức và đại học Các giao thức và tiêu chuẩn đã được phát triển để đảm bảo tương thích giữa các hệ thống khác nhau, tạo ra một không gian kỹ thuật số chung cho việc truyền tải thông tin. Thập kỷ 1990 chứng kiến sự mở cửa rộng rãi của Internet cho công dân thông thường và doanh nghiệp Sự xuất hiện của trình duyệt web như Netscape Navigator đã làm cho việc duyệt web trở nên dễ dàng hơn, khuyến khích sự sáng tạo trong việc phát triển các trang web và dịch vụ trực tuyến. Đến thế kỷ 21, Internet đã trở thành một phần không thể thiếu của đời sống hàng ngày, từ giao tiếp và giáo dục đến mua sắm và giải trí Công nghệ ngày càng phát triển, và các xu hướng như Internet of Things (IoT), trí tuệ nhân tạo, và mạng 5G tiếp tục tác động mạnh mẽ lên sự phát triển của Internet, mở ra những cơ hội mới và thách thức trong tương lai Internet đã thay đổi cách chúng ta tương tác với thế giới, tạo nên một thế giới liên kết và thông tin mở rộng.

2.1.1.3 Cơ chế hoạt động của mạng Internet

Mạng Internet hoạt động dựa trên một cơ sở hạ tầng phức tạp và sử dụng nhiều công nghệ để kết nối hàng tỷ thiết bị trên khắp thế giới.

+ Internet sử dụng bộ giao thức TCP/IP (Transmission Control Protocol/Internet Protocol) để quản lý việc truyền tải dữ liệu qua mạng.

+ Giao thức IP định danh và định vị địa chỉ của các thiết bị trên mạng, trong khi giao thức TCP đảm bảo tính toàn vẹn của dữ liệu truyền tải.

+ Mô hình hoạt động chủ yếu dựa trên mô hình client-server, trong đó máy tính cá nhân (client) kết nối và tương tác với máy chủ để nhận dữ liệu và các dịch vụ.

+ DNS chuyển đổi địa chỉ IP (ví dụ: 192.168.0.1) thành tên miền dễ nhớ (ví dụ: www.example.com), giúp người dùng truy cập các trang web bằng cách sử dụng tên thay vì địa chỉ IP.

+ Người dùng sử dụng trình duyệt web để gửi yêu cầu đến máy chủ web Trình duyệt chuyển đổi tên miền thành địa chỉ IP và gửi yêu cầu đến máy chủ.

- HTTP/HTTPS (Hypertext Transfer Protocol/Secure):

+ Giao thức HTTP/HTTPS được sử dụng để truyền tải dữ liệu giữa trình duyệt và máy chủ Giao thức HTTPS cung cấp một lớp bảo mật bằng cách sử dụng SSL/TLS để mã hóa dữ liệu.

- Mạng các Router và Switch:

+ Dữ liệu được chuyển tiếp qua nhiều thiết bị mạng như router và switch để định tuyến và chuyển tiếp dữ liệu đến địa chỉ đích.

+ ISP cung cấp kết nối Internet cho người dùng và doanh nghiệp thông qua các dịch vụ như cáp, DSL, hay mạng di động.

+ Các tuyến cáp dữ liệu quốc tế và quốc gia, được gọi là backbone Internet, kết nối các nước và khu vực với nhau, tạo ra một hệ thống mạng toàn cầu.

+ Internet hỗ trợ nhiều dịch vụ như email, truyền hình trực tuyến, thương mại điện tử, trò chơi trực tuyến, và nhiều ứng dụng và dịch vụ khác.

+ Địa chỉ IP, phổ biến nhất là phiên bản IPv4, được sử dụng để định danh các thiết bị trên mạng Phiên bản IPv6 đang được triển khai để đáp ứng nhu cầu ngày càng tăng về địa chỉ IP.

2.1.1.4 Vai trò to lớn của mạng internet

Mạng Internet đóng vai trò to lớn và đa chiều trong nhiều khía cạnh của cuộc sống đương đại Một số vai trò quan trọng mà Internet đảm nhận:

- Kho Lưu Trữ Thông Tin Khổng Lồ: Internet là một kho lưu trữ toàn cầu, chứa hàng tỷ trang web và dữ liệu đa dạng Nó không chỉ là nguồn thông tin vô tận mà còn là nơi mọi người có thể chia sẻ, truy xuất và lưu trữ dữ liệu cá nhân, doanh nghiệp, và tổ chức.

- Tạo Môi Trường Kinh Doanh Số: Internet đã biến đổi cách doanh nghiệp hoạt động. Thương mại điện tử cho phép mua sắm trực tuyến, thanh toán điện tử và giao dịch kinh doanh qua mạng Doanh nghiệp có thể tiếp cận thị trường toàn cầu và tối ưu hóa quy trình kinh doanh thông qua các ứng dụng và dịch vụ trực tuyến.

- Mở Ra Thế Giới Giải Trí Phong Phú: Internet cung cấp một lưu trữ lớn về giải trí, từ video trực tuyến (YouTube, Netflix) đến trò chơi trực tuyến, âm nhạc, sách điện tử và nhiều nội dung khác Người dùng có thể trải nghiệm giải trí mọi nơi, mọi lúc, mở rộng phạm vi trải nghiệm cá nhân của họ.

Giới thiệu về ngôn ngữ lập trình PHP

PHP viết tắt của Personal Home Page (Trang cá nhân) và hiện đại hóa thành HypertextPreprocessor (Trình xử lý siêu văn bản), là một ngôn ngữ lập trình máy chủ được thiết kế đặc biệt để xây dựng ứng dụng web Nó không chỉ là một ngôn ngữ mã lệnh mà còn là một chuỗi ngôn ngữ kịch bản PHP được phát triển chủ yếu để thực hiện trên môi trường máy chủ, giúp sinh ra mã HTML khi chạy các chuỗi lệnh do lập trình viên viết.

Trong quá trình phát triển ứng dụng, lập trình viên PHP viết mã lệnh trên máy chủ, và sau đó, thông qua quá trình xử lý, mã HTML được tạo ra để hiển thị trên trình duyệt web của người dùng Điều này giúp ứng dụng web hoạt động một cách linh hoạt và hiệu quả.

Ngôn ngữ PHP được thiết kế để dễ kết nối và tương tác với các trang web khác sử dụng HTML, làm cho việc phát triển website trở nên đơn giản và linh hoạt Với sự đánh giá cao từ người sử dụng về khả năng đọc hiểu mã nguồn, PHP trở thành một ngôn ngữ lập trình phổ biến, đặc biệt trong lĩnh vực phát triển web Các nhà phát triển PHP thường phải học và làm chủ ngôn ngữ này trước khi bắt đầu sự nghiệp của mình trong lĩnh vực phát triển web.

Dưới đây là một số ứng dụng chính của PHP:

- Thiết Lập Chương Trình Cho Hệ Thống Máy Chủ: PHP được sử dụng chủ yếu để xây dựng các chương trình dành cho máy chủ, bao gồm việc xây dựng máy chủ web và phân tích cú pháp ngôn ngữ lập trình PHP Các PHP Developer có khả năng tạo ra kết quả này thông qua các trình duyệt web phổ biến.

- Tạo Dòng Lệnh: Lập trình viên PHP có thể tạo dòng lệnh để chạy các chương trình PHP mà không cần sử dụng máy chủ Điều này thường được sử dụng trên các hệ điều hành như Windows và Linux.

- Xây Dựng Ứng Dụng Làm Việc: PHP có thể được sử dụng để xây dựng ứng dụng làm việc, tận dụng những điểm mạnh của nó Mặc dù không phải là phương pháp phổ biến nhất để phát triển phần mềm, nhưng có thể sử dụng PHP-GTK như một ngôn ngữ nền tảng để xây dựng ứng dụng độc lập.

- Hỗ Trợ Đa Cơ Sở Dữ Liệu: PHP mạnh mẽ trong việc hỗ trợ nhiều loại cơ sở dữ liệu khác nhau Điều này giúp vận hành và sao lưu dữ liệu một cách hiệu quả, đặc biệt là trong tình huống có tấn công an ninh mạng.

- Tương Thích Trên Nhiều Hệ Điều Hành: PHP có khả năng chạy trên hầu hết các hệ điều hành phổ biến như Windows, Linux, macOS, cho phép lập trình viên tự chọn lựa hệ điều hành phù hợp với nhu cầu lập trình của họ.

2.2.2 Ưu điểm và nhược điểm của PHP Ưu Điểm của PHP:

+ PHP là ngôn ngữ lập trình mã nguồn mở, giúp giảm chi phí cài đặt và sử dụng. + Miễn phí và dễ dàng truy cập cho tất cả người dùng, làm cho nó trở thành một lựa chọn phổ biến cho nhiều dự án web.

+ Được sử dụng rộng rãi, PHP có cộng đồng lập trình viên đông đảo.

+ Sự ưa chuộng này giúp đảm bảo chất lượng của ngôn ngữ và cung cấp nhiều nguồn tư liệu học tập.

- Hệ Thống Thư Viện Phong Phú:

+ Do sự phổ biến, PHP có hệ thống thư viện và hàm đa dạng, hỗ trợ đa dạng công việc và ứng dụng.

+ Các thư viện và mã nguồn mở giúp giảm thời gian và công sức khi phát triển ứng dụng.

- Kết Hợp Dễ Dàng với Cơ Sở Dữ Liệu:

+ Có khả năng tích hợp tốt với nhiều hệ quản lý cơ sở dữ liệu phổ biến như Oracle, MySQL, Cassandra.

+ Cho phép phát triển ứng dụng web có sự tương tác mạnh mẽ với cơ sở dữ liệu.

+ Được hỗ trợ bởi cộng đồng lập trình viên và có nhiều công cụ bảo mật, PHP có khả năng đáp ứng cao về mặt an ninh.

+ Sự linh hoạt trong kết hợp với các biện pháp bảo mật khác nhau giúp bảo vệ website.

+ Cú pháp của PHP có thể không đẹp mắt và gọn gàng như một số ngôn ngữ khác, gây khó khăn cho việc duy trì mã nguồn.

+ Thường được đánh giá là ít "tính thẩm mỹ" so với một số ngôn ngữ lập trình khác.

- Chỉ Hoạt Động Trên Ứng Dụng Web:

+ PHP chủ yếu được thiết kế cho việc phát triển ứng dụng web, điều này có nghĩa là nó có giới hạn trong việc xây dựng các loại ứng dụng khác ngoài web.

2.2.3 Lý do nên sử dụng ngôn ngữ PHP

Sử dụng ngôn ngữ PHP có nhiều lợi ích và lý do mà nhiều nhà phát triển và doanh nghiệp chọn lựa Dưới đây là một số lý do phổ biến:

- Dễ Học và Sử Dụng:

+ PHP là một ngôn ngữ lập trình dễ học, đặc biệt là đối với những người mới bắt đầu trong lập trình web.

+ Cú pháp của PHP rất giống với C và C++, điều này giúp nhiều lập trình viên có kinh nghiệm với các ngôn ngữ khác chuyển đổi sang PHP một cách dễ dàng.

- Hỗ Trợ Mạnh Mẽ cho Web:

+ PHP được phát triển chủ yếu cho việc xây dựng ứng dụng web, và do đó nó cung cấp nhiều thư viện và framework mạnh mẽ như Laravel, Symfony, và Zend.

+ Hỗ trợ nhiều loại cơ sở dữ liệu khác nhau, bao gồm MySQL, PostgreSQL, và MongoDB.

- Độ Phổ Biến và Cộng Đồng Lớn:

+ PHP là một trong những ngôn ngữ lập trình web phổ biến nhất trên thế giới.

+ Có một cộng đồng lớn và đầy đủ tài nguyên, tài liệu, và diễn đàn hỗ trợ trực tuyến.

+ PHP có thể tích hợp dễ dàng với nhiều loại cơ sở dữ liệu và các công nghệ web khác nhau.

+ Hỗ trợ tích hợp với nhiều dịch vụ và API bên ngoài.

- Hiệu Suất Tốt trên Web:

+ PHP thường được triển khai trên máy chủ web Apache, Nginx, hoặc Microsoft IIS và có hiệu suất tốt cho ứng dụng web.

+ Có nhiều tối ưu hóa và cải tiến về hiệu suất được thực hiện qua các phiên bản PHP mới.

- Hỗ Trợ Đa Nền Tảng:

+ PHP là ngôn ngữ đa nền tảng, nghĩa là có thể chạy trên nhiều hệ điều hành khác nhau như Windows, Linux, và macOS.

- Tích Hợp Tốt với HTML:

+ PHP được tích hợp tốt với HTML, giúp người phát triển tạo các trang web động một cách dễ dàng.

+ Có thể nhúng mã PHP trực tiếp vào mã HTML mà không cần sự chuyển đổi đặc biệt.

+ PHP là một ngôn ngữ linh hoạt, có thể sử dụng cho nhiều loại ứng dụng từ các trang web nhỏ đến các hệ thống lớn.

2.2.4 Sự khác biệt của PHP so với ngôn ngữ lập trình khác

Trong thế giới phức tạp của phát triển web, ngôn ngữ lập trình và các công nghệ giao diện đóng vai trò quan trọng trong việc tạo ra những trang web đẹp mắt và chức năng PHP, một ngôn ngữ lập trình chủ yếu chạy trên máy chủ, đối lập với HTML, CSS và JavaScript, những ngôn ngữ tập trung vào việc xây dựng cấu trúc và trải nghiệm người dùng.

- PHP: không phải là một ngôn ngữ chạy trực tiếp trên trình duyệt, mà thay vào đó, nó hoạt động chủ yếu trên máy chủ web Khi bạn truy cập một trang web, máy chủ sẽ thực thi các lệnh PHP liên kết và trả về trang web đã được xử lý.

Giới thiệu về hệ quản trị cơ sở dữ liệu MySQL

MySQL là một hệ quản trị cơ sở dữ liệu (Hệ quản trị cơ sở dữ liệu - DBMS) mã nguồn mở,được phát triển và duy trì bởi Oracle Corporation Nó là một trong những hệ quản trị cơ sở dữ liệu phổ biến nhất trên thế giới và được sử dụng rộng rãi cho các ứng dụng web và doanh nghiệp.

Các khái niệm liên quan:

- Database (Cơ sở dữ liệu) là một tập hợp tổ chức các dữ liệu được lưu trữ và quản lý một cách có tổ chức Cơ sở dữ liệu giúp lưu trữ thông tin một cách có cấu trúc để dễ dàng truy xuất, cập nhật và quản lý.

- Open Source (Mã nguồn mở) là một phương pháp phát triển phần mềm, trong đó mã nguồn của một ứng dụng hoặc hệ thống được công bố và có thể được sử dụng, sửa đổi và phân phối miễn phí Mã nguồn mở khuyến khích sự hợp tác và công bằng trong việc phát triển phần mềm.

- Mô hình Client-Server là một kiến trúc mạng trong đó có hai thành phần chính: máy khách (client) và máy chủ (server) Máy khách là người dùng cuối cùng, gửi yêu cầu đến máy chủ, trong khi máy chủ là nơi xử lý yêu cầu và cung cấp dữ liệu hoặc dịch vụ cho máy khách.

- MySQL Server là một phần mềm hệ quản trị cơ sở dữ liệu (DBMS) chạy trên một máy chủ Nó có nhiệm vụ quản lý và lưu trữ cơ sở dữ liệu MySQL, đáp ứng các yêu cầu từ MySQL Client và cung cấp dữ liệu theo yêu cầu.

- MySQL Client là một ứng dụng hoặc công cụ cho phép người dùng tương tác với cơ sở dữ liệu MySQL Server Nó có thể là một giao diện dòng lệnh hoặc giao diện đồ họa, giúp thực hiện truy vấn, cập nhật dữ liệu và quản lý cơ sở dữ liệu từ phía người dùng.

2.3.2 Quá trình hình thành và phát triển của MySQL

MySQL, một trong những hệ quản trị cơ sở dữ liệu (Hệ quản trị cơ sở dữ liệu - DBMS) hàng đầu, đã trải qua một hành trình đầy sôi động từ ngày thành lập cho đến ngày nay Ban đầu, nó nảy sinh như một giải pháp nhỏ gọn và linh hoạt cho các ứng dụng web, với sứ mệnh đơn giản là cung cấp một cơ sở dữ liệu hiệu quả và nhanh chóng.

Nhóm phát triển gốc, bao gồm Michael Widenius, David Axmark và Allan Larsson, đã đặt nền móng cho MySQL vào tháng 5 năm 1995 Tính đến nay, nó đã trở thành một phần không thể thiếu trong ngành công nghiệp công nghệ thông tin.

Mô hình kinh doanh dual licensing giúp MySQL có sức hấp dẫn cho cả cộng đồng mã nguồn mở và doanh nghiệp thương mại Sự phổ biến của nó nhanh chóng tăng lên, đặc biệt là trong lĩnh vực ứng dụng web đang phát triển với tốc độ nhanh chóng.

Tuy nhiên, những thời kỳ khó khăn cũng xuất hiện, đặc biệt là khi Sun Microsystems mua lại MySQL AB và sau đó bị Oracle mua lại Lo ngại về sự ổn định và độc lập của MySQL trong tương lai đã nổi lên, nhưng hệ quản trị cơ sở dữ liệu này vẫn tiếp tục phát triển dưới sự quản lý của Oracle. Điều quan trọng là MySQL không chỉ là một sản phẩm thương mại, mà còn là một dự án mã nguồn mở, nhận sự đóng góp tích cực từ cộng đồng người dùng trên toàn thế giới Nó không chỉ là một công cụ quản trị cơ sở dữ liệu mà còn là biểu tượng của tinh thần hợp tác và mở rộng trong cộng đồng phần mềm mã nguồn mở.

2.3.3 Ưu và nhược điểm của MySQL

+ MySQL là một hệ quản trị cơ sở dữ liệu mã nguồn mở, cho phép người dùng sử dụng, sửa đổi và phân phối mã nguồn mà không cần trả phí.

+ MySQL cung cấp hiệu suất cao và khả năng xử lý lớn, đặc biệt là trong các ứng dụng web có lượng truy cập đồng thời lớn.

+ Hỗ trợ khả năng mở rộng dễ dàng, có thể xử lý cơ sở dữ liệu lớn và có thể mở rộng theo nhu cầu tăng cường.

+ Tuân thủ các tiêu chuẩn ACID (Atomicity, Consistency, Isolation, Durability), đảm bảo tính toàn vẹn và nhất quán của dữ liệu.

+ MySQL có sẵn cho nhiều hệ điều hành và nền tảng, bao gồm Windows, Linux, macOS, và nhiều nền tảng khác.

+ Sự hỗ trợ từ cộng đồng người dùng lớn giúp giải quyết vấn đề nhanh chóng và cung cấp tài liệu đầy đủ.

+ Cú pháp SQL của MySQL dễ học và sử dụng, giúp người mới học nhanh và dễ tiếp cận.

+ Trong môi trường có nhiều truy cập đồng thời, có thể xảy ra vấn đề về quản lý tài nguyên và hiệu suất.

+ MySQL có thể gặp khó khăn khi xử lý các tác vụ phức tạp và truy vấn phức tạp so với một số hệ quản trị cơ sở dữ liệu khác.

+ Một số chức năng mở rộng nhất định của MySQL yêu cầu sử dụng bản quyền thương mại từ Oracle.

+ Trong một số trường hợp, MySQL có thể không hỗ trợ đầy đủ tính năng liên quan đến JSON so với một số hệ quản trị cơ sở dữ liệu khác.

+ Trong môi trường với dữ liệu lớn và yêu cầu phức tạp, MySQL có thể đối mặt với thách thức về hiệu suất và quản lý dữ liệu

2.3.4 MySQL khác gì so với SQL Server Đặc điểm MySQL SQL Server

Nhà Sản Xuất Phát triển và duy trì bởi Oracle

Corporation sau khi Oracle mua lại Sun Microsystems.

Phát triển và duy trì bởi Microsoft Corporation.

Mã nguồn mở và miễn phí sử dụng, nhưng có thể có các phiên bản thương mại với các tính năng mở rộng.

Là một sản phẩm thương mại, có bản Developer Edition miễn phí cho mục đích phát triển và kiểm thử.

Hỗ trợ nhiều nền tảng, bao gồm Windows, Linux, macOS, và nhiều hệ điều hành khác.

Chủ yếu chạy trên hệ điều hành Windows, mặc dù có phiên bản SQL Server trên Linux.

Truy Vấn Sử dụng ngôn ngữ truy vấn SQL

(Structured Query Language) Sử dụng Transact-SQL (T-SQL), một biến thể của SQL.

Hiệu Suất Thường được coi là có hiệu suất cao trong môi trường ứng dụng web và có thể xử lý số lượng lớn truy cập đồng thời.

Có hiệu suất tốt và thường được ưa chuộng trong môi trường doanh nghiệp.

Gặp thách thức khi xử lý dữ liệu lớn và yêu cầu phức tạp.

Có các tính năng và công cụ mạnh mẽ để quản lý và xử lý dữ liệu lớn. Các Tính

Tập trung vào sự đơn giản và hiệu suất Các tính năng như replication và sharding giúp mở rộng cơ sở dữ liệu.

Cung cấp nhiều tính năng doanh nghiệp như dịch vụ Reporting Services, Analysis Services, và tích hợp chặt chẽ với các sản phẩm Microsoft khác.

Chi phí Miễn phí sử dụng cho cộng đồng, các phiên bản thương mại có giá trị Có chi phí và giá cả phụ thuộc vào phiên bản và tính năng sử dụng. phí.

Tổng quan về XAMPP

XAMPP là một gói phần mềm đa nhiệm được thiết kế để tạo ra một môi trường phát triển web trên máy tính cá nhân của bạn Trong ngữ cảnh của PHP, XAMPP thường được sử dụng để cài đặt và cấu hình máy chủ web Apache, cùng với PHP và MySQL.

Dưới đây là một số điểm quan trọng khi sử dụng XAMPP trong phát triển PHP:

- Apache Server: XAMPP tích hợp máy chủ web Apache, một máy chủ web phổ biến, để chạy các ứng dụng và trang web PHP Apache được cấu hình để xử lý các tệp tin PHP và chuyển chúng đến trình thông dịch PHP để thực thi.

- PHP Interpreter: XAMPP cung cấp PHP Interpreter, là một phần quan trọng để thực thi mã nguồn PHP Khi bạn phát triển ứng dụng PHP, mã nguồn của bạn sẽ được chuyển đến PHP Interpreter để được thực thi và kết quả sẽ được trả về cho máy chủ web để gửi đến trình duyệt.

- MySQL Database: XAMPP bao gồm cài đặt MySQL, một hệ quản trị cơ sở dữ liệu quan hệ (RDBMS) Điều này cho phép bạn lưu trữ và truy xuất dữ liệu từ ứng dụng PHP của mình thông qua ngôn ngữ truy vấn SQL.

- phpMyAdmin: XAMPP đi kèm với phpMyAdmin, một công cụ quản lý cơ sở dữ liệu MySQL thông qua giao diện web Điều này giúp bạn dễ dàng quản lý cơ sở dữ liệu MySQL của mình mà không cần sử dụng dòng lệnh SQL.

- Hỗ trợ cho Perl và FileZilla: Bạn cũng có thể sử dụng XAMPP để phát triển và kiểm thử ứng dụng sử dụng Perl, cũng như sử dụng máy chủ FTP như FileZilla.

PHÂN TÍCH, THIẾT KẾ, XÂY DỰNG HỆ THỐNG

Khảo sát hiện trạng và nhu cầu

Hiện nay, với sự phát triển nhanh chóng của công nghệ và Internet, hiện trạng xem phim trực tuyến đã trở thành một phần quan trọng của lối sống hiện đại Người xem không chỉ được đưa vào một thế giới đa dạng và phong phú của nội dung giải trí mà còn trải qua những trải nghiệm người dùng tiện ích và linh hoạt.

Các nền tảng xem phim trực tuyến, như Netflix, Hulu, và Disney+, đã thay đổi cách chúng ta tiêu thụ nội dung giải trí Chuyển từ mô hình thanh toán theo lượt xem sang mô hình đăng ký theo yêu cầu mang lại sự thuận tiện và chi phí dựa trên nhu cầu thực sự của người xem. Người xem có thể truy cập vào một thư viện đa dạng của các bộ phim và chương trình truyền hình mọi lúc, mọi nơi, chỉ cần kết nối Internet.

Sự đa dạng về nội dung là một điểm mạnh lớn của hiện trạng xem phim trực tuyến Từ các bộ phim và series truyền hình mới nhất đến nội dung tự sản xuất và cả những tác phẩm địa phương, người xem có nhiều lựa chọn để tận hưởng trải nghiệm giải trí đa dạng.

Tính năng tiện ích như xem lại, tùy chỉnh phụ đề, và khả năng xem trên nhiều thiết bị đã nâng cao trải nghiệm người xem Chất lượng hình ảnh và âm thanh cao cấp tạo ra một không gian giải trí đẳng cấp, giúp người xem thăng hạng trải nghiệm xem phim của họ. Đồng thời, chính sách giá linh hoạt và các gói đăng ký khác nhau đáp ứng nhu cầu và túi tiền đa dạng của người xem Điều này mang lại sự linh hoạt và sự thuận tiện trong việc truy cập nội dung giải trí.

Tuy nhiên, để đảm bảo nguồn cung ổn định và đa dạng của nội dung, các nền tảng xem phim trực tuyến phải đối mặt với những thách thức về bản quyền và hợp tác với các đối tác trong ngành công nghiệp truyền hình và điện ảnh.

Tóm lại, hiện trạng xem phim trực tuyến không chỉ là một phần quan trọng của cuộc sống hàng ngày mà còn một hình thức giải trí tiện lợi và đa dạng, mang lại trải nghiệm đặc sắc cho người xem trên khắp thế giới.

- Web quản lý dữ liệu (Admin):

+ Đăng nhập: Đăng nhập bằng tài khoản cấp quyền admin

+ Quản lý danh mục, thể loại, quốc gia, phim, tập phim, link phim: Thực hiện chức năng xem, thêm, sửa, xóa dữ liệu

+ Thông tin web: Thực hiện chức năng xem, sửa thông tin của website xem phim + Thông tin giao dịch: Xem tất cả thông tin giao dịch mà người dùng thực hiện để nâng cấp tài khoản lên tài khoản VIP

+ Thống kê: Hiển thị biểu đồ top 5 phim có lượt xem nhiều nhất trên website

- Web xem phim (Người dùng):

+ Đăng ký, đăng nhập tài khoản người dùng

+ Trang chủ: Hiển thị phim đang hot, phim mới cập nhật theo danh mục (phim mới, phim lẻ, phim bộ)

+ Xem danh sách phim theo danh mục, thể loại, quốc gia, năm phát hành

+ Lọc phim theo thể loại, quốc gia, năm phát hành

+ Tìm kiếm phim theo tên phim

+ Nhấn xem thông tin chi tiết của phim

+ Xem phim: điều chỉnh âm thanh, tốc độ, tỉ lệ khung hình của video tùy thích theo người dùng.

+ Tùy chọn xem video theo link thường hoặc link VIP

+ Bình luận: Nhận xét, đánh giá về bộ phim

+ Giao dịch: Để nâng cấp tài khoản, tài khoản VIP phải gia hạn 1 tháng 1 lần, sẽ thông báo về email, nếu không gia hạn, sẽ chuyển về tài khoản thường Tích hợp VNP để thanh toán nâng cấp lên tài khoản VIP.

+ Xem lịch sử đã giao dịch

3.1.2.2 Yêu cầu phi chức năng

- Thời Gian Thực Hiện: Xác định rõ thời gian thực hiện và chuyển giao kết quả Điều này có thể bao gồm cả các giai đoạn cụ thể trong quá trình phát triển và thời điểm dự kiến cho việc chuyển giao hoàn chỉnh.

+ Phần Mềm: Chính xác mô tả phần mềm cần chuyển giao, bao gồm cả phiên bản và các tính năng chính.

+ Tài liệu Hướng dẫn: Cung cấp tài liệu chi tiết về cách triển khai và sử dụng phần mềm.

+ Mã Nguồn: Nếu có, cung cấp mã nguồn của phần mềm cho việc duy trì và mở rộng.

+ Thời Gian Bảo Trì: Xác định chu kỳ bảo trì hệ thống, bao gồm cả thời gian dự kiến cho các bản vá và nâng cấp.

+ Danh Mục Bảo Trì: Liệt kê rõ ràng các thành phần hoặc module cụ thể của hệ thống được bảo trì.

+ Dự Kiến Thay Đổi: Mô tả những tính năng mới hoặc sự điều chỉnh dự kiến trong tương lai.

+ Chu Kỳ Phát Hành: Xác định liệu có kế hoạch phát hành các phiên bản mới và vị trí của chúng trong chu kỳ thay đổi.

- Tính Bảo Mật: Đặt ra mức độ bảo mật yêu cầu cho hệ thống, bao gồm cả quản lý truy cập, mã hóa dữ liệu, và bảo vệ chống tấn công.

+ Sao Lưu Dữ Liệu: Mô tả kế hoạch và tần suất sao lưu dữ liệu để ngăn chặn mất mát dữ liệu.

+ Phục Hồi Dữ Liệu: Định rõ kế hoạch phục hồi dữ liệu sau sự cố.

+ Tương Thích Hệ Thống: Đảm bảo hệ thống tương thích với các trình duyệt web, hệ điều hành và thiết bị di động phổ biến.

+ Liên Kết Tương Thích: Xác định tính tương thích với các dịch vụ và API khác.

+ Khối Lượng Lưu Trữ: Xác định kích thước dự kiến của dữ liệu và cách quản lý lưu trữ.

+ Tốc Độ Xử Lý: Mô tả hiệu suất dự kiến của hệ thống trong việc xử lý yêu cầu và phản hồi.

- Tính Tiện Dụng và Thân Thiện với Người Dùng:

+ Giao Diện Người Dùng (UI/UX): Mô tả cách giao diện người dùng được thiết kế để làm cho trang web dễ sử dụng và hấp dẫn.

+ Phản Hồi Người Dùng: Bao gồm cách thu thập và xử lý phản hồi từ người dùng để cải thiện trải nghiệm.

Thiết kế mô hình xử lý dữ liệu

3.2.1 Sơ đồ phân cấp chức năng

Hình 3.1: Sơ đồ phân cấp chức năng

3.2.2 Mô hình dòng dữ liệu

3.2.2.1 Mô hình dòng dữ liệu mức 0 (DFD-0)

Hình 3.2: Mô hình dòng dữ liệu mức 0

3.2.2.2 Mô hình dòng dữ liệu mức 1 (DFD-1)

Hình 3.3: Mô hình dòng dữ liệu mức 1

3.2.2.3 Mô hình dòng dữ liệu mức 2 (DFD-2)

- Chức năng Quản lý thông tin phim

Hình 3.4: Mô hình dòng dữ liệu mức 2 “Quản lý thông tin phim”

- Chức năng Quản lý xem phim

Hình 3.5: Mô hình dòng dữ liệu mức 2 “ Quản lý xem phim”

- Chức năng Báo cáo, thống kê

Hình 3.6: Mô hình dòng dữ liệu mức 2 “Báo cáo, thống kê”

- Chức năng Quản lý người dùng

Hình 3.7: Mô hình dòng dữ liệu mức 2 “Quản lý người dùng”

3.2.3 Đặc tả sơ đồ usecase

3.2.3.1 Sơ đồ usecase a Sơ đồ use case của Quản lý

Hình 3.8: Sơ đồ use case của Quản lý b Sơ đồ use case của Người dùng

Hình 3.9: Sơ đồ use case của Người dùng

3.2.3.2 Đặc tả usecase a Use case Đăng Ký và Đăng Nhập

Mô tả: Người dùng có thể đăng ký tài khoản mới bằng cách nhập thông tin cá nhân, hoặc đăng nhập nếu đã có tài khoản.

Các bước thực hiện: Người dùng chọn tùy chọn "Đăng Ký" hoặc "Đăng Nhập," sau đó nhập thông tin yêu cầu. b Use case Tìm Kiếm Phim

Mô tả: Người dùng có thể tìm kiếm phim bằng cách nhập từ khóa, thể loại hoặc tên diễn viên.Tác nhân: Người Dùng.

Các bước thực hiện: Người dùng nhập thông tin tìm kiếm và hệ thống trả về kết quả phù hợp. c Use case Xem Phim Trực Tuyến

Mô tả: Người dùng có thể chọn một bộ phim để xem trực tuyến.

Các bước thực hiện: Người dùng chọn phim, chọn chất lượng video (nếu có), và bắt đầu xem. d Use case Đánh Giá và Nhận Xét Phim

Mô tả: Người dùng có thể đánh giá và viết nhận xét về bộ phim sau khi xem.

Các bước thực hiện: Người dùng chọn tùy chọn đánh giá và viết nhận xét, sau đó lưu lại thông tin. e Use case Lưu Phim vào Danh Sách Yêu Thích

Mô tả: Người dùng có thể lưu bộ phim vào danh sách yêu thích để xem sau.

Các bước thực hiện: Người dùng chọn tùy chọn "Lưu vào Danh Sách Yêu Thích" khi xem phim. f Use case Quản Lý Tài Khoản

Mô tả: Người dùng có thể cập nhật thông tin cá nhân, thay đổi mật khẩu, và quản lý tài khoản của mình.

Các bước thực hiện: Người dùng vào trang quản lý tài khoản để thực hiện các thay đổi. g Use case Quản Lý Nội Dung (Admin)

Mô tả: Quản trị viên có thể thêm, cập nhật, và xóa nội dung phim.

Các bước thực hiện: Admin đăng nhập vào hệ thống quản trị để thực hiện các thao tác quản lý nội dung. h Use case Thống Kê và Báo Cáo

Mô tả: Quản trị viên có thể xem thống kê về lượt xem, đánh giá, và hoạt động người dùng. Tác nhân: Admin.

Các bước thực hiện: Admin truy cập trang thống kê để xem và tải xuống báo cáo.

Thiết kế cơ sở dữ liệu

Bảng 3.1: Thiết kế CSDL bookmarks

Field Name Data Type Key Description id Int(11) Primary key Mã ID publisher_id Int(11) Not null Mã người dùng movie_id Int(11) Not null Mã phim created_at Varchar(50) Not null Ngày tạo

Bảng 3.2: Thiết kế CSDL categories

Field Name Data Type Key Description id Int(11) Primary key Mã ID title Varchar(100

) Not null Tên danh mục description Varchar(255

) Null Mô tả status Tinyint(4) Not null Trạng thái slug Varchar(255

Bảng 3.3: Thiết kế CSDL countries

Field Name Data Type Key Description id Int(11) Primary key Mã ID title Varchar(100

) Not null Tên quốc gia description Varchar(255

Null Mô tả status Tinyint(4) Not null Trạng thái slug Varchar(255

Bảng 3.4: Thiết kế CSDL episodes

Field Name Data Type Key Description id Int(11) Primary key Mã ID movie_id Int(11) Key Not null Mã phim movie_link Text Not null Đường link phim episode Int(11) Not null Tập phim link Int(11) Not null Mã link

Bảng 3.5: Thiết kế CSDL failed_jobs

Field Name Data Type Key Description id Bigint(20) Primary key Mã ID uuid Varchar(255

Unique connection Text Not null queue Text Not null payload Longtext Not null exception Longtext Not null failed_at Timestamp Not null

Bảng 3.6: Thiết kế CSDL genres

Field Name Data Type Key Description id Int(11) Primary key Mã ID title Varchar(100

Not null Tên thể loại description Varchar(255

) Null Mô tả status Tinyint(4) Not null Trạng thái: hiển thị/ không hiển thị slug Varchar(255

Bảng 3.7: Thiết kế CSDL info

Field Name Data Type Key Description id Int(11) Primary key Mã ID title Varchar(100 Not null Tên liên quan đến trang web

) description Text Not null Mô tả trang web logo Varchar(100

) Not null Logo của trang web

Bảng 3.8: Thiết kế CSDL links

Field Name Data Type Key Description id Int(11) Primary key Mã ID name Varchar(100

Not null Tên link: link thường/ link vip description Varchar(255

) Not null Mô tả: link có quảng cáo/ không quảng cáo status Int(11) Not null Trạng thái tương ứng

Bảng 3.9: Thiết kế CSDL migrations

Field Name Data Type Key Description id Int(10) Primary key Mã ID migration Varchar(255

Not null batch Int(11) Not null

Bảng 3.10: Thiết kế CSDL movies

Field Name Data Type Key Description id Int(11) Primary key Mã ID title Varchar(100

) Not null Tên tiêu đề phim description Longtext Not null Mô tả nội dung phim status Tinyint(4) Not null Trạng thái image Varchar(255

) Not null Hình ảnh đại diện slug Varchar(255

Not null Đường dẫn hot_movie Int(11) Not null Trạng thái thuộc phim hot/ không thuộc phim hot category_id Int(11) Not null Mã danh mục country_id Int(11) Not null Mã quốc gia quality Int(11) Not null subtitle Tinyint(4) Not null date_created Varchar(50) Null Ngày tạo update_movie_da y Varchar(50) Null Ngày cập nhật year Varchar(20) Null Năm phát hành time Varchar(50) Null Thời lượng phim tags Varchar(255

) Null topview Int(11) Null Lượt xem number_episode Int(11) Not null Số tập eng_name Varchar(100

) Null Tên tiếng anh views Int(11) Null Lượt xem

Bảng 3.11: Thiết kế CSDL movie_genre

Field Name Data Type Key Description id Int(11) Primary key Mã ID movie_id Int(11) Not null Mã phim genre_id Int(11) Not null Mã thể loại

Bảng 3.12: Thiết kế CSDL password_resets

Field Name Data Type Key Description email Varchar(255

) Not null created_at timestamp Null

Bảng 3.13: Thiết kế CSDL payments

Field Name Data Type Key Description id Int(11) Primary key Mã ID publisher_id Int(11) Not null Mã người dùng product_id Int(11) Not null Mã sản phẩm number_month Int(11) Null Thời hạn sử dụng discount Int(11) Null Giảm giá transaction_code Varchar(255

) Null Mã giao dịch money Bigint(20) Null Số tiền thanh toán vnp_response_cod e

Null Mã phản hồi code_vnpay Varchar(255

Null Mã giao dịch VNPAY code_bank Varchar(255

) Null Mã ngân hàng note Varchar(255

Null Nội dung thanh toán time_payment Datetime Null Thời gian chuyển khoản method Varchar(100

) Null Phương thức thanh toán status Tinyint(4) Null Trạng thái thanh toán: thành công/ đã xảy ra lỗi created_at Datetime Null Ngày tạo updated_at datetime Null Ngày cập nhật

Bảng 3.14: Thiết kế CSDL personal_access_tokens

Field Name Data Type Key Description id Bigint(20) Primary key Mã ID tokenable_typ e

Key tokenable_id Bigint(20) Key name Varchar(255

) Not null token Varchar(64) Unique abilities Text Null last_used_at Timestamp Null expires_at Timestamp Null created_at Timestamp Null updated_at Timestamp Null

Bảng 3.15: Thiết kế CSDL products

Field Name Data Type Key Description id Int(11) Primary key Mã ID name Varchar(255

) Null Tên sản phẩm number_mont h

Int(11) Null Thời hạn sử dụng discount Int(11) Null Giảm giá price Bigint(20) Null Giá tiền status Tinyint(4) Null Trạng thái created_at Datetime Ngày tạo updated_at Datetime Ngày cập nhật

Bảng 3.16: Thiết kế CSDL publisher

Field Name Data Type Key Description id Int(11) Primary key Mã ID name Varchar(50) Not null Tên người dùng email Varchar(50) Not null Địa chỉ email của khách hàng phone Varchar(30) Not null Số điện thoại người dùng username Varchar(100

) Not null Tên đăng nhập password Varchar(150

) Not null Mật khẩu đăng nhập created_at Varchar(50) Not null Ngày tạo levels_acc Int(11) Not null start_vip Date Null Thời gian bắt đầu của gói tài khoản VIP end_vip Date Null Thời gian kết thúc của gói tài khoản VIP

Bảng 3.17: Thiết kế CSDL users

Field Name Data Type Key Description id Bigint(20) Primary key Mã ID name Varchar(255

Tên người quản lý email Varchar(255

) Unique Địa chỉ email của người quản lý email_verified_a t Timestamp password Varchar(255

) Mật khẩu mã hóa remember_token Varchar(100

) created_at Timestamp Ngày tạo updated_at Timestamp Ngày cập nhật

Cài đặt cơ sở dữ liệu

3.4.1 Cài đặt cơ sở dữ liệu các bảng

Bảng bookmarks (Danh sách yêu thích)

Hình 3.10: Cài đặt CSDL bookmarks

Bảng categories (Danh mục phim)

Hình 3.11: Cài đặt CSDL categories

Hình 3.12: Cài đặt CSDL countries

Hình 3.13: Cài đặt CSDL episodes

Hình 3.14: Cài đặt CSDL failed_jobs

Hình 3.15: Cài đặt CSDL genres

Hình 3.16: Cài đặt CSDL info

Bảng links (Đường dẫn phim)

Hình 3.17: Cài đặt CSDL links

Hình 3.18: Cài đặt CSDL migrations

Bảng movies (Thông tin phim)

Hình 3.19: Cài đặt CSDL movies

Hình 3.20: Cài đặt CSDL movie_genre

Hình 3.21: Cài đặt CSDL password_resets

Hình 3.22: Cài đặt CSDL payments

Hình 3.23: Cài đặt CSDL personal_access_tokens

Hình 3.24: Cài đặt CSDL products

Hình 3.25: Cài đặt CSDL publishers

Hình 3.26: Cài đặt CSDL users

3.4.2 Mô hình quan hệ dữ liệu (Diagram)

Hình 3.27: Mô hình quan hệ dữ liệu

GIỚI THIỆU SẢN PHẨM MINH HỌA CỦA ĐỀ TÀI

Trang quản lý dữ liệu

- Đăng nhập trang quản lý bằng tài khoản Admin

Hình 4.28: Trang đăng nhập admin

- Trang chủ quản lý bao gồm:

+ Thống kê tổng dữ liệu trên web của danh mục, thể loại, quốc gia, phim, tập phim + Dashboard biểu đồ top 5 phim có lượt xem nhiều nhất trên web

+ Menu quản lý chức năng nằm phía bên trái của trang web

Hình 4.29: Trang chủ web quản lý dữ liệu

- Quản lý giao dịch cho phép xem thông tin người dùng đã mua gói nâng cấp tài khoản cá nhân bao gồm: mã giao dịch mã hóa, mã giao dịch vnpay, tên người dùng, gói sản phẩm nâng cấp, thời hạn gói mua, tổng tiền thanh toán, ngân hàng giao dịch, thời gian xác nhận thanh toán, trạng thái giao dịch (giao dịch thành công hoặc giao dịch đã xảy ra lỗi) Ngoài ra còn có chức năng tìm kiếm giao dịch có từ khóa trong danh sách.

Hình 4.30: Trang quản lý giao dịch

- Quản lý danh mục bao gồm hai chức năng:

+ Liệt kê: bao gồm xem danh sách danh mục phim, tìm kiếm danh mục, sửa thông tin danh mục và xóa danh mục khỏi danh sách.

+ Thêm danh mục: thêm thông tin danh mục mới vào danh sách.

Hình 4.31: Trang quản lý danh mục

- Quản lý thể loại phim bao gồm hai chức năng:

+ Liệt kê: bao gồm xem danh sách thể loại phim, tìm kiếm thể loại, sửa thông tin thể loại và xóa thể loại khỏi danh sách.

+ Thêm thể loại: thêm thông tin thể loại mới vào danh sách.

Hình 4.32: Trang quản lý thể loại

- Quản lý quốc gia phát hành phim bao gồm hai chức năng:

+ Liệt kê: bao gồm xem danh sách quốc gia phim, tìm kiếm quốc gia, sửa thông tin quốc gia và xóa thông tin quốc gia ra khỏi danh sách.

+ Thêm quốc gia: thêm thông tin quốc gia mới vào danh sách.

Hình 4.33: Trang quản lý quốc gia

- Quản lý thông tin phim bao gồm hai chức năng:

+ Liệt kê: bao gồm xem danh sách phim, tìm kiếm phim, sửa thông tin phim và xóa thông tin phim ra khỏi danh sách Ngoài ra còn có thể trực tiếp thêm tập phim mới của phim đã chọn.

+ Thêm phim: thêm thông tin phim mới vào danh sách.

Hình 4.34: Trang quản lý phim

- Quản lý tập phim bao gồm hai chức năng:

+ Liệt kê: bao gồm xem danh sách tập phim của tất cả phim, tìm kiếm tập phim,sửa thông tin tập phim và xóa tập phim khỏi danh sách.

+ Thêm tập phim: thêm thông tin tập phim mới vào danh sách.

Hình 4.35: Trang quản lý tập phim

- Quản lý thông tin link phim bào gồm hai chức năng:

+ Liệt kê: bao gồm xem danh sách link phim, tìm kiếm link, sửa thông tin link và xóa thông tin link ra khỏi danh sách.

+ Thêm link phim: thêm thông tin link phim mới vào danh sách.

Hình 4.36: Trang quản lý link phim

4.1.10.Quản lý thông tin web

- Quản lý thông tin web bao gồm hai chức năng:

+ Xem: xem thông tin của trang web xem phim bao gồm tên liên quan đến trang web, mô tả trang web và hình ảnh logo của trang web.

+ Chỉnh sửa: cập nhật thông tin web tùy thích để thu hút người dùng.

Hình 4.37: Trang quản lý thông tin web

Trang web xem phim

- Đăng ký tài khoản cho người dùng chưa có tài khoản

Hình 4.38: Trang đăng ký tài khoản người dùng

- Đăng nhập bằng tài khoản người dùng đã đăng ký trước đó

Hình 4.39: Trang đăng nhập người dùng

- Header của trang web bao gồm:

+ Thanh công cụ tìm kiếm phim

+ Chức năng đăng nhập, đăng ký tài khoản

Hình 4.40: Header website xem phim

- Menu của trang web bao gồm:

+ Trang chủ của trang web

+ Danh mục phim: phim bộ, phim lẻ, phim mới

+ Listview danh sách thể loại

+ Listview danh sách quốc gia

+ Chức năng lọc phim theo thể loại hoặc quốc gia hoặc năm phát hành phim.

Hình 4.41: Menu website xem phim

- Footer của trang web bao gồm giới thiệu trang web, thông tin liên quan đến tìm kiếm phim trên trang web.

Hình 4.42: Footer website xem phim

- Trang chủ của trang web xem phim hiển thị slide phim hot đầu trang, danh sách phim mới, phim bộ và phim lẻ mới cập nhật.

Hình 4.43: Trang chủ website xem phim

- Tab bar của trang web bao gồm:

+ Năm phát hành: nhấn vào để xem danh sách phim được phát hành năm đã chọn.+ Top views: thứ tự danh sách phim thuộc top view giảm dần theo ngày, tuần,tháng.

Hình 4.44: Tab bar của trang xem phim

- Trang chi tiết phim bao gồm:

+ Thông tin chi tiết liên quan đến bộ phim

+ Chức năng thêm vào danh sách yêu thích

+ Xem bình luận người dùng khác và viết đánh giá, bình luận phim bằng tài khoản cá nhân

Hình 4.45: Trang chi tiết phim

- Tài khoản người dùng bao gồm:

+ Danh sách phim yêu thích

+ Chức năng nâng cấp tài khoản lên tài khoản vip

+ Xem lịch sử giao dịch nâng cấp tài khoản

Hình 4.47: Chức năng dành cho người dùng

- Danh sách phim yêu thích bao gồm:

+ Xem danh sách phim được thêm vào yêu thích

+ Xóa phim khỏi danh sách yêu thích

Hình 4.48: Danh mục yêu thích

- Thực hiện giao dịch nâng cấp lên tài khoản vip

Hình 4.49: Nâng cấp tài khoản

- Xem lịch sử giao dịch lên tài khoản vip

Hình 4.50: Lịch sử giao dịch

Ngày đăng: 15/05/2024, 09:24

HÌNH ẢNH LIÊN QUAN

Hình 3.1: Sơ đồ phân cấp chức năng - báo cáo đồ án website xem phim trực tuyến
Hình 3.1 Sơ đồ phân cấp chức năng (Trang 29)
Hình 3.3: Mô hình dòng dữ liệu mức 1 - báo cáo đồ án website xem phim trực tuyến
Hình 3.3 Mô hình dòng dữ liệu mức 1 (Trang 30)
Hình 3.5: Mô hình dòng dữ liệu mức 2 “ Quản lý xem phim” - báo cáo đồ án website xem phim trực tuyến
Hình 3.5 Mô hình dòng dữ liệu mức 2 “ Quản lý xem phim” (Trang 31)
Hình 3.6: Mô hình dòng dữ liệu mức 2 “Báo cáo, thống kê” - báo cáo đồ án website xem phim trực tuyến
Hình 3.6 Mô hình dòng dữ liệu mức 2 “Báo cáo, thống kê” (Trang 32)
3.2.3.1. Sơ đồ usecase - báo cáo đồ án website xem phim trực tuyến
3.2.3.1. Sơ đồ usecase (Trang 32)
Hình 3.8: Sơ đồ use case của Quản lý - báo cáo đồ án website xem phim trực tuyến
Hình 3.8 Sơ đồ use case của Quản lý (Trang 33)
Hình 3.9: Sơ đồ use case của Người dùng - báo cáo đồ án website xem phim trực tuyến
Hình 3.9 Sơ đồ use case của Người dùng (Trang 34)
Hình 3.13: Cài đặt CSDL episodes - báo cáo đồ án website xem phim trực tuyến
Hình 3.13 Cài đặt CSDL episodes (Trang 43)
Hình 3.19: Cài đặt CSDL movies - báo cáo đồ án website xem phim trực tuyến
Hình 3.19 Cài đặt CSDL movies (Trang 45)
Bảng payments (Giao dịch) - báo cáo đồ án website xem phim trực tuyến
Bảng payments (Giao dịch) (Trang 46)
Hình 3.24: Cài đặt CSDL products - báo cáo đồ án website xem phim trực tuyến
Hình 3.24 Cài đặt CSDL products (Trang 47)
Hình 3.26: Cài đặt CSDL users - báo cáo đồ án website xem phim trực tuyến
Hình 3.26 Cài đặt CSDL users (Trang 48)
Hình 3.27: Mô hình quan hệ dữ liệu - báo cáo đồ án website xem phim trực tuyến
Hình 3.27 Mô hình quan hệ dữ liệu (Trang 49)
Hình 4.28: Trang đăng nhập admin - báo cáo đồ án website xem phim trực tuyến
Hình 4.28 Trang đăng nhập admin (Trang 50)
Hình 4.29: Trang chủ web quản lý dữ liệu - báo cáo đồ án website xem phim trực tuyến
Hình 4.29 Trang chủ web quản lý dữ liệu (Trang 51)
Hình 4.30: Trang quản lý giao dịch - báo cáo đồ án website xem phim trực tuyến
Hình 4.30 Trang quản lý giao dịch (Trang 52)
Hình 4.31: Trang quản lý danh mục - báo cáo đồ án website xem phim trực tuyến
Hình 4.31 Trang quản lý danh mục (Trang 53)
Hình 4.35: Trang quản lý tập phim - báo cáo đồ án website xem phim trực tuyến
Hình 4.35 Trang quản lý tập phim (Trang 57)
Hình 4.36: Trang quản lý link phim - báo cáo đồ án website xem phim trực tuyến
Hình 4.36 Trang quản lý link phim (Trang 58)
Hình 4.37: Trang quản lý thông tin web - báo cáo đồ án website xem phim trực tuyến
Hình 4.37 Trang quản lý thông tin web (Trang 59)
Hình 4.38: Trang đăng ký tài khoản người dùng - báo cáo đồ án website xem phim trực tuyến
Hình 4.38 Trang đăng ký tài khoản người dùng (Trang 60)
Hình 4.43: Trang chủ website xem phim - báo cáo đồ án website xem phim trực tuyến
Hình 4.43 Trang chủ website xem phim (Trang 62)
Hình 4.44: Tab bar của trang xem phim - báo cáo đồ án website xem phim trực tuyến
Hình 4.44 Tab bar của trang xem phim (Trang 63)
Hình 4.45: Trang chi tiết phim - báo cáo đồ án website xem phim trực tuyến
Hình 4.45 Trang chi tiết phim (Trang 64)
Hình 4.46: Trang xem phim - báo cáo đồ án website xem phim trực tuyến
Hình 4.46 Trang xem phim (Trang 65)
Hình 4.48: Danh mục yêu thích - báo cáo đồ án website xem phim trực tuyến
Hình 4.48 Danh mục yêu thích (Trang 66)
Hình 4.50: Lịch sử giao dịch - báo cáo đồ án website xem phim trực tuyến
Hình 4.50 Lịch sử giao dịch (Trang 68)
w