tài liệu Xây dựng hệ thống cung cấp dịch vụ nghe nhạc xem video trực tuyến
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Vũ Thanh Tùng XÂY DỰNG HỆ THỐNG CUNG CẤP DỊCH VỤ NGHE NHẠC / XEM VIDEO TRỰC TUYẾN KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ thông tin HÀ NỘI - 2007 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Vũ Thanh Tùng XÂY DỰNG HỆ THỐNG CUNG CẤP DỊCH VỤ NGHE NHẠC / XEM VIDEO TRỰC TUYẾN KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH Ngành: Công nghệ thông tin Cán bộ hướng dẫn: TS. Nguyễn Hải Châu HÀ NỘI - 2007 TÓM TẮT KHOÁ LUẬN Ngành giải trí âm nhạc ngày nay không còn đơn thuần là biểu diễn nghệ thuật mà nó đã trở thành một ngành công nghiệp với lợi nhuận khổng lồ. Trong xu hướng phát triển của công nghệ thông tin, ngành âm nhạc đã có một bước chuyển mình mạnh mẽ, rất nhiều các website cung cấp nhạc trực tuyến ra đời. Nó mở ra một hướng đi mới trong việc xuất bản âm nhạc. Theo thố ng kê của BigChampagne, tính đến năm 2004 đã có khoảng 60.900 website nhạc trực tuyến trên toàn thế giới. Nhờ có Internet, âm nhạc đi đến với khán giả theo một con đường mới, nhanh chóng và hiệu quả. Hiện nay ở Việt Nam cũng đã có rất nhiều các website cho phép nghe nhạc, xem video trực tuyến. Trong khuôn khổ luận văn này, chúng tôi đề cập đến việc xây dựng một hệ thống cung cấp dịch vụ nghe nhạ c, xem video trực tuyến, và hệ thống này được xây dựng trên nền hệ quản trị nội dung Joomla. Về phía người sử dụng thì hệ thống này không khác gì so với một hệ thống website nghe nhạc thông thường. Nhưng với người phát triển, việc xây dựng hệ thống trên nền Joomla thuận tiện hơn rất nhiều so với việc xây dựng lại từ đầu một hệ thống nghe nhạc. H ệ thống này sẽ có những chức năng cơ bản như hiển thị và chơi nhạc, chức năng tìm kiếm theo dạng text. Về phía người quản trị sẽ có những chức năng chính như: quản lý nội dung, bài hát, album, nhạc sỹ, ca sỹ. Cho phép tải ảnh, bài hát lên máy chủ. Do thời gian có hạn nên hệ thống mà chúng tôi xây dựng mới dừng lại ở đây. Trong tương lai, hệ thống sẽ cung cấp thêm cho người dùng chức năng tìm kiếm bài hát theo giai điệu hoặc tiết tấu [11]. Đây là một tính năng tương đối tốt mà đa số các website cung cấp nhạc số ở Việt Nam chưa làm được. LỜI CẢM ƠN Lời đầu tiên, em xin cảm ơn sự hướng dẫn, chỉ bảo tận tình của thầy giáo, TS. Nguyễn Hải Châu. Trong suốt thời gian qua, nhờ có sự quan tâm của thầy, nhờ có những tài liệu quý giá cũng như những lời động viên, khích lệ tinh thần của thầy, em đã hoàn thành tốt khoá luận của mình. Em cũng xin bày tỏ lời cảm ơn sâu sắc đến các th ầy giáo, cô giáo đã giảng dạy em trong suốt những năm học Đại Học. Những kiến thức nền tảng quý báu đó sẽ là hành trang giúp cho em vững bước trong tương lai. Cuối cùng, em xin gửi lời cảm ơn đến bạn bè, các anh chị đã giúp đỡ em rất nhiều tài liệu quan trọng trong thời gian làm khoá luận, và lời cảm ơn sâu sắc đến những người thân trong gia đình em, những người luôn quan tâm động viên khích lệ em trong học tập cũng như trong cuộc sống. Sinh viên thực hiện khoá luận Vũ Thanh Tùng MỤC LỤC BẢNG CHÚ GIẢI THUẬT NGỮ 1 MỞ ĐẦU .2 Chương 1. GIỚI THIỆU VỀ JOOMLA 3 1.1 Giới thiệu chung: .3 1.1.1 Hệ thống quản trị nội dung (CMS) .3 1.1.2 Các ứng dụng chính của Joomla .3 1.2 Các thành phần chính của Joomla .6 1.2.1 Template .6 1.2.2 Components 8 1.2.3 Modules 8 1.2.4 Mambots .8 CHƯƠNG 2. GIỚI THIỆU PHP & MYSQL 9 2.1 PHP 9 2.1.1 Lịch sử phát triển của PHP .9 2.1.2 Cộng đồng sử dụng và phát triển PHP tại Việt Nam 12 2.1.3 Cấu trúc cơ bản của mã PHP 12 2.2 MySQL 14 2.2.1 Lịch sử phát triển 14 2.2.2 Một số từ khóa thông dụng trong SQL: 16 a. Lấy dữ liệu: 16 b. Sửa đổi dữ liệu : .16 c. Giao dịch dữ liệu: 17 CHƯƠNG 3. XÂY DỰNG HỆ THỐNG 18 3.1 Mô tả bài toán 18 3.2 Mô hình nghiệp vụ .18 3.2.1 Bảng phân tích xác định chức năng, tác nhân và hồ sơ 18 3.2.2 Biểu đồ ngữ cảnh hệ thống .19 3.2.3 Biểu đồ phân rã chức năng .20 3.2.4 Mô hình các chức năng cụ thể 20 3.2.5 Lập ma trận thực thể chức năng .21 3.3 Phân tích – Mô hình khái niệm logic 22 3.3.1 Biểu đồ luồng dữ liệu mức 0 22 3.3.2 Biểu đồ luồng dữ liệu mức 1 23 3.3.3 Mô hình khái niệm dữ liệu: mô hình E-R 24 a. Xây dựng được các thực thể 24 b. Xác định mối quan hệ và thuộc tính 24 c. Vẽ biểu đồ rút gọn .25 3.4 Thiết kế mô hình logic .26 3.4.1. Chuyển mô hình ER sang mô hình quan hệ 26 a. Biểu diễn các thực thể: 26 b. Biểu diễn các mối quan hệ .26 c. Chuẩn hóa: .26 d. Biểu đồ quan hệ của mô hình dữ liệu 27 3.4.2. Thiết kế cơ sở dữ liệu vật lý 27 3.4.2. Thiết kế cơ sở dữ liệu vật lý 28 a. Bảng: BÀI HÁT .28 b. Bảng: ALBUM 29 c. Bảng: CA SỸ .29 d. Bảng: NHẠC SỸ .30 e. Bảng: BÀI HÁT_ALBUM .30 f. Bảng: BÀI HÁT_CA SỸ .30 CHƯƠNG 4: ỨNG DỤNG THỰC TIỄN .31 4.1. Mô tả môi trường xây dựng và thử nghiệm ứng dụng .31 4.1.1 Mô tả môi trường xây dựng ứng dụng: 31 4.1.2 Các ứng dụng xây dựng thử nghiệm: .31 4.2 Giao diện của website 32 4.3. Đánh giá về hệ thống 41 4.3.1 Ưu điểm 41 4.3.2 Nhược điểm 41 4.4 Hướng phát triển trong tương lai .41 TÀI LIỆU THAM KHẢO .43 BẢNG CHÚ GIẢI THUẬT NGỮ Chữ viết tắt / Ký hiệu Tên tiếng anh Giải nghĩa CSDL Cơ sở dữ liệu Website Trang web MySQL Hệ thống quản lý Cơ sở dữ liệu quan hệ, sử dụng Ngôn ngữ truy vấn có cấu trúc File Tập tin (dữ liệu được lưu trữ trên đĩa cứng) HTML Ngôn ngữ đánh dấu siêu văn bản PHP Ngôn ngữ lập trình web PHP Javascript Một dạng mã kịch bản Framework Môi trường làm việc CSS Cascading Style Sheets CMS Content Management System (Hệ quản trị nội dung) Template Khuôn mẫu (thường dùng cho một trang web) Components Thành phần của Joomla Modules Thành Phần của Joomla Mambots Thành Phần của Joomla Engine Một phương tiện, dụng cụ Chương 4: Ứng dụng thực tiễn MỞ ĐẦU Âm nhạc là một trong những lĩnh vực giải trí rất quan trọng. Theo số liệu từ Hiệp hội Công nghiệp Ghi âm Quốc tế (IFPI), doanh thu từ việc kinh doanh nhạc số hợp pháp trong sáu tháng đầu năm 2006 là 945 triệu USD, tăng 106% so với cùng kỳ năm trước. Trong vài năm trở lại đây, sự phát triển của CNTT nói chung và mạng Internet nói riêng, đã mang lại sức sống mới cho nhạc số. Ngày nay việc giải trí, nghe nhạc tr ực tuyến trên mạng Internet đã không còn là điều xa lạ đối với mỗi chúng ta. Hơn nữa, Internet đã mang lại những ưu thế đáng kể trong việc “phát hành”, “chia sẻ” . so với các phương tiện thông tin khác. Hiện nay ở Việt Nam cũng như trên thế giới đã có rất nhiều các website cho phép nghe nhạc, xem video trực tuyến. Trong khuôn khổ luận văn này, chúng tôi đề cập đến một hệ thống nghe nhạc, xem video clip trực tuyế n được xây dựng trên nền Joomla. Về phía người sử dụng thì hệ thống này không khác gì so với một hệ thống website nghe nhạc thông thường. Nhưng với người phát triển, việc xây dựng hệ thống trên nền Joomla thuận tiện hơn rất nhiều so với việc xây dựng lại từ đầu 1 hệ thống nghe nhạc. Hệ thống cung cấp nhạc này sẽ bao gồm các chức năng cơ bản nh ư quản lý nội dung về bài hát, ca sỹ, nhạc sỹ, album .vv và tím kiếm cơ bản. Ở phiên bản tiếp theo, chúng tôi dự định sẽ đưa thêm và hệ thống một chức năng mới, đó là tìm kiếm bài hát theo một giai điệu hoặc tiết tấu có sẵn. Giai điệu này có thể là một File dạng MIDI, hay một đoạn nhạc của bài hát, hoặc thậm chí là một đoạn tiếng huýt sáo do ngườ i sử dụng trực tiếp ghi lại thông qua Micro. Để phát triển tính năng này, chúng ta cần có một module xử lý các bài hát được tải lên và trích ra đoạn nhạc mẫu của bài hát đó. Sau đó lưu đoạn nhạc mẫu vào ngay cơ sở dữ liệu của bài hát đó. Một module để phân tích và so sánh các đoạn nhạc mẫu với đoạn nhạc cần tìm kiếm. Cuối cùng là một module xử lý đoạn nh ạc yêu cầu tìm kiếm: đoạn nhạc này có thể là một File nhạc MIDI (từ các chương trình mô phỏng đàn Piano [14] ) một đoạn âm thanh do người dùng tự thu âm, hay là cả một bài hát. Chương 1: Giới thiệu Joomla Chương 1. GIỚI THIỆU VỀ JOOMLA 1.1 Giới thiệu chung: 1.1.1 Hệ thống quản trị nội dung (CMS) CMS viết tắt của từ Content Management System (tạm dịch là Hệ thống quản trị nội dung), là một hệ thống phần mềm máy tính để thiết lập, tổ chức, tạo thuận tiện cho việc xây dựng các tài liệu hay các nội dung khác. Thông thường, CMS là một ứng dụng web sử dụng để quản lý các website và nội dung web. 1.1.2 Các ứng dụng chính của Joomla Joomla là một hệ thống quản trị nội dung CMS, trợ giúp rất tốt cho việc xây dựng một websites và những ứng dụng trực tuyến khác. Ở thời điểm hiện nay, Joomla là một trong những hệ thống quản trị nội dung CMS khá thành công. Với việc đạt được cột mốc 100 ngàn thành viên đăng ký tại diễn đàn http://forum.joomla.org Joomla trở thành CMS mã nguồn mở có số lượng thành viên rất đông đảo. Đồng thờ i việc trao đổi, giúp đỡ lẫn nhau giữa các thành viên trong cộng đồng trở nên thuận tiện và nhanh chóng hơn. Và hơn hết, Joomla là một giải pháp mã nguồn mở, nó miễn phí cho tất cả mọi người. Hệ thống Joomla có khả năng quản trị nội dung tương đối đa dạng, vì thế khi một người phát triển muốn xây dựng một ứng dụng bất kỳ, thì có thể dựa trên rất nhiề u thứ có sẵn mà Joomla cung cấp. Không những cung cấp đầy đủ các công cụ quản lý nội dung, Joomla còn rất dễ dàng mở rộng thêm thông qua việc cài đặt các module, component, template Hiện nay Joomla được sử dụng trên toàn thế giới để cung cấp mọi thứ, từ đơn giản như các trang web cá nhân, tới những ứng dụng web phức tạp. Dưới đây là một vài ứng dụng mà Joomla thường được sử dụng để xây dựng: * Corporate websites or portals : Website của công ty hay cổng giao tiếp * Online commerce : Thương mại trực tuyến * Small business websites : Website kinh doanh nhỏ * Non-profit and organizational websites : Website các tổ chức phi lợi nhuận * Government applications : Các ứng dụng cho chính phủ Chương 1: Giới thiệu Joomla * School and church websites : Website trường học nhà thờ * Personal or family homepages : Website cá nhân, gia đình * Community-based portals : Cổng kết nổi cơ bản * Magazines and newspapers : Website các tạp chí và báo điện tử . những ví dụ trên cho thấy khả năng của Joomla không hề có giới hạn. Gói Joomla cơ bản được thiết kế để dễ dàng cài đặt, thậm chí cho những người không phải là lập trình viên máy tính. Phần lớn người sử dụng không gặp ph ải trở ngại nào khi cài đặt và chạy hệ thống Joomla, và có rất nhiều sự hỗ trợ cho những người mới sử dụng. Joomla có một cộng đồng năng động, đang phát triển với trên 100,000 thành viên, họ là những người sử dụng thông thường hay các nhà lập trình chuyên nghiệp. Một hệ thống Joomla được cài đặt và chạy, nó thậm chí đơn giản cho những người dùng không phải là người phát triển ứ ng dụng web chuyên nghiệp, đều có thể thêm hay chỉnh sửa nội dung, cập nhật ảnh, và quản lý những dữ liệu phản hồi . Bất kỳ ai với những kỹ năng xử lý web cơ bản đều có thể dễ dàng học cách quản lý một site Joomla. Joomla làm công việc quản lý nội dung khá tốt, yếu tố này làm cho một site Joomla trở nên đơn giản hơn rất nhiều trong việc quản lý. Nhưng vớ i nhiều người, sức mạnh thực sự của Joomla nằm trong Framework ứng dụng, nhờ nó mà hàng nghìn nhà phát triển chuyên nghiệp trên toàn thế giới có thể tạo ra những add-ons và extensions tương đối mạnh. Sau đây là một vài ví dụ trong hàng nghìn extension sẵn có dành cho Joomla: * Dynamic form builders : Xây dựng form động * Business or organizational directories : Các danh bạ tổ chức hoặc kinh doanh * Document management : Quản lý tài liệu * image and multimedia galleries : Triển lãm ảnh và đa phương tiện * E-commerce and shopping cart engines: Các máy bán hàng và thương mại điện tử [...]... COMMIT cuối cùng Chương 3: Xây dựng hệ thống CHƯƠNG 3 XÂY DỰNG HỆ THỐNG Mục tiêu của luận văn là xây dựng hệ thống cung cấp dịch vụ nghe nhạc / xem video trực tuyến Hệ thống này sẽ được xây dựng trên nền hệ quản trị nội dung Joomla, một trong những hệ quản trị nội dung mã nguồn mở mạnh nhất hiện nay Trong chương 3 này, chúng tôi sẽ trình bày các bước phân tích, thiết kế hệ thống từ bài toán được mô... được mô tả ở phần dưới đây 3.1 Mô tả bài toán Hệ thống cung cấp dịch vụ nghe nhạc / xem video trực tuyến là một hệ thống cho phép mọi người nghe nhạc mà không cần phải đăng ký là thành viên Người dùng có thể tìm kiếm các bài hát, các nhạc sỹ, album, ca sỹ Nếu trong cơ sở dữ liệu có, nó sẽ trả về kết quả cho người dùng Chức năng quản lý nội dung của hệ thống bao gồm: chỉnh sửa, thêm , xoá các bài hát... một File 3.2 Mô hình nghiệp vụ 3.2.1 Bảng phân tích xác định chức năng, tác nhân và hồ sơ Động từ + bổ ngữ Danh từ Tìm kiếm Bài hát, nhạc sỹ, album, ca sỹ Thêm, sửa, xoá Bài hát, nhạc sỹ, album, ca sỹ Nhận xét (tác nhân) (tác nhân) Chương 3: Xây dựng hệ thống 3.2.2 Biểu đồ ngữ cảnh hệ thống Người quản lý Sửa Xoá Thêm Yêu cầu nghe 0 Bài hát Người dùng Hệ thống website nghe nhạc Yêu cầu tìm kiếm Kết quả... bài hát b DS album 1.0 Chơi Nhạc Nghe bài hát c DS nhạc sỹ d DS ca sỹ TT phản hồi 2.0 Người sử dụng Yêu cầu tìm kiếm Tìm Kiếm Chương 3: Xây dựng hệ thống 3.3.2 Biểu đồ luồng dữ liệu mức 1 Người quản lý 3.2 Xoá bài hát a DS bài hát b DS album 3.1 Thêm bài hát c DS nhạc sỹ d DS ca sỹ 3.3 Sửa bài hát Chương 3: Xây dựng hệ thống 3.3.3 Mô hình khái niệm dữ liệu: mô hình E-R a Xây dựng được các thực thể Dựa... hát, album, nhạc sỹ, ca sỹ Thuộc tính Động từ “Sửa” của người quản trị Câu hỏi Ai sửa Sửa cái gì Trả lời Thực thể Người quản lý Bài hát, album, nhạc sỹ, ca sỹ Thuộc tính Chương 3: Xây dựng hệ thống c Vẽ biểu đồ rút gọn Mã album Mã BH Tên nhạc sỹ Mã nhạc sỹ Mã nhạc sỹ Mã ca sỹ Thể loại BÀI HÁT Thuộc Thuộc CA SỸ Mã ca sỹ NHẠC SỸ Thuộc Tên ca sỹ ALBUM Mã album Tên album Chương 3: Xây dựng hệ thống 3.4 Thiết... xử lý yêu cầu Chương 3: Xây dựng hệ thống 3.2.3 Biểu đồ phân rã chức năng Hệ thống website nghe nhạc 1.Chơi nhạc 2.Tìm Kiếm 3.Quản lý 3.1 Thêm bài hát 3.1 Xoá bài hát 3.1 Sửa bài hát 3.2.4 Mô hình các chức năng cụ thể (1) Chơi nhạc: Chức năng này sẽ được kích hoạt khi người dùng nhấn và 1 bài hát nào đó Một player sẽ hiển thị ra và trên đó có các chức năng cơ bản xử lý chơi nhạc, ví dụ như dừng, tạm... liên quan đến bài hát trong cơ sở dữ liệu Chương 3: Xây dựng hệ thống 3.2.5 Lập ma trận thực thể chức năng Các thực thể a Danh sách bài hát b Danh sách album c Danh sách ca sỹ d Danh sách nhạc sỹ Chức năng nghiệp vụ a b c d 1 Thêm mới bài hát U 2 Xoá bài hát R R R R 3 Sửa bài hát R R R R 4 Tìm kiếm bài hát R R R R 5 Chơi nhạc R Chương 3: Xây dựng hệ thống 3.3 Phân tích – Mô hình khái niệm logic 3.3.1... Chương 3: Xây dựng hệ thống d Biểu đồ quan hệ của mô hình dữ liệu BAI HAT Mã bài hát Tên bài hát Thể loại Mã BH_AL Mã BH_CS BAI HAT_ ALBUM Mã BH_AB Mã bài hát Mã album ALBUM Mã album Tên album NHẠC SỸ Mã bài hát Tên bài hát Thể loại Mã BH_AL BAI HAT_ CA SY CA SỸ Mã BH_CS Mã bài hát Mã ca sỹ Mã ca sỹ Tên ca sỹ Thông tin Chương 3: Xây dựng hệ thống 3.4.2 Thiết kế cơ sở dữ liệu vật lý Sử dụng hệ quản trị... những nhà phát triển có thể dễ dàng xây dựng: * Integrated e-commerce systems : Hệ thống tích hợp thương mại điện tử * Inventory control systems : Hệ thống điều khiển thống kê * Data reporting tools : Các công cụ báo cáo dữ liệu * Custom product catalogs : Các catalog sản phẩm * Complex business directories : Các danh mục kinh doanh phức tạp * Reservation systems : Hệ thống dành riêng * Communication... Tên ca sỹ ảnh của ca sỹ Đây có phải là một ban nhạc hay không ? Ngày tạo Người tạo ra bản ghi này? Thông tin liên đến ca sỹ Chương 3: Xây dựng hệ thống d Bảng: NHẠC SỸ jos_author STT 1 2 3 4 5 6 Tên trường Chú giải id name Img Created Created_by description Khoá chính Tên nhạc sỹ ảnh của nhạc sỹ Ngày tạo Người tạo ra bản ghi này? Một số thông tin liên về nhạc sỹ e Bảng: BÀI HÁT_ALBUM Jos_songalbum STT . phép nghe nhạc, xem video trực tuyến. Trong khuôn khổ luận văn này, chúng tôi đề cập đến việc xây dựng một hệ thống cung cấp dịch vụ nghe nhạ c, xem video. Tùng XÂY DỰNG HỆ THỐNG CUNG CẤP DỊCH VỤ NGHE NHẠC / XEM VIDEO TRỰC TUYẾN KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH Ngành: Công nghệ thông