Ngày nay, với sự phát triển nhanh chóng của khoa học kỹ thuật, con người đã đạt
được nhiều thành tựu trên mọi lĩnh vực góp phần không nhỏ cải thiện đời sống của
nhân loại. Tuy nhiên con người cũng đang phải đối mặt với một khó khăn mới về số
lượng thông tin quá lớn, sự bùng nổ về số lượng dữ liệu, dẫn đến việc chọn lọc thông
tin, tìm kiếm dữ liệu là một vấn đề hết sức khó khăn. Để giải quyết vấn đề này, con
người đã sử dụng “cơ sở dữ liệu” để quản lý lưu trữ thông tin, giúp con người quản lý,
chọn lọc và tìm kiếm thông tin nhanh nhất có thể. Hiện nay, trên thế giới đã có nhiều
các hệ quản trị cơ sở dữ liệu hay các phần mềm lưu trữ, quản lý phân tích dữ liệu khác
nhau, và tập trung vào các dữ liệu về đời sống xã hội, kinh tế, chính trị, văn hóa, và
một số ngành khoa học. Vì vậy, các thông tin liên quan đến cơ sở dữ liệu là một điều
vô cùng quan trọng. Không những thế, với sự phát triển vượt bậc của công nghệ thông
tin và truyền thông, với nhu cầu ngày càng tăng về thông tin, phương thức học tập
truyền thống và học tập điện tử đã kết hợp với nhau và đang được quan tâm phát triển.
Hình thức E–learning đã và đang được quan tâm, chú ý tại nhiều cơ sở giáo dục và đào
tạo.
Học phần CSDL2 là học phần cung cấp cho sinh viên kiến thức, phương pháp để
xây dựng và khai thác cơ sở dữ liệu trên ngôn ngữ truy vấn có cấu trúc SQL như tạo
lập CSDL, cập nhật, truy vấn CSDL và một số các thao tác lập trình cơ bản để khai
thác CSDL Do vậy nếu chỉ giảng dạy và minh họa theo phương pháp giảng giải
truyền thống mà không kết hợp với hệ thống demo thì sinh viên rất khó hình dung
được thực tế các câu lệnh được thực thi và kết quả hiển thị như thế nào.
53 trang |
Chia sẻ: Trịnh Thiết | Ngày: 05/04/2024 | Lượt xem: 529 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Luận văn Nghiên cứu ứng dụng PHP và MySQL trong giảng dạy và học tập học phần cơ sở dữ liệu 2, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC THƯƠNG MẠI
----------
BÁO CÁO NGHIÊN CỨU KH&CN CẤP TRƯỜNG
ĐỀ TÀI: NGHIÊN CỨU ỨNG DỤNG PHP VÀ MYSQL
TRONG GIẢNG DẠY VÀ HỌC TẬP HỌC PHẦN
CƠ SỞ DỮ LIỆU 2
MÃ SỐ: CS16 - 06
¬
Hà Nội - 2017
Chủ nhiệm đề tài: ThS. Nghiêm Thị Lịch
Bộ môn: Tin học
2
MỤC LỤC
DANH MỤC HÌNH VẼ .......................................................................................................................................... 3
DANH MỤC BẢNG BIỂU ..................................................................................................................................... 3
DANH MỤC TỪ VIẾT TẮT .................................................................................................................................. 4
CHƯƠNG I. TỔNG QUAN NGHIÊN CỨU VỀ ĐỀ TÀI ...................................................................................... 5
1.1. Tính cấp thiết nghiên cứu của đề tài ............................................................................................................. 5
1.2. Tổng quan về đề tài nghiên cứu .................................................................................................................... 6
1.3. Mục tiêu nghiên cứu ..................................................................................................................................... 8
1.4. Đối tượng và phạm vi nghiên cứu ................................................................................................................ 8
1.5. Phương pháp nghiên cứu .............................................................................................................................. 8
1.6. Kết cấu báo cáo nghiên cứu .......................................................................................................................... 9
CHƯƠNG 2: LÝ THUYẾT VỀ CÁC ỨNG DỤNG TRÊN NỀN WEB .............................................................. 10
2.1. Một số khái niệm cơ bản ............................................................................................................................ 10
2.1.1. Tên miền .............................................................................................................................................. 10
2.1.2. Băng thông .......................................................................................................................................... 12
2.2. Cấu hình và cài đặt các ứng dụng trên nền web ................................................................................... 13
2.2.1. Webservers Apache ............................................................................................................................. 13
2.2.2. Ngôn ngữ lập trình web PHP .............................................................................................................. 15
2.2.3. Hệ quản trị cơ sở dữ liệu MySQL ........................................................................................................ 16
2.3. Các công cụ hỗ trợ xây dựng ứng dụng web .............................................................................................. 16
2.3.1. Các bộ Editors ..................................................................................................................................... 16
2.3.2. Các gói tích hợp .................................................................................................................................. 18
CHƯƠNG 3: TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU, PHP VÀ MYSQL .............................................................. 21
3.1. Tổng quan về cơ sở dữ liệu ........................................................................................................................ 21
3.1.1. Cơ sở dữ liệu ....................................................................................................................................... 21
3.1.2. Hệ quản trị CSDL ................................................................................................................................ 21
3.1.3. Hệ cơ sở dữ liệu ................................................................................................................................... 22
3.2. Ngôn ngữ lập trình web PHP ...................................................................................................................... 22
3.2.1. Giới thiệu ............................................................................................................................................. 22
3.2.2. Cấu trúc cơ bản ................................................................................................................................... 23
3.3. Hệ quản trị cơ sở dữ liệu MySQL .............................................................................................................. 23
3.3.1. Loại dữ liệu trong MySQL ................................................................................................................... 24
3.3.2. Các cú pháp cơ bản ............................................................................................................................. 25
3.3.3. Mối liên hệ giữa PHP và MySQL ........................................................................................................ 28
CHƯƠNG 4: ỨNG DỤNG PHP VÀ MYSQL ĐỂ XÂY DỰNG WEBSITE HỖ TRỢ GIẢNG DẠY VÀ HỌC
TẬP HỌC PHẦN CSDL2 ..................................................................................................................................... 30
4.1. Mục tiêu của website .................................................................................................................................. 30
4.1.1. Chức năng dành cho khách ................................................................................................................. 30
4.1.2. Chức năng dành cho thành viên .......................................................................................................... 30
4.1.3. Chức năng dành cho người quản lý ..................................................................................................... 30
4.2. Phân tích hệ thống ...................................................................................................................................... 31
4.2.1. Biểu đồ phân cấp chức năng ............................................................................................................... 31
4.2.2. Biểu đồ luồng dữ liệu........................................................................................................................... 32
4.2.3. Mô hình thực thể liên kết ..................................................................................................................... 35
4.3. Thiết kế hệ thống ........................................................................................................................................ 35
4.3.1. Thiết kế tổng thể .................................................................................................................................. 35
4.3.2. Thiết kế chi tiết .................................................................................................................................... 36
4.4. Mã hóa, cài đặt và thử nghiệm hệ thống ..................................................................................................... 49
KẾT LUẬN ........................................................................................................................................................... 51
TÀI LIỆU THAM KHẢO ..................................................................................................................................... 52
3
DANH MỤC HÌNH VẼ
Hình 1: Ví dụ về cấu trúc phân cấp tên miền ................................................................ 10
Hình 2: Cách thức hoạt động của PHP .......................................................................... 15
Hình 3: Công cụ thiết kế web Dreamweaver................................................................. 17
Hình 4: Công cụ web Phpdesigner ................................................................................ 17
Hình 5: Công cụ web Eclipse ........................................................................................ 18
Hình 6: Hệ cơ sở dữ liệu ................................................................................................ 22
Hình 7: Biểu đồ phân cấp chức năng ............................................................................. 31
Hình 8: Biểu đồ luồng dữ liệu mức ngữ cảnh ............................................................... 32
Hình 10: Biểu đồ luồng dữ liệu mức dưới đỉnh của chức năng QL NSD ..................... 33
Hình 11: Biểu đồ luồng dữ liệu mức dưới đỉnh của chức năng QL chuyên mục .......... 33
Hình 12: Biểu đồ luồng dữ liệu mức dưới đỉnh của chức năng QL bài viết ................. 34
Hình 13: Biểu đồ luồng dữ liệu mức dưới đỉnh của chức năng QL cuộc thi ................ 34
Hình 14: Biểu đồ luồng dữ liệu mức dưới đỉnh của chức năng QL tiện ích ................. 35
Hình 17: Mô hình quan hệ sau khi được chuẩn hóa ...................................................... 37
DANH MỤC BẢNG BIỂU
Bảng 1: Một số Webserver thông dụng ......................................................................... 13
Bảng 2: Một số kiểu dữ liệu cơ bản trong MySQL ....................................................... 24
4
DANH MỤC TỪ VIẾT TẮT
1. DANH MỤC TỪ VIẾT TẮT TIẾNG VIỆT
STT Từ viết tắt Cụm từ đầy đủ
1 CSDL Cơ sở dữ liệu
2 HQT CSDL Hệ quản trị cơ sở dữ liệu
3 HTTT KT &TMĐT
Hệ thống thông tin kinh tế
và thương mại điện tử
4 NSD Người sử dụng
2. DANH MỤC TỪ VIẾT TẮT TIẾNG ANH
STT Từ viết tắt Cụm từ đầy đủ Nghĩa Tiếng Việt
1 ER Entity Relationship Thực thể liên kết
2 NF Normal Form Dạng chuẩn
5 SQL Structured Query Language
Ngôn ngữ truy vấn có cấu
trúc
5
CHƯƠNG I. TỔNG QUAN NGHIÊN CỨU VỀ ĐỀ TÀI
1.1. Tính cấp thiết nghiên cứu của đề tài
Ngày nay, với sự phát triển nhanh chóng của khoa học kỹ thuật, con người đã đạt
được nhiều thành tựu trên mọi lĩnh vực góp phần không nhỏ cải thiện đời sống của
nhân loại. Tuy nhiên con người cũng đang phải đối mặt với một khó khăn mới về số
lượng thông tin quá lớn, sự bùng nổ về số lượng dữ liệu, dẫn đến việc chọn lọc thông
tin, tìm kiếm dữ liệu là một vấn đề hết sức khó khăn. Để giải quyết vấn đề này, con
người đã sử dụng “cơ sở dữ liệu” để quản lý lưu trữ thông tin, giúp con người quản lý,
chọn lọc và tìm kiếm thông tin nhanh nhất có thể. Hiện nay, trên thế giới đã có nhiều
các hệ quản trị cơ sở dữ liệu hay các phần mềm lưu trữ, quản lý phân tích dữ liệu khác
nhau, và tập trung vào các dữ liệu về đời sống xã hội, kinh tế, chính trị, văn hóa, và
một số ngành khoa học. Vì vậy, các thông tin liên quan đến cơ sở dữ liệu là một điều
vô cùng quan trọng. Không những thế, với sự phát triển vượt bậc của công nghệ thông
tin và truyền thông, với nhu cầu ngày càng tăng về thông tin, phương thức học tập
truyền thống và học tập điện tử đã kết hợp với nhau và đang được quan tâm phát triển.
Hình thức E–learning đã và đang được quan tâm, chú ý tại nhiều cơ sở giáo dục và đào
tạo.
Học phần CSDL2 là học phần cung cấp cho sinh viên kiến thức, phương pháp để
xây dựng và khai thác cơ sở dữ liệu trên ngôn ngữ truy vấn có cấu trúc SQL như tạo
lập CSDL, cập nhật, truy vấn CSDL và một số các thao tác lập trình cơ bản để khai
thác CSDLDo vậy nếu chỉ giảng dạy và minh họa theo phương pháp giảng giải
truyền thống mà không kết hợp với hệ thống demo thì sinh viên rất khó hình dung
được thực tế các câu lệnh được thực thi và kết quả hiển thị như thế nào.
Xét tình hình thực tế hiện nay, trong trường Đại học Thương mại, đối với học
phần CSDL2 cũng như đối với một số học phần khác, giáo viên giảng dạy đã có bài
giảng điện tử, tài liệu học tập cho sinh viên nhưng mới dừng ở việc sử dụng khi lên lớp
và trao đổi với sinh viên và đưa lên mạng thông qua Email và trang Web cá nhân.
Song việc trao đổi giữa giáo viên và sinh viên, sinh viên với sinh viên còn hạn chế,
không đồng bộ thống nhất tập trung. Mặt khác, học phần CSDL2 là một học phần trừu
tượng, đặc biệt với đối tượng sinh viên chuyên ngành Quản trị hệ thống thông tin khi
vừa phải kết hợp các kiến thức kinh tế và các kiến thức về lĩnh vực chuyên về công
nghệ thông tin. Ngoài ra danh mục từ điển các thuật ngữ chuyên ngành hầu như chưa
có, sinh viên chỉ có thể tra cứu thông qua từ điển tiếng anh thông thường nên với mỗi
cách tra cứu khác nhau có thể cùng một thuật ngữ nhưng có thể nhiều sinh viên sẽ tra
ra nhiều nghĩa khác nhau nên nghĩa không thống nhất, tập trung. Do vậy tính ứng dụng
thực tế của học phần cần được minh họa cụ thể trong mỗi thao tác của câu lệnh và cần
phải có một danh mục thuật ngữ chuẩn để dùng chung hoặc sinh viên có thể đưa ra các
ý hiểu của mình về thuật ngữ đó, sau đó hệ thống sẽ tổng hợp lại và đưa ra các kiến
thức chung nhất về thuật ngữ đó.
Hiện nay có rất nhiều ngôn ngữ lập trình thực hiện các nhiệm vụ cụ thể và độc
đáo khác nhau. Mỗi ngôn ngữ lập trình đều có một bộ thiết lập các từ khóa và cú pháp
6
riêng biệt để tổ chức các chương trình lệnh. Trong đó PHP là một sản phẩm mã nguồn
mở miễn phí có thể được cài đặt trên hầu hết các Web Server thông dụng hiện nay như
Apache, IISViệc cập nhật các bản vá lỗi phiên bản hiện tại cũng như thử nghiệm các
phiên bản mới khiến PHP rất linh hoạt trong việc hoàn thiện. Ngoài ra thư viện của
PHP rất phong phú và đa dạng từ một đoạn code đến một chương trình hoàn chỉnh nên
việc học tập và ứng dụng PHP trở nên rất dễ dàng và nhanh chóng. Đây cũng chính là
đặc điểm khiến PHP trở nên khá nổi bật và cũng là nguyên nhân vì sao ngày càng có
nhiều người sử dụng PHP để phát triển web. Thêm vào đó, PHP còn hỗ trợ kết nối
nhiều hệ quản trị CSDL MySQL, MS SQL, Oracle, Cassandracùng với sự bảo mật
PHP khá là an toàn.
Từ tình hình thực tế và nhu cầu đó, việc nghiên cứu và ứng dụng một mô hình
giảng dạy hợp lý như xây dựng website tương tác cho học phần CSDL2 là rất cần thiết
nhằm hỗ trợ việc học tập cho sinh viên học các học phần nói chung và học phần
CSDL2 nói riêng để đạt hiệu quả tốt nhất. Mô hình cần đảm bảo sự đồng bộ trong quá
trình tương tác giữa giáo viên – giáo viên, giáo viên – sinh viên, sinh viên – sinh viên,
cung cấp một cách nhìn trực quan khi thực hiện các thao tác khi khai thác CSDL với
SQL.
1.2. Tổng quan về đề tài nghiên cứu
Trước sự phát triển như vũ bão của công nghệ thông tin và truyền thông, công
nghệ thông tin ngày càng khẳng định vị trí, vai trò quan trọng của mình. Nó thâm nhập
vào tất cả lĩnh vực của đời sống, từ chính trị, kinh tế, khoa học kĩ thuật, đến y tế, giáo
dục, nhu cầu vui chơi, giải trí của con người, và có những ảnh hưởng nhất định.
Hiện nay, ở nhiều nước trên thế giới môi trường học đường, nhà trường đã và
đang sử dụng công nghệ thông tin như một phương tiện để nâng cao hiệu quả dạy và
học. Các website của trường, khoa, tổ bộ môn hay các phần mềm mô phỏng các học
phần đã tạo ra môi trường trao đổi tri thức cực kỳ thuận tiện và hiệu quả. Người dạy và
người học đồng thời có thể tiết kiệm thời gian, công sức lẫn tiền của; ngoài ra người
học lại có thể học tập một cách chủ động, tích cực, học mọi nơi, mọi lúc.
Nghiên cứu của Andreea Ionescu [1] đã trình bày một phương pháp học tập điện
tử mới sử dụng cơ sở dữ liệu và hệ thống CNTT tích hợp bao gồm máy chủ với phần
mềm chuyên dụng dựa trên ngôn ngữ PHP, AJAX và hệ quản trị CSDL MySQL. Hệ
thống có ưu điểm là cho phép để sinh viên phát triển lịch trình kế hoạch học tập của
mình và sắp xếp thời gian rảnh rỗi của họ để họ có thể học từ bất cứ nơi nào thông qua
Internet thông qua công nghệ web, HTML, PHP, AJAX và MySQL. Nhưng điểm hạn
chế của nghiên cứu là không giới thiệu chi tiết PHP và MySQL mà chỉ coi đây là bộ
công cụ phục vụ cho quá trình học tập điện tử.
Đối với học phần đặc thù về công nghệ thông tin là công nghệ đa phương tiện,
Hadi sutopo [2] giải pháp là tạo ra một kịch bản PHP để truyền giá trị biến từ Flash
sang cơ sở dữ liệu MySQL. Nghiên cứu này nhằm mục đích phát triển ứng dụng đa
phương tiện đặc biệt trong trò chơi, với lưu trữ dữ liệu trong cơ sở dữ liệu MySQL
bằng cách giáo viên đưa ra các tài liệu học tập, sinh viên nghiên cứu và phát triển ứng
7
dụng từ các tài liệu học tập đã cho. Tuy nhiên nghiên cứu chưa đưa ra những ưu việt
của PHP và MySQL trong việc nâng cao chất lượng giảng dạy và học tập mà mục đích
chính là chỉ sử dụng công nghệ này vào việc phát triển các ứng dụng đa phương tiện.
Ngoài việc ứng dụng trong các học phần thiên về CNTT, thì PHP và MySQL còn
được ứng dụng trong các học phần khác như Toán học. Theo nghiên cứu của nhóm tác
giả Abiola O.B, Adeyemo O.A, Olatunji K.A [3] cho rằng quá trình thúc đẩy người
học học toán học là một điều đặc biệt khó khăn đặc biệt khi chỉ giảng dạy theo phương
thức truyền thống. Nghiên cứu đã vận dụng các phương pháp giảng dạy tích cực và có
sử dụng thành công công nghệ PHP và MySQL để tác động tích cực học sinh trong
học tập của toán học trong trường phổ thông. Ưu điểm của nghiên cứu là đã cung cấp
một nền tảng thân thiện với người sử dụng mà có thể được truy cập bởi cả học sinh và
giáo viên; học sinh có thể tự chọn nội dung kiến thức và tiến độ học phù hợp. Tuy
nhiên nghiên cứu cũng có hạn chế đó là chỉ áp dụng trong lĩnh vực toán học mà không
đưa ra một mô hình dùng chung cho các môn khác.
Hiện tại, trường Đại học Thương Mại và khoa HTTT KT & TMĐT của trường
cũng như một số trường đại học khác trên cả nước đã xây dựng những website riêng
nhằm quảng bá, giới thiệu chương trình đào tạo cũng như tạo ra môi trường trao đổi,
học tập, nghiên cứu thuận tiện cho thầy và trò trong nhà trường, trong khoa và giữa
những người quan tâm đến tri thức tin học nói chung. Tuy nhiên, đối với một số các
học phần liên quan tới CNTT có các đặc thù riêng có rất ít (hoặc có trường không có)
các ứng dụng mô phỏng cách thức tổ chức dữ liệu cũng như truy vấn thông tin liên
quan đến nội dung học phần và đặc biệt là việc vận dụng PHP và MySQL trong hoạt
động giảng dạy còn nhiều hạn chế.
Những điều này cho thấy tình hình nghiên cứu và xây dựng các ứng dụng hỗ trợ
việc giảng dạy và học tập nhằm phổ biến nội dung học phần, cung cấp môi trường trao
đổi thuận tiện giữa thầy và trò và giữa những người quan tâm đến các học phần nói
chung đang được quan tâm ở Việt Nam.
Theo nhóm nghiên cứu [4] đã trình bày ứng dụng công nghệ Moodle và chuẩn
SCORM trong việc hỗ trợ đào tạo theo học chế tín chỉ tại Khoa Công nghệ thông tin
và truyền thông, Đại học Cần Thơ như đã xây dựng được các công cụ tích hợp vào nền
cho hệ thống E-learning như đề xuất cấu trúc bài giảng điện tử và ma trận kiến thức
đáp ứng yêu cầu
Nhóm nghiên cứu [5] sử dụng Moodle giúp giải quyết các vấn đề sau: hỗ trợ tốt
cho giảng viên làm công cụ thiết lập linh động các hoạt động như diễn đàn, chat, chia
nhóm hoạt động, trao đổi, làm bài tập lớn, đặc biệt là đánh giá kết quả học tập của
sinh viên qua hình thức trắc nghiệm một cách hiệu quả.
Ưu điểm của các nghiên cứu là đã tạo ra một trang web học điện thử thuận lợi
cho cả người học, người dạy và nhà quản lý. Tuy nhiên hạn chế của các nghiên cứu là
khi sử dụng công nghệ Moodle thì các bài giảng hoặc bài kiểm tra, cần được đưa lên
thì tất cả các nguồn đó phải được đóng gói theo một chuẩn nhất định, nếu không hệ
8
thống sẽ không đưa lên được và website bị hạn chế do giao diện chỉ được lựa chọn
theo tiêu chuẩn của Moodle.
1.3. Mục tiêu nghiên cứu
Về mục tiêu nghiên cứu của đề tài, đề tài sử dụng ngôn ngữ PHP và hệ quản trị
CSDL MySQL để xây dựng website cho học phần CSDL2 vớ