Sinh viên thực hiện: Nguyễn Lê Thị Tiểu Kha.Đề tài: Đồ án với đề tài “Xây dựng website quản lý việc tố chức các sự kiện tại trườngĐại học Sư Phạm Kỹ Thuật” được xây dựng với ngôn ngữ lậ
Trang 1ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
KHOA CÔNG NGHỆ SỐ
ĐỒ ÁN TỐT NGHIỆP
ĐẠI HỌCNGÀNH: CÔNG NGHỆ THÔNG TIN CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN
Trang 21-TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
KHOA CÔNG NGHỆ SỐ
ĐỒ ÁN TỐT NGHIỆP
ĐẠI HỌCNGÀNH: CÔNG NGHỆ THÔNG TIN CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN
Trang 5Tên đề tài: Xây dựng website quản lý các sự kiện tại Đại học Sư Phạm Kỹ Thuật Sinh viên thực hiện: Nguyễn Lê Thị Tiểu Kha.
Đề tài:
Đồ án với đề tài “Xây dựng website quản lý việc tố chức các sự kiện tại trườngĐại học Sư Phạm Kỹ Thuật” được xây dựng với ngôn ngữ lập trình PHP (frameworklaravel) và các plugin hỗ trợ như Bootstrap, Ajax
Website với các chức năng chính như quản lý sự kiện (Thêm, sửa, xoá sự kiện
và loại sự kiện, điểm danh sinh viên tham gia, tự động cộng điểm tích luỹ cho sinhviên
khi tham gia sự kiện). Hệ thống cho phép người admin quản trị viên được thực hiệnxem và duyệt các yêu cầu đề xuất từ giáo viên, sinh viên đồng thời quản trị viên có thểthống kê những sự kiên đã diễn ra Bên cạnh đó, giáo viên có thể quản lý các sự kiệnkhi họ đăng ký tổ chức
Đối với sinh viên, các chức năng chính sẽ có như đăng ký tham gia sự kiện, xemdanh sách và điểm tích luỹ khi tham gia, lấy lại mật khẩu và cập nhật thông tin cánhân
Nội dung bài báo cáo gồm có:
Chương 1: Tổng quan đề tài
Tìm hiểu, nghiên cứu và đưa ra lý do chọn đề tài, mục đích, mục tiêu khi xâydựng và phát triển đề tài Xác định rõ pham vi đề tài, phương pháp nghiên cứu xâydựng đề tài Đồng thời phân tích đặc tả yêu cầu nghiệp vụ
Chương 2: Cơ sở lý thuyết
Tìm hiểu, giới thiệu tổng quát các kiến thức về ngôn ngữ lập trình HTML, CSS,PHP, framework Lavrel, mô hình MVC, Ajax Jquery và hệ quản trị cơ sở dữ liệu.Chương 3: Phân tích thiết kế
+ Phân tích tác nhân và chức năng của từng tác nhân
+ Thiết kế sơ đồ usecase, sơ đồ hoạt động, sơ đồ ERD
+ Thiết kế cơ sở dữ liệu
+ Xây dựng kịch bản cho usecase
Chương 4: Xây dựng và triển khai hệ thống
Trang 62. Các số liệu, tài liệu ban đầu
Dựa trên số liệu thông tin của hệ thống Quản lý chuyên trách Đoàn – Hội
Tài liệu:
https://sinhvien.ute.udn.vn/
3 Nội dung chính của đồ án
Quá trình Xây dựng website quản lý tổ chức các sự kiện tại trường Đại học Sư Phạm
Kỹ Thuật gồm:
Lấy yêu cầu từ sinh viên và khảo sát nghiệp vụ thực tế
Phân tích thiết kế các chức năng của hệ thống
Phân tích thiết kế cơ sơ dữ liệu
Thiết kế giao diện cho các chức năng
Trang 8Trước hết em xin bày tỏ lòng biết ơn sâu sắc nhất tới giáo viên hướng dẫn Ths Đỗ Phú Huy đã tận tình giúp đỡ em rất nhiều trong suốt quá trình tìm hiểunghiên cứu và hoàn thành báo cáo tốt nghiệp.
Em xin chân thành cảm ơn các thầy cô trong Khoa Điện – Điện tử, bộ mônCông nghệ thông tin cũng như các thầy cô trong trường đã trang bị cho em nhữngkiến thức cơ bản cần thiết để em có thể hoàn thành đồ án tốt nghiệp
Xin gửi lời cảm ơn đến bạn bè những người luôn bên em đã động viên vàtạo điều kiện thuận lợi cho em, tận tình giúp đỡ chỉ bảo em những gì em còn thiếusót trong quá trình làm báo cáo tốt nghiệp
Cuối cùng em xin bày tỏ lòng biết ơn sâu sắc tới những người thân trong gia đình
đã giành cho em sự quan tâm đặc biệt và luôn động viên em
Vì thời gian có hạn, trình độ hiểu biết của bản thân còn nhiều hạn chế Cho nêntrong đồ án không tránh khỏi những thiếu sót, em rất mong nhận được sự đóng góp
ý kiến của tất cả các thầy cô giáo cũng như các bạn bè để đồ án của em được hoànthiện hơn
Em xin chân thành cảm ơn!
Trang 9Em xin cam đoan đề tài: “Xây dựng website quản lý các sự kiện tại trường Đại học
Sư Phạm Kỹ Thuật” là một công trình nghiên cứu của bản thân dưới sự hướng dẫn củagiáo viên hướng dẫn Th.S Đỗ Phú Huy Nội dung báo cáo đồ án là sản phẩm mà em đã
nỗ lực nghiên cứu trong quá trình học tập tại trường Bên cạnh đó những tài liệu vàtrang web tham khảo đã được liệt kê rõ tại phần tài liệu tham khảo Các số liệu, kếtquả trình bày trong báo cáo là hoàn toàn trung thực, em xin chịu hoàn toàn tráchnhiệm,
kỷ luật của bộ môn và nhà trường đề ra nếu như có vấn đề xảy ra
Sinh viên thực hiện
Trang 10MỞ ĐẦU 1
Chương 1: TỔNG QUAN ĐỀ TÀI 2
1.1 Lý do chọn đề tài 2
1.2 Mục tiêu đề tài 2
1.3 Phạm vi nghiên cứu 2
1.4 Phương pháp nghiên cứu 2
Chương 2: CƠ SỞ DỮ LIỆU 3
2.1 Giới thiệu về ngôn ngữ lập trình 3
2.1.1 Ngôn ngữ HTML 3
2.1.2 CSS 4
2.1.3 PHP 4
2.1.4 Framework Laravel 4
2.1.5 Mô hình MVC 5
2.1.6 Ajax Jquery 5
2.2 Giới thiệu về hệ quản trị cơ sở cữ liệu 5
2.2.1 Khái niệm 5
2.2.2 Các thành phần của MySQL 6
Chương 3: PHÂN TÍCH THIẾT KẾ HỆ THỐNG 7
3.1 Phân tích tác nhân và chức năng 7
3.1.1 Xác định tác nhân 7
3.1.2 Đặc tả yêu cầu nghiệp vụ 7
3.1.2.1 Khách vãng lai 7
3.1.2.2 Giáo viên 7
3.1.2.3 Sinh viên 7
3.1.2.4 Quản trị viên 7
Trang 113.2 Thiết kế sơ đồ Usecase 9
3.3 Thiết kế sơ đồ phân rã Usecase 9
3.4 Thiết kế sơ đồ hoạt động 11
3.4.1 Actor Giáo viên 11
3.4.1.1 Usecase Đăng ký tổ chức sự kiện 11
3.4.1.2 Usecase Cập nhật thông tin sự kiện 11
3.4.1.3 Usecase Cập nhật thông tin cá nhân 12
3.4.2 Actor Sinh viên 13
3.4.2.1 Usecase Lấy lại mật khẩu 13
3.4.2.2 Usecase Cập nhật thông tin cá nhân 14
3.4.2.3 Usecase Đăng ký tham gia sự kiện 15
3.4.2.4 Usecase Huỷ đăng ký tham gia sự kiện 16
3.4.3 Actor Quản trị viên 16
3.4.3.1 Usecase Quản lý Loại sự kiện 16
3.4.3.2 Usecase Quản lý sự kiện 17
3.4.3.3 Usecase Duyệt sự kiện 17
3.4.3.4 Usecase Điểm danh sinh viên tham gia sự kiện 18
3.4.3.5 Usecase Quản lý tài khoản 19
3.4.3.6 Usecase Phân quyền 19
3.4.3.7 Usecase Thống kê 20
3.5 Thiết kế sơ đồ ERD 20
3.6 Thiết kế cơ sở dữ liệu 21
3.7 Xây dựng kịch bản cho usecase 25
3.7.1 Usecase “Cập nhật thông tin cá nhân” (Sinh viên) 25
3.7.2 Usecase “Xem chi tiết thông tin sự kiện” (Sinh viên) 25
3.7.3 Usecase “Đăng ký tham gia sự kiện” (Sinh viên) 25
3.7.4 Usecase “Xem danh sách hoạt động” (Sinh viên) 26
Trang 123.7.7 Usecase “Điểm danh” (Admin) 27
3.7.8 Usecase “Quản lý Loại sự kiện” (Admin) 28
3.7.9 Usecase “Quản lý sự kiện” (Admin) 29
3.7.10 Usecase “Phân quyền” (Admin) 31
3.7.11 Usecase “Thống kê” (Admin) 32
3.7.12 Usecase “Quản lý tài khoản” (Admin) 32
3.7.12.1 Usecase “Quản lý thông tin người dùng” 32
3.7.12.2 Usecase “Quản lý thông tin sinh viên” 33
3.7.13 Usecae “Đăng ký tổ chức sự kiện” (Giáo viên) 34
3.7.14 Usecase “Cập nhật thông tin sự kiện” (Giáo viên) 34
Chương 4: XÂY DỰNG VÀ TRIỂN KHAI HỆ THỐNG 36
4.1 Công cụ xây dựng chương trình: 36
4.2 Xây dựng giao diện hệ thống 36
4.2.1 Giao diện trang Giáo viên 36
4.2.2 Giao diện trang Sinh viên 36
4.2.3 Giao diện trang Admin 37
4.3 Xây dựng chức năng hệ thống 37
4.3.1 Actor Giáo viên 37
4.3.2 Actor Sinh viên 39
4.3.3 Actor Admin 43
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 1
TÀI LIỆU THAM KHẢO 2
Trang 13Hình 3.1 Sơ đồ Usecase 9
Hình 3.2 Sơ đồ phân rã Usecae của tác nhân Giáo viên 9
Hình 3.3 Sơ đồ phân rã Usecase tác nhân Sinh viên 10
Hình 3.4 Sơ đồ phân rã Usecase của tác nhân Quản trị viên 10
Hình 3.5 Sơ đồ hoạt động cho Usecase Đăng ký tổ chức sự kiện của Giáo viên 11
Hình 3.6 Sơ đồ hoạt động cho Usecase Cập nhật thông tin sự kiện của Giáo viên 11
Hình 3.7 Sơ đồ hoạt động cho Usecase Cập nhật thông tin cá nhân của Giáo viên 12
Hình 3.8 Sơ đồ hoạt động cho Usecase Lấy lại mật khẩu của Sinh viên 13
Hình 3.9 Sơ đồ hoạt động cho Usecase Cập nhật thông tin cá nhân của Sinh viên 14
Hình 3.10 Sơ đồ hoạt động cho Usecase Đăng ký tham gia sự kiện của Sinh viên 15
Hình 3.11 Sơ đồ hoạt động cho Usecase Huỷ đăng ký tham gia sự kiện của Sinh viên .16
Hình 3.12 Sơ đồ hoạt động cho Usecase Quản lý loại sự kiện của Quản trị viên 16
Hình 3.13 Sơ đồ hoạt động cho Usecase Quản lý sự kiện của Quản trị viên 17
Hình 3.14 Sơ đồ hoạt động quản lý kiểu thành phần đồng phục của Quản trị viên 17
Hình 3.15 Sơ đồ hoạt động cho Usecase Điểm danh của Quản trị viên 18
Hình 3.16 Sơ đồ hoạt động cho Usecase Quản lý tài khoản của Quản trị viên 19
Hình 3.17 Sơ đồ hoạt động cho Usecase Phân quyền của Quản trị viên 19
Hình 3.18 Sơ đồ hoạt động cho Usecase Thống kê của Quản trị viên 20
Hình 3.19 Sơ đồ ERD 20
Hình 4.1 Giao diện trang Giáo viên 36
Hình 4.2 Giao diện trang Sinh viên 37
Hình 4.3 Giao diện trang Admin 37
Hình 4.4 Giao diện đăng nhập trang Giáo viên 38
Hình 4.5 Giao diện cập nhật thông tin cá nhân trang Giáo viên 38
Hình 4.6 Giao diện đăng ký tổ chức sự kiện trang Giáo viên 39
Hình 4.7 Giao diện đăng nhập trang Sinh viên 40
Hình 4.8 Giao diện cập nhật thông tin cá nhân trang Sinh viên 40
Hình 4.9 Giao diện đăng ký tham gia sự kiện trang Sinh viên 41
Hình 4.10 Giao diện xem chi tiết sự kiện trang Sinh viên 42
Hình 4.11 Giao diện xem danh sách hoạt động trang Sinh viên 43
Hình 4.12 Giao diện đăng nhập trang Admin 43
Trang 14Hình 4.14 Giao diện chỉnh sửa loại sự kiện trang Admin 45
Hình 4.15 Giao diện xóa loại sự kiện trang Admin 45
Hình 4.16 Giao diện thêm sự kiện trang Admin 46
Hình 4 17 Giao diện chỉnh sửa sự kiện trang Admin 47
Hình 4.18 Giao diện xóa sự kiện trang Admin 48
Hình 4.19 Giao diện duyệt sự kiện trang Admin 48
Hình 4.20 Giao diện thống kê trang Admin 49
Hình 4.21 Giao diện điểm danh sinh viên trang Admin 50
Hình 4.22 Giao diện thêm người dùng trang Admin 51
Hình 4.23 Giao diện chỉnh sửa người dùng trang Admin 51
Hình 4 24 Giao diện thêm vai trò trang Admin 52
Hình 4.25 Giao diện chỉnh sửa vai trò trang Admin 52
Hình 4.26 Giao diện xoá vai trò trang Admin 53
Bảng 3.1 users 21
Bảng 3.2 teachers 21
Bảng 3.3 students 21
Bảng 3.4 role_user 22
Bảng 3.5 role 22
Bảng 3.6 permission_role 22
Bảng 3.7 permissions 23
Bảng 3.8 menus 23
Bảng 3.9 events 23
Bảng 3.10 diemdanhs 24
Bảng 3.11 classes 24
Bảng 3.12 cart 24
Trang 15Chữ viết tắt Đầy đủ Diễn dãi
HTML HyperText Markup Language Ngôn ngữ đánh dấu siêu văn bảnCSS Cascading Style Sheets Ngôn ngữ định kiểu theo tầngPHP Hypertext Preprocessor Ngôn ngữ lập trình
ERD Entity–relationship model Mô hình thực thể kết hợp
Trang 16MỞ ĐẦU
Hiện nay, với thời đại của khoa học - công nghệ thông tin ngày càng tiên tiến,việc tổ chức sự kiện là một công cụ được sử dụng phổ biến nhất của mỗi nhà trườnghiện nay Thông qua các sự kiện được tổ chức, nhà trường có thể tạo sự chú ý hơn chocác doanh nghiệp và đặc biệt là sinh viên
Trên thực tế để tổ chức được một sự kiện thành công, doanh nghiệp hoặcnhà trường cần phải liên hệ một công ty chuyên cung cấp dịch vụ tổ chức sự kiện đểgiúp họ quản lý lĩnh vực này Nhưng nhờ Website đang xây dựng này mà nhà trườnghiện nay đã có thể tự quản lý và giúp cho doanh nghiệp dễ dàng tổ chức các sự kiện,tiếp cận với sinh viên một cách dễ dàng và hiệu quả nhất
Nhưng để tổ chức sự kiện hoạt động theo một quy trình ra sao, và làm thế nào đểviệc tổ chức sự kiện có thể thoả mãn tốt nhất các nhu cầu đề ra? Đó là vấn đề đangđược doanh nghiệp và nhà trường quan tâm
Sau một thời gian học tập tại trường, với vốn kiến thức của mình, em đã thấyđược chất lượng tổ chức sự kiện của nhà trường vẫn đang còn bị hạn chế và từ đó emđã
chọn đề tài: “Xây dựng website quản lý việc tố chức các sự kiện tại trường Đại học
Sư Phạm Kỹ Thuật” giúp cho tất cả các bạn, các giáo viên, các đối tác có thể tổ chức
và tham gia sự kiện một cách hiệu quả nhất
Em xin chân thành cảm ơn !
Trang 17Chương 1: TỔNG QUAN ĐỀ TÀI
1.1 Lý do chọn đề tài
Với thế hệ 4.0 ngày nay, sự tác động của công nghệ phổ biến đã giúp cho giới trẻtiếp cận được các sản phẩm, các chương trình, sự kiện một các dễ dàng nhất Và cũngnhư tại ở trường Đại học Sư Phạm Kỹ Thuật được chuyển giao chương trình từ cấp Cao đẳng lên cấp Đại học thì sẽ có rất nhiều sự kiện như chào đón tân sinh viên,giới thiệu việc làm hoặc các hoạt động riêng của trường, vv….Vài năm trước với
hệ thống không thể thông báo, tiếp cận các sự kiện đã và đang được tổ chức đến cácbạn sinh viên tốt nhất nên nhiều bạn đã bỏ lỡ rất nhiều công việc thú vị cũng như thamgia các sự kiện sẽ được tích luỹ thêm điểm rèn luyện Với mong muốn quản lý, thôngbáo và tổ chức sự kiện của các đối tác của trường dành cho tất cả các bạn sinh viên vìthế em sẽ “Xây dựng website quản lý việc tố chức các sự kiện tại trường Đại học SưPhạm Kỹ Thuật” giúp cho tất cả các bạn, các giáo viên, các đối tác có thể tổ chức vàtham gia sự kiện một cách hiệu quả nhất
1.2 Mục tiêu đề tài
Xây dựng Website quản lý tổ chức các sự kiện tại trường Đại học Sư Phạm
Kỹ Thuật giúp sinh viên có thể xem và đăng ký tham gia sự kiện một cách thuân tiện
và dễ dàng nhất
1.3 Phạm vi nghiên cứu
Xây dựng website dành cho sinh viên và trường Đại học Sư Phạm Kỹ Thuật
Đà Nẵng
1.4 Phương pháp nghiên cứu
Ngôn ngữ lập trình: PHP (framework laravel)
Hệ quản trị CSDL: MySQL
Trang 18Chương 2: CƠ SỞ DỮ LIỆU
2.1 Giới thiệu về ngôn ngữ lập trình
2.1.1 Ngôn ngữ HTML
HTML (HyperText Markup Language) – Ngôn ngữ đánh dấu siêu văn bản được
sử dụng để tạo các tài liệu có thể truy cập trên mạng Tài liệu HTML được tạo nhờdùng các thẻ và các phần tử của HTML File được lưu trên máy chủ dịch vụ web vớiphần mở rộng “.htm” hoặc “.html” Các trình duyệt sẽ đọc tập tin HTML và hiển thịchúng dưới dạng trang web Các thẻ HTML sẽ được ẩn đi, chỉ hiển thị nội dung vănbản và các đối tượng khác: hình ảnh, media Với các trình duyệt khác nhau đều hiểnthị
một tập HTML với một kết quả nhất định Các trang HTML được gửi đi qua mạnginternet theo giao thức HTTP HTML không những cho phép nhúng thêm các đốitượng hình ảnh, âm thanh mà còn cho phép nhúng các kịch bản vào trong đó như cácngôn ngữ kịch bản như Javascript để tạo hiệu ứng động cho trang web Để trình bàytrang web hiệu quả hơn thì HTML cho phép sử dụng kết hợp với CSS
HTML là một chuẩn ngôn ngữ internet được tạo ra và phát triển bởi tổ chức World Wide Web Consortium còn được viết tắc là W3C Trước đó thì HTML xuất bảntheo chuẩn của RFC HTML được tương thích với mọi hệ điều hành cùng các trìnhduyệt của nó Khả năng dễ học, dễ viết là một ưu điểm của HTML không những vậyviệc
soạn thảo đòi hỏi hết sức đơn giản, chúng ta có thể dùng word, notepad hay bất cứ mộttrình soạn thảo văn bản nào để viết và chỉ cần lưu với định dạng “.html “ hoặc “.htm”
là đã có thể tạo ra một file chứa HTML Hiện nay, phiên bản mới nhất của HTML làHTML5 với nhiều tính năng ưu việt so với các phiên bản cũ HTML cải tiến khá nhiềuđặc biệt hỗ trợ mạnh mẽ các phần tử multimedia mà không cần các plugin Một tập tinHTML bao gồm trong đó là các đoạn văn bản HTML, được tạo lên bởi các thẻ HTML.HTML5 nói chung mạnh mẽ hơn nhiều không chỉ về tốc độ và độ thích ứng cao
mà chính là khả năng hỗ trợ API (Application Programming Interface - giao diện lậptrình ứng dụng) và DOM (Document Object Model – các đối tượng thao tác văn bản)[1]
Trang 192.1.2 CSS
CSS (Cascading Style Sheets) là một ngôn ngữ quy định cách trình bàycho các tài liệu viết bằng HTML, XHTML, XML, SVG, hay UML,…CSS quy địnhcách hiển thị của các thẻ HTML bằng cách quy định các thuộc tính của các thẻ đó(font chữ, kích thước, màu sắc )
CSS có cấu trúc đơn giản và sử dụng các từ tiếng anh để đặt tên cho các thuộctính CSS khi sử dụng có thể viết trực tiếp xen lẫn vào mã HTML hoặc tham chiếu từmột
file css riêng biệt Hiện nay CSS thường được viết riêng thành một tập tin với mở rộng
là “.css” Chính vì vậy mà các trang web có sử dụng CSS thì mã HTML sẽ trở nênngắn gọn hơn Ngoài ra có thể sử dụng một tập tin CSS đó cho nhiều website tiết kiệmrất nhiều thời gian và công sức Một đặc điểm quan trọng đó là tính kế thừa của CSS
do đó sẽ giảm được số lượng dòng code mà vẫn đạt được yêu cầu [2]
2.1.3 PHP
PHP (Hypertext Preprocessor) là một ngôn ngữ lập trình kịch bản hay một loại
mã lệnh chủ yếu được dùng để phát triển các ứng dụng viết cho máy chủ, mã nguồn
mở, dùng cho mục đích tổng quát Nó rất thích hợp với web và có thể dễ dàng nhúngvào trang HTML Do được tối ưu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn,
cú pháp giống ngôn ngữ lập trình C và ngôn ngữ lập trình Java, dễ học và thời gianxây dựng sản phẩm tương đối ngắn hơn so với các ngôn ngữ khác nên PHP đãnhanh chóng trở thành một ngôn ngữ lập trình web phổ biến nhất thế giới Một tập tinPHP có phần mở rộng *.php, nó có thể chứa các văn bản, mã nguồn HTML, CSS,Javascript, Jquery và đương nhiên có thể chứa mã nguồn PHP [3]
2.1.4 Framework Laravel
Laravel là một PHP framework mã nguồn mở và miễn phí, được phát triển bởiTaylor Otwell và nhắm vào mục tiêu hỗ trợ phát triển các ứng dụng web theo kiếmtrúc model-view-controller (MVC) Những tính năng nổi bật của Laravel bao gồm cúpháp dễ hiểu – rõ ràng, một hệ thống đóng gói modular và quản lý gói phụ thuộc,nhiều cách khác nhau để truy cập vào các cơ sở dữ liệu quan hệ, nhiều tiện ích khácnhau hỗ trợ việc triển khai vào bảo trì ứng dụng
Dưới đây là một số tính năng nổi bật của Laravel:
Viết trên mô hình MVC PHP
Đầy đủ các lớp Database giúp hỗ trợ tốt cho các nền tảng khác nhau
Trang 20 Dễ dàng đọc hiểu, sử dụng: Các tính năng dựng sẵn: Cung cấp cho người dùngrất nhiều các nhóm tính năng giúp quá trình phát triển trở nên nhanh chóng hơn rấtnhiều.
và phần thông tin được trình bày và tiếp nhận từ phía người dùng
Khi sử dụng đúng cách, mẫu MVC giúp cho người phát triển phần mềm cô lậpcác nguyên tắc nghiệp vụ và giao diện người dùng một cách rõ ràng hơn Phần mềmphát triển theo mẫu MVC tạo nhiều thuận lợi cho việc bảo trì vì các nguyên tắcnghề nghiệp và giao diện ít liên quan với nhau [5]
2.1.6 Ajax Jquery
AJAX là chữ viết tắt của Asynchronous JavaScript and XML, AJAX =Asynchronous JavaScript and XML. Đây là một công nghệ giúp chung ta tạo ra nhữngWeb động mà hoàn toàn không reload lại trang nên rất mượt và đẹp [[5] ]
2.2 Giới thiệu về hệ quản trị cơ sở cữ liệu
2.2.1 Khái niệm
MySQL là hệ quản trị dữ liệu miễn phí, được tích hợp sử dụng chung vớiApache, PHP Chính yếu tố phát triển trong cộng đồng mã nguồn mở nên MySQL đãqua
rất nhiều sự hỗ trợ của những lập trình viên yêu thích mã nguồn mở MySQL cũng
có cùng một cách truy xuất và mã lệnh tương tự với ngôn ngữ SQL Nhưng MySQLkhông bao quát toàn bộ những câu truy vấn cao cấp như SQL Về bản chất MySQL chỉđáp ứng việc truy xuất đơn giản trong quá trình vận hành của website nhưng hầu hết
có thể giải quyết các bài toán trong PHP
MySQL là một trong những ví dụ rất cơ bản về Hệ Quản trị Cơ sở dữ liệu quan
hệ sử dụng ngôn ngữ truy vấn có cấu trúc (SQL) MySQL đang được sử dụng chonhiều công việc kinh doanh từ nhỏ tới lớn:
Trang 21 MySQL là mã ngồn mở vì thế sử dụng không mất phí.
MySQL sử dụng một Form chuẩn của ngôn ngữ dữ liệu nổi tiếng là SQL
MySQL làm việc trên nhiều Hệ điều hành và với nhiều ngôn ngữ như PHP,PERL, C, C++, Java, …
MySQL làm việc nhanh với các tập dữ liệu lớn
MySQL hỗ trợ các cơ sở dữ liệu lớn, lên tới 50 triệu hàng hoặc nhiều hơn nữatrong một bảng Kích cỡ file mặc định được giới hạn cho một bảng là 4GB( Gigabyte ), nhưng bạn có thể tăng kích cỡ này (nếu hệ điều hành của bạn có thể
đạt tới giới hạn lý thuyết là 8 TB ( Terabyte )
MySQL là có thể điều chỉnh Giấy phép GPL mã nguồn mở cho phép lập trìnhviên sửa đổi phần mềm MySQL để phù hợp với môi trường cụ thể của họ [6]
2.2.2 Các thành phần của MySQL
Kết nối đến cơ sở dữ liệu MySQL: tìm hiểu làm thế nào để sử dụng PHP để mở
và đóng một kết nối cơ sở dữ liệu MySQL
Tạo cơ sở dữ liệu MySQL Sử dụng PHP: phần này giải thích làm thế nào để tạo
ra cơ sở dữ liệu và bảng MySQL bằng cách sử dụng PHP
Xóa cơ sở dữ liệu MySQL Sử dụng PHP: phần này giải thích làm thế nào để xóa
cơ sở dữ liệu và bảng MySQL bằng cách sử dụng PHP
Chèn dữ liệu Cơ sở dữ liệu MySQL: một khi bạn đã tạo ra cơ sở dữ liệu vàcác bảng của bạn sau đó bạn muốn chèn dữ liệu vào bảng được tạo ra Phiên họp này
sẽ đưa bạn qua ví dụ thực tế về dữ liệu chèn
Lấy dữ liệu từ cơ sở dữ liệu MySQL: tìm hiểu làm thế nào để lấy hồ sơ từ cơ sở
dữ liệu MySQL bằng cách sử dụng PHP
Sử dụng Paging qua PHP: điều này giải thích làm thế nào để hiển thị kết quả truyvấn của bạn thành nhiều trang và làm thế nào để tạo ra các liên kết điều hướng Đangcập nhật dữ liệu vào cơ sở dữ liệu MySQL: phần này giải thích làm thế nào để cậpnhật hồ sơ hiện có vào cơ sở dữ liệu MySQL bằng cách sử dụng PHP
Xóa dữ liệu từ cơ sở dữ liệu MySQL: phần này giải thích làm thế nào để xóahoặc tẩy hồ sơ hiện từ cơ sở dữ liệu MySQL bằng cách sử dụng PHP [6]
Trang 22Chương 3: PHÂN TÍCH THIẾT KẾ HỆ THỐNG
3.1 Phân tích tác nhân và chức năng
3.1.2.3 Sinh viên
Sinh viên thực hiện việc đăng nhập vào hệ thống với tài khoản trường cung cấp
và đăng ký tham gia các sự kiện để tích luỹ điểm rèn luyện Ngoài ra sinh viên có thểtìm kiếm sự kiện, cập nhật thông tin cá nhân và xem danh sách tham gia hoạt động sựkiện
3.1.2.4 Quản trị viên
Cũng như giáo viên và sinh viên, người quản trị viên cần phải đăng nhập vào
hệ thống Ở đây quản trị viên có thể quản lý loại sự kiện, quản lý sự kiện, duyệt sựkiện, hỗ trợ điểm danh Người quản trị viên có thể xem thông tin của giáo viên, sinhviên
bao gồm họ tên, số điện thoại, thư điển tử, ngoài ra quản trị viên có thể quản lý vàphân quyền các tài khoản
3.1.3 Chức năng của các tác nhân
3.1.3.1 Khách vãn lai
Xem thông tin sự kiện
Trang 23 Cập nhật thông tin sự kiện.
Xem chi tiết thông tin sự kiện
Đăng ký tham gia sự kiện
Huỷ đăng ký tham gia sự kiện
Xem chi tiết thông tin sự kiện
Xem danh sách hoạt động
Duyệt bài tổ chức sự kiện
Hỗ trợ điểm danh sinh viên tham gia sự kiện
Quản lý tài khoản người dùng
Phân quyền
Trang 243.2 Thiết kế sơ đồ Usecase
Hình 3.1 Sơ đồ Usecase
3.3 Thiết kế sơ đồ phân rã Usecase
3.3.1 Actor Giáo viên
Hình 3.2 Sơ đồ phân rã Usecae của tác nhân Giáo viên
3.3.2.
Trang 253.3.3 Ator Sinh viên
Hình 3.3 Sơ đồ phân rã Usecase tác nhân Sinh viên
3.3.4 Actor Quản trị viên
Trang 263.4 Thiết kế sơ đồ hoạt động
3.4.1 Actor Giáo viên
3.4.1.1 Usecase Đăng ký tổ chức sự kiện
Hình 3.5 Sơ đồ hoạt động cho Usecase Đăng ký tổ chức sự kiện của Giáo viên
3.4.1.2 Usecase Cập nhật thông tin sự kiện
Hình 3.6 Sơ đồ hoạt động cho Usecase Cập nhật thông tin sự kiện của Giáo viên
Trang 273.4.1.3 Usecase Cập nhật thông tin cá nhân
Trang 283.4.2 Actor Sinh viên
3.4.2.1 Usecase Lấy lại mật khẩu
Hình 3.8 Sơ đồ hoạt động cho Usecase Lấy lại mật khẩu của Sinh viên
Trang 293.4.2.2 Usecase Cập nhật thông tin cá nhân
Trang 303.4.2.3 Usecase Đăng ký tham gia sự kiện
Hình 3.10 Sơ đồ hoạt động cho Usecase Đăng ký tham gia sự kiện của Sinh viên
Trang 313.4.2.4 Usecase Huỷ đăng ký tham gia sự kiện
Hình 3.11 Sơ đồ hoạt động cho Usecase Huỷ đăng ký tham gia sự kiện của Sinh viên
3.4.3 Actor Quản trị viên
3.4.3.1 Usecase Quản lý Loại sự kiện
Trang 323.4.3.2 Usecase Quản lý sự kiện
Hình 3.13 Sơ đồ hoạt động cho Usecase Quản lý sự kiện của Quản trị viên
Trang 333.4.3.3 Usecase Duyệt sự kiện
Hình 3.14 Sơ đồ hoạt động quản lý kiểu thành phần đồng phục của Quản trị viên
Trang 343.4.3.4 Usecase Điểm danh sinh viên tham gia sự kiện
Hình 3.15 Sơ đồ hoạt động cho Usecase Điểm danh của Quản trị viên
Trang 353.4.3.5 Usecase Quản lý tài khoản
Hình 3.16 Sơ đồ hoạt động cho Usecase Quản lý tài khoản của Quản trị viên
3.4.3.6 Usecase Phân quyền
Trang 363.4.3.7 Usecase Thống kê
Hình 3.18 Sơ đồ hoạt động cho Usecase Thống kê của Quản trị viên
3.5 Thiết kế sơ đồ ERD
Hình 3.19 Sơ đồ ERD