- Sử dụng ngôn ngữ PHP và hệ quản trị CSDL MySQL để xây dựngwebsite giới thiệu điểm du lịch đền Gióng, Sóc Sơn, Hà Nội... - Phạm vi nghiên cứu của đề tài là xây dựng website giới thiệu đ
Trang 1TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2 VIỆN CÔNG NGHỆ THÔNG TIN
NGUYỄN THỊ THU HUYỀN
XÂY DỰNG WEBSITE GIỚI THIỆU ĐIỂM
DU LỊCH ĐỀN GIÓNG, SÓC SƠN, HÀ NỘI
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC
Chuyên ngành: Sư phạm Tin học
HÀ NỘI, 2018
Trang 2TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2 VIỆN CÔNG NGHỆ THÔNG TIN
NGUYỄN THỊ THU HUYỀN
XÂY DỰNG WEBSITE GIỚI THIỆU ĐIỂM
DU LỊCH ĐỀN GIÓNG, SÓC SƠN, HÀ NỘI
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC
Chuyên ngành: Sư phạm Tin học
Người hướng dẫn khoa học
ThS Nguyễn Thị Loan
HÀ NỘI, 2018
Trang 3LỜI CẢM ƠN Lời đầu tiên em xin bày tỏ lòng biết ơn sâu sắc tới ThS Nguyễn Thị Loan
đã tận tình giúp đỡ, chỉ bảo em trong suốt quá trình học tập và làm khóa luận
Em xin bày tỏ lòng biết ơn tới các thầy, cô giáo trong Viện Công nghệThông tin – Trường Đại học Sư phạm Hà Nội 2 đã chỉ dẫn chúng em và luôn tạođiều kiện tốt nhất cho chúng em học tập trong suốt quá trình học đại học
Tôi xin cảm ơn các bạn sinh viên lớp K40A - Sư phạm Tin học đã giúp đỡ,động viên tôi trong suốt 4 năm học tại trường
Cuối cùng con xin gửi lời cảm ơn tới gia đình, những người thân yêu đãđộng viên, luôn sát bên con trong suốt quãng thời gian qua
Hà Nội, ngày 29 tháng 4 năm 2018
Sinh viên
Nguyễn Thị Thu Huyền
Trang 4LỜI CAM ĐOAN
Tôi xin cam đoan đây là kết quả nghiên cứu của riêng tôi Nội dung nghiêncứu và kết quả trong khóa luận hoàn toàn trung thực, không sao chép ở đâu, vàchưa từng được ai công bố trong bất kì công trình nghiên cứu nào trước đây Cáctài liệu tham khảo có nguồn gốc, xuất xứ rõ ràng
Người cam đoan
Nguyễn Thị Thu Huyền
Trang 5MỤC LỤC
Trang
Trang 6LỜI CẢM ƠN 2
LỜI CAM ĐOAN 3
DANH MỤC TỪ VIẾT TẮT 6
MỞ ĐẦU 1
CHƯƠNG 1: CƠ SỞ LÍ THUYẾT 4
1.1 Ngôn ngữ PHP 4
1.1.1 Tổng quan 4
1.1.2 Biến, hằng, chuỗi và các kiểu dữ liệu 5
1.1.3 Toán tử và biểu thức 6
1.1.4 Mảng trong PHP 9
1.1.5 Hàm và gọi lại hàm 9
1.1.6 Làm việc với chuỗi 10
1.2 Hệ quản trị cơ sở dữ liệu MySQL 12
1.2.1 Cách khởi động và sử dụng 12
1.3.2 Một số định nghĩa cơ bản 12
1.3 PHP và MySQL 14
CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 15
2.1 Giới thiệu bài toán 15
2.2 Phân tích và thiết kế hệ thống 15
2.2.1 Khảo sát hệ thống 15
2.2.2 Yêu cầu hệ thống 16
2.2.3 Phân tích hệ thống 17
Trang 72.2.4 Thiết kế hệ thống 22
CHƯƠNG 3: XÂY DỰNG WEBSITE GIỚI THIỆU ĐIỂM DU LỊCH ĐỀN GIÓNG, GIÓNG SƠN, HÀ NỘI 27
3.1 Giới thiệu về Đền Gióng 27
3.2 Cài đặt 27
3.3 Thử nghiệm 28
3.3.1 Các chức năng cơ bản cung cấp cho người dùng 28
3.3.2 Các chức năng cơ bản cung cấp cho người người quản trị 30
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 44
PHỤ LỤC 45
TÀI LIỆU THAM KHẢO 58
Trang 8DANH MỤC TỪ VIẾT TẮT
QoS Quality of Service - Chất lượng dịch vụ
Trang 9DANH MỤC BẢNG BIỂU
Bảng 1: Các kiểu dữ liệu trong PHP 6
Bảng 2: Các phép toán số học trong PHP 6
Bảng 3: Các phép so sánh cơ bản trong PHP 7
Bảng 4: Các toán tử logic trong PHP 7
Bảng 5: Một số phép toán kết hợp trong PHP 8
Bảng 6: Vòng lặp trong PHP 8
Bảng 7: Kí tự đặc biệt trong PHP 11
Bảng 8: Các kiểu dữ liệu trong MySQL 13
Bảng 9: Danh sách thuộc tính bảng đặt tour 23
Bảng 10: Danh sách thuộc tính bảng admin 23
Bảng 11: Danh sách thuộc tính bảng khách sạn 24
Bảng 12: Danh sách thuộc tính bảng số ngày tour 24
Trang 10DANH MỤC HÌNH ẢNH
Hình 1: Giao diện chính website 31
Hình 2: Giao diện của phần Lịch sử 32
Hình 3: Giao diện của phần Kiến trúc 33
Hình 4: Giao diện của phần Ẩm thực 34
Hình 5: Giao diện của phần Lễ hội 35
Hình 6: Giao diện của phần Đặt tour 36
Hình 7: Giao diện thông tin của tour du lịch (2 ngày) 37
Hình 8: Giao diện hộp thoại thông tin đặt tour dành cho người dùng 38
Hình 9: Giao diện của phần Quy tắc ứng xử 39
Hình 10: Giao diện của phần Cẩm nang du lịch 40
Hình 11: Giao diện cập nhật, xử lí các tour dành cho người quản trị 41
Hình 12: Giao diện cập nhật, xử lí các cuộc trò chuyện cho người quản trị 42
Trang 11DANH MỤC SƠ ĐỒ
Sơ đồ 1: Sơ đồ chức năng tìm kiếm thông tin của người dùng 19
Sơ đồ 2: Quy trình tìm kiếm thông tin của người dùng 19
Sơ đồ 3: Quy trình đăng kí thông tin người dùng 19
Sơ đồ 4: Quy trình đăng nhập của người dùng 20
Sơ đồ 5: Quy trình phản hồi ý kiến của người dùng 20
Sơ đồ 6: Quy trình chat với admin của người dùng 20
Sơ đồ 7: Quy trình tìm kiếm thông tin tour du lịch của người dùng 21
Sơ đồ 8: Quy trình đặt tour của người dùng 21
Sơ đồ 9: Quy trình cập nhật CSDL của người quản trị 21
Sơ đồ 10: Quy trình xóa dữ liệu khỏi CSDL của người quản trị 22
Sơ đồ 11: Quy trình chat với khách hàng của người quản trị 22
Sơ đồ 12: Quy trình tiếp nhận tour du lịch của người quản trị 22
Trang 12DANH MỤC BIỂU ĐỒ
Biểu đồ 1: Biểu đồ phân cấp chức năng hệ thống 17Biểu đồ 2: Biểu đồ phân cấp chức năng giới thiệu điểm du lịch 18Biểu đồ 3: Biểu đồ phân cấp chức năng quản lí hệ thống 18B
i ể u đ ồ 4 : B i ểu đ ồ lu ồ n g d ữ li ệ u h ệ th ố n g 25 B
i ể u đ ồ 5 : B i ểu đ ồ lu ồ n g d ữ li ệ u c h ứ c n ă n g g i ớ i t h i ệ u đ i ểm du l ị c h 25 B
i ể u đ ồ 6 : B i ểu đ ồ lu ồ n g d ữ li ệ u c h ứ c n ă n g đ ặ t t o u r 26
Trang 131 Lý do chọn đề tài
MỞ ĐẦU
Trang 14Trước đây các loại hình báo chí truyền thống như báo in, phát thanh,truyền hình luôn có sự độc lập tương đối với nhau với những đặc thù và thếmạnh riêng với các thông tin được truyền tải mang tính chất đơn nhất về hìnhthức thể hiện nên người dùng chỉ có thể được tiếp cận thông tin bằng cách đọc,nghe hoặc xem Sự bùng nổ của internet đã tác động mạnh mẽ đến đời sống xãhội và ảnh hưởng sâu sắc đến sự phát triển của hệ thống truyền thông nói chung
Và với sự ra đời của báo điện tử (báo mạng), thông tin được cung cấp chongười dùng theo hình thức sinh động, hấp dẫn hơn Sự truyền tải một thông điệpbằng sự kết hợp của các loại hình ngôn ngữ viết, ảnh, video, âm thanh vàcác hình thức thể hiện đa diện góp phần tạo nên một bức tranh toàn cảnh đầy đủthông tin và có sức thuyết phục cao giúp người dùng được tiếp nhận thông tinbằng cách thoả mãn các giác quan khác nhau, tạo nên hiệu ứng tương tác mạnh
mẽ nhất so với các loại hình truyền thông truyền thống
Trong luận văn này tôi xin trình bày về xây dựng website giới thiệu điểm
du lịch đền Gióng, Sóc Sơn, Hà Nội để tạo ra một môi trường đầy đủ thông tin
và sinh động phục vụ cho nhu cầu thu thập thông tin, tìm hiểu điểm du lịch củangười dùng
2 Mục đích nghiên cứu
- Cơ sở lí thuyết về ngôn ngữ PHP và hệ quản trị CSDL MySQL
- Xây dựng website giới thiệu điểm du lịch đền Gióng, Sóc Sơn, Hà Nội
3 Nhiệm vụ nghiên cứu
- Những vấn đề tổng quan của ngôn ngữ PHP và hệ quản trị CSDLMySQL
- Tìm hiểu về đền Gióng, Sóc Sơn, Hà Nội
- Sử dụng ngôn ngữ PHP và hệ quản trị CSDL MySQL để xây dựngwebsite giới thiệu điểm du lịch đền Gióng, Sóc Sơn, Hà Nội
Trang 154 Đối tượng và phạm vi nghiên cứu
- Đối tượng nghiên cứu của đề tài là ngôn ngữ lập trình PHP và MySQL,website giới thiệu điểm du lịch đền Gióng
- Phạm vi nghiên cứu của đề tài là xây dựng website giới thiệu điểm dulịch đền Gióng sử dụng ngôn ngữ lập trình PHP và hệ quản trị CSDL MySQL
5 Ý nghĩa khoa học và thực tiễn của đề tài
- Ý nghĩa khoa học: Ngôn ngữ lập trình PHP và MySQL được nghiên cứu
sẽ trở thành một tài liệu tham khảo cho việc nghiên cứu và phát triển xây dựngwebsite
- Ý nghĩa thực tiễn: Website phục vụ cho các nhu cầu của người dùng,góp phần nâng cao chất lượng cuộc sống cho con người
6 Phương pháp nghiên cứu
- Phương pháp nghiên cứu lý luận
Nghiên cứu qua việc đọc sách báo các tài liệu liên quan nhằm xây dựng
cơ sở lý thuyết của khóa luận và các biện pháp cần thiết để giải quyết các vấn đềcủa khóa luận
- Phương pháp chuyên gia
Tham khảo ý kiến của các chuyên gia để xây dựng ứng dụng phù hợp vớiyêu cầu thực tiễn, nhận biết sai sót giúp kịp thời bổ sung, sửa chữa nhằm đápứng nhu cầu ngày càng cao của người sử dụng
- Phương pháp thực nghiệm
Thông qua quan sát, kiểm nghiệm thực tế, các yêu cầu của cơ sở, những
lý luận đã được nghiên cứu và kết quả đạt được qua những phương pháp trên
- Phương pháp phân tích và thiết kế hệ thống
Tìm hiểu, phân tích hệ thống để đi đến việc thiết kế hệ thống đó
7 Cấu trúc khóa luận
Ngoài lời cảm ơn, lời cam đoan, mở đầu, kết luận, hướng phát triển, tài liệu tham khảo, khóa luận có những nội dung sau:
Chương 1: Cơ sở lí thuyết
1.1 Ngôn ngữ PHP
Trang 161.2 Hệ quản trị cơ sở dữ liệu MySQL
1.3 PHP và MySQL
Chương 2: Phân tích và thiết kế hệ thống
2.1 Giới thiệu bài toán
Trang 171.1 Ngôn ngữ PHP
CHƯƠNG 1: CƠ SỞ LÍ THUYẾT
Trang 18PHP (Hypertext Preprocessor) là ngôn ngữ script trên server được thiết kế
để dễ dàng xây dựng các trang website động Mã PHP có thể thực thi trênWebserver để tạo ra mã HTML và xuất ra trình duyệt website theo yêu cầu củangười sử dụng
Ngôn ngữ PHP ra đời năm 1994 Rasmus Lerdorf sau đó được phát triểnbởi nhiều người trải qua nhiều phiên bản Có nhiều lí do khiến cho việc sử dụngngôn ngữ này chiếm ưu thế, một số lí do cơ bản là:
Trong PHP để kết thúc 1 dòng lệnh sử dụng dấu “;” Để chú thích 1 đoạn
dữ liệu nào đó trong PHP ta sử dụng dấu “//” cho từng dòng Hoặc dùng cặp thẻ
“/*…… */” cho từng cụm mã lệnh
Trang 19 Xuất dữ liệu ra trình duyệt
Để xuất dữ liệu ra trình duyệt, sử dụng dòng cú pháp sau:
- Echo “thông tin”;
- Printf “thông tin”;
Thông tin bao gồm: biến, chuỗi, hoặc lệnh HTML…
Nếu giữa hai chuỗi muốn liên kết với nhau sử dụng dấu “.”
1.1.2 Biến, hằng, chuỗi và các kiểu dữ liệu
Biến trong PHP
Biến được xem là vùng nhớ dữ liệu tạm thời, giá trị có thể thay đổi được.Biến được bắt đầu bởi kí hiệu “$”, theo sau chúng là 1 từ, 1 cụm từ nhưng phảiviết liền hoặc có gạch dưới
Một biến được xem là hợp lệ khi nó thỏa mãn các yếu tố:
Tên của biến phải bắt đầu bằng dấu gạch dưới và theo sau các kí tự, sốhay dấu gạch dưới
Tên của biến không được phép trùng với các từ khóa của PHP
Trong PHP để sử dụng 1 biến ta cần khai báo trước, tuy nhiên ta cũng cóthể vừa khai báo vừa gán dữ liệu cho biến Biến cũng có thể gắn cho các kiểu dữliệu khác, tùy theo ý định của người dùng mong muốn trên chúng
Hằng trong PHP
Hằng là cái không thể thay đổi được Hằng trong PHP được định nghĩa
bởi hàm define theo cú pháp: define (string tên_hằng, giá_trị_hằng).
Hằng được xem là hợp lệ nếu đáp ứng được 1 số yếu tố:
- Hằng không có dấu “$” ở trước tên
- Hằng có thể truy cập bất cứ vị trí nào trong mã lệnh
- Hằng chỉ được phép gán giá trị duy nhất 1 lần
- Hằng thường viết bằng chữ in để phân biệt với biến
Chuỗi trong PHP
Chuỗi là 1 nhóm các kí tự, số, khoảng trắng, dấu ngắt đặt trong các dấunháy
Trang 20Để tạo 1 biến chuối, phải gán giá trị chuỗi cho 1 biến hợp lệ Để liên kết 1chuỗi và 1 biến chúng ta thường sử dụng dấu “.”
Kiểu dữ liệu trong PHP
Các kiểu dữ liệu khác nhau chiếm lượng bộ nhớ khác nhau và có thể được
xử lí theo cách khác nhau khi chúng được thao tác trong 1 script
Trong PHP chúng ta có 6 kiểu dữ liệu chính như sau:
Bảng 1: Các kiểu dữ liệu trong PHP
Ta có bảng các phép toán số học như sau:
Trang 22toán
!= Không bằng Hai số hạng không bằng nhau $a !=5
= = = Đồng nhất Hai số bằng nhau và cùng kiểu $a= = =5
> Lớn hơn Vế trái lớn hơn vế phải $a > 5
>= Lớn hơn hoặc
bằng
Vế trái lớn hơn hoặc bằng vế phải $a >=5
< Nhỏ hơn Vế trái nhỏ hơn vế phải $a < 5
<= Nhỏ hơn hoặc
bằng
Vế trái nhỏ hơn hoặc bằng vế phải $a <=5
Trang 23 Toán tử logic
Bảng 3: Các phép so sánh cơ bản trong PHP
Toán tử logic là tổ hợp các giá trị Boolean
Ta có bảng các toán tử như sau:
|| Or Vế trái hoặc vế phải là True True || false True
Or Or Vế trái hoặc vế phải là True True || false True
Xor Xor Vế trái hoặc vế phải là True
nhưng không phải cả hai True || true False
&& And Vế trái và vế phải là True True && false FalseAnd And Vế trái và vế phải là True True && false False
Bảng 4: Các toán tử logic trong PHPNgoài ra, khi tạo mã PHP, ta thường nhận thấy cần tăng hay giảm lượng biếnmột số nguyên nào đó Bạn sẽ thường thực hiện điều này khi chúng ta đếm 1 giátrị nào đó trong vòng lặp
Trang 24+= $a+=$b Bằng với $a= $a + $b
Do …… while
Do{Hành động - thực thi} while (điều kiện)
For …… loop For (giá trị; điều kiện; biến tăng hoặc giảm){hành
động}
Switch
Switch (biến){
Case giá trị 1: hành động; break;
………
Case giá trị N: hành động; break;
Default: hành động; break;
}Bảng 6: Vòng lặp trong PHP
Trang 25 Khi chỉ số (index) là số:
Hàm sort (): sắp xếp giá trị tăng theo alphabetical, chỉ số bắt đầu từ 0
Khi chỉ số (index) là chuỗi:
Hàm assort (): giữ nguyên chỉ số chuỗi, chỉ sắp xếp trên giá trị chuỗi củachỉ số chuỗi tương ứng
Sắp xếp tăng dần theo chỉ số (index):
Hàm ksort (): Không có hàm sắp xếp giảm dần theo chỉ số (index), muốnsắp xếp như thế ta sử dụng hàm ksort (), rồi sử dụng hàm asort ()
Hàm sắp xếp theo quy định trước của người sử dụng:
- Chỉ liên quan đến giá trị tương ứng với chỉ số
- Chỉ liên quan đến việc sắp xếp chỉ số theo quy định trước bởi người sửdụng: ta sử dụng hàm uksort ()
- Hàm tạo dãy số nguyên ngẫu nhiên trong phạm vi từ a đến b
Trang 26Định nghĩa 1 hàm được xây dựng như sau:
Function tên_hàm (tham số 1, tham số 2, …)
{
Trang 27- Phần nội dung hàm nằm trong cặp dấu bao khối { }.
- Hàm sẽ nhận giá trị trả về thông qua phát biểu return giá trị
- Return; sẽ thoát khỏi hàm và không trả về giá trị nào
- Return biểuthức; sẽ thoát khỏi chương trình và trả về giá trị biểuthức.
- Hàm có thể đặt bất kì vị trí nào trong trang và chỉ được thi hành khi tathực hiện gọi hàm
Truyền các giá trị mặc định
Các hàm trong PHP có thể nhận các tham số mặc định Các tham số mặcđịnh khi định nghĩa hàm, chúng được gán giá trị $tham_số = giá_trị, các hàm cótham số mặc định nên chuyển các tham số mặc định sang phải
Function tên_hàm ($tham_số_1, $tham_số_2 = giátrị_2, $tham_số_3 =
giátrị_3)
Các tham số $tham_số_2 và $tham_số_3 là các giá trị mặc định Khi gọihàm, nếu ta chỉ truyền 1 giá trị cho hàm thì giá trị đó là của $tham_số_1 Cáctham số $tham_số_2 và $tham_số_3 nhận các giá trị là giátrị_2 và giátrị_3
1.1.6 Làm việc với chuỗi
Chuỗi được xác định theo 3 cách:
- Dấu nháy đơn
Trang 28- Dấu nháy kép.
- Heredoc (dấu <<<)
1.1.6.1 Phương thức nối chuỗi và kí tự đặc biệt trong PHP
Sử dụng dấu (.) để nối hai chuỗi với nhau thành một chuỗi dài hơn Để xử
lí những kí tự lạ trong chuỗi như dấu “ hay $, PHP cung cấp 1 phương thức xử líhiệu quả là thêm dấu “\” sau mỗi giá trị
Cú pháp: string substr (string source, int begin, int length);
Trả về 1 chuỗi con trong chuỗi cần lấy, đối số thứ 3 là tùy chọn, vị trí đầutiên của chuỗi được tính là vị trí 0
Hàm strlen (string tr): Xác định chiều dài của chuỗi.
Cú pháp: int strlen (string str);
Hàm thay đổi kiểu chữ:
Hàm strtoupper (): đổi chữ thường thành chữ hoa
Hàm strtolower (): đổi chữ hoa thành chữ thường
Hàm ucfirst (): đổi chữ in kí tự đầu tiên của câu
Hàm ucwords (): đổi chữ in kí tự đầu tiên của mỗi từ
Hàm so sánh chuỗi
Toán tử so sánh = = (bằng), !=, <, <=, >, >=, = = = để so sánh các chuỗi
- Sử dụng hàm:
Trang 29+ Hàm int strcmp (string S1, string S2): so sánh 2 chuỗi có phân biệt hoathường Hàm trả về giá trị >0 nếu S1>S2, 0 nếu S1=S2 và giá trị <0 nếu S1<S2.
+ Hàm int strcasecmp (string S1, string S2): Giống hàm strcmp() nhưngkhông phân biệt chữ hoa và chữ thường
Hàm tìm kiếm và thay thế chuỗi
Các hàm sau đây sẽ trả về chuỗi str1, nếu tìm thấy chuỗi str1 trong chuỗistr2, ngược lại hàm trả về giá trị false, nếu có nhiều chuỗi con str1 trong str2, thìhàm này chỉ tìm kiếm chuỗi str1 đầu tiên
Hàm strstr ():
Cú pháp: string strstr (string str1, string str2);
Hàm tạo chuỗi con:
Hàm string substr (string S, int start [, int length]): trả về chuỗi con đượcthành lập từ chuỗi S với các tham số start và length
Nếu start >=0: sẽ trả về chuỗi bắt đầu từ vị trí start trong S
Hàm str_replace ():
Cú pháp: string str_replace (string str1, string str2, string str);
Hàm thay thế chuỗi S1 bằng chuỗi S2 trong chuỗi S
1.2 Hệ quản trị cơ sở dữ liệu MySQL
MySQL là hệ quản trị dữ liệu miễn phí, được tích hợp sử dụng chung vớiapache, PHP
1.2.1 Cách khởi động và sử dụng
Ta sử dụng command như sau: MySQL – hname – uuser – ppass
Để truy cập vào cơ sở dữ liệu hoặc sử dụng bộ appserv để vào nhanh hơntheo đường dẫn sau: start / appserv / MySQL command line client Sau đó nhậppassword mà ta đặt vào
1.3.2 Một số định nghĩa cơ bản
Định nghĩa cơ sở dữ liệu, bảng, cột:
Cơ sở dữ liệu: là tên của cơ sở dữ liệu ta muốn sử dụng
Bảng: là 1 bảng giá trị nằm trong cơ sở dữ liệu
Cột: là 1 giá trị nằm trong bảng Dùng để lưu trữ các trường dữ liệu
Trang 30 Định nghĩa 1 số thuật ngữ:
NULL: giá trị cho phép rỗng
AUTO_INCREMENT: cho phép giá trị tăng dần (tự động)
UNSIGNED: phải là số nguyên dương
PRIMARY KEY: cho phép nó là khóa chính trong bảng
Một số kiểu dữ liệu:
Char Định dạng text có chiều dài từ 0 đến 255
Varchar Định dạng text có chiều dài từ 0 đến 255
Text Định dạng text có chiều dài 0 đến 65535
Longtext Định dạng text có chiều dài 0 đến 4294967215
INT Định dạng số có chiều dài 0 đến 4294967215
Float Định dạng số thập phân có chiều dài nhỏ
Double Định dạng số thập phân có chiều dài lớn
Date Định dạng thời gian theo định dạng: YYYY-MM-DD
Datetime Định dạng thời gian theo định dạng: YYYY-MM-DD
HH:MM:SSBảng 8: Các kiểu dữ liệu trong MySQL
Một số cú pháp cơ bản:
Tạo cơ sở dữ liệu: CREAT DATABASE tên_cơ_sở_dữ_liệu
Sử dụng cơ sở dữ liệu: Use tên_cơ_sở_dữ_liệu;
Thoát khỏi cơ sở dữ liệu: Exit
Tạo 1 bảng trong cơ sở dữ liệu:
CREATE TABLE user ( <tên_cột> <mô_tả>, … , <tên_cột_n>……
<mô_tả_n>)
Thêm cột vào bảng:
ALTER TABLE tên_bảng ADD <tên_cột> <thuộc_tính> AFTER <tên_cột>Thêm giá trị vào bảng:
INSERT INTO tên_bảng (tên_cột) VALUES (giá_trị_tương_ứng);
Truy xuất dữ liệu:
SELECT tên_cột FROM tên_bảng WHERE điều_kiện ORDER BYquy_ước_sắp_xếp;
Trang 31- Kết nối cơ sở dữ liệu: Mysql_connect (“hostname”,”user”,”pass”)
- Lựa chọn cơ sở dữ liệu: Mysql_select_db (“tên_cơ_sở_dữ_liệu”)
- Thực thi câu lệnh truy vấn: Mysql_query (“câu lệnh SQL”)
- Đếm số record trong bảng: Mysql_num_rows();
- Lấy dữ liệu từ cơ sở dữ liệu: Mysql_ fetch_array();
Trang 32CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 2.1 Giới thiệu bài toán
Với tiềm năng du lịch đa dạng và phong phú, trong những năm qua, du lịchĐền Gióng đang trên đà phát triển, lượng khách đi du lịch ngày càng ổn định.Tuy nhiên, để du lịch Đền Gióng được biết đến nhiều hơn và phát huy nhiều hơnnữa những giá trị văn hóa đặc sắc thì một website cung cấp đầy đủ các thông tin
đa dạng và sinh động về đến Gióng là rất cần thiết, đồng thời website cũng là địachỉ để người dùng tiếp nhận thông tin và hỗ trợ tối đa cho việc lựa chọn du lịchđền Gióng Website cung cấp cho khách hàng các chức năng tìm hiểu thông tinphong phú như: lịch sử, kiến trúc, lễ hội, ẩm thực, quy tắc ứng xử… Với tất cảcác chức năng này, website mang lại cho khách hàng sự tiện lợi, tiết kiệm thờigian và có những trải nghiệm tuyệt vời về đền Gióng; góp phần quảng bá hìnhảnh cho du lịch Sóc Sơn – Hà Nội nói chung và đền Gióng nói riêng
2.2 Phân tích và thiết kế hệ thống
2.2.1 Khảo sát hệ thống
Quần thể di tích Đền Gióng nằm trải từ chân núi lên đỉnh ở khu vực núi
Vệ Linh thuộc thôn Vệ Linh, xã Phù Linh, huyện Sóc Sơn, Hà Nội cách trungtâm Hà Nội 35 km về phía bắc, quần thể di tích đền Gióng là một danh lamthắng cảnh nổi tiếng đã được bộ văn hóa thông tin xếp hạng từ năm 1962 Khu
di tích gồm có 7 công trình kiến tạo, mỗi công trình có một giá trị lịch sử, giá trịnghệ thuật riêng biệt Đó là: đền Thượng, đền Mẫu, đền Trình (đền Hạ), chùa
Gióng Trước khi lên thăm các di tích trên ngọn núi này, du khách thường ghéthăm các di tích nằm ở khu vực chân núi gồm: đền Trình, đền Mẫu, chùa Đại Bi,
đền Thượng được bố trí rất gần nhau Tâm điểm của tập hợp các di tích này là
đền Thượng – nơi thờ Đức Thánh Gióng với quy mô đồ sộ, kiến trúc theo kiểuchuôi vồ, bên ngoài ngôi đền gồm năm gian hai trái, bên trong là hậu cung Cáchbài trí trong đền, cách sắp xếp đồ thờ, khí tự… tạo ra sự linh thiêng của nơi thờcúng thần linh Ngôi đền có cách bài trí sắp xếp mang đậm dấu ấn văn hóa Việt
Trang 33Với những giá trị văn hóa, lịch sử được bảo tồn và lưu truyền nguyên vẹnthông qua hình thức những đám rước, các hiệu cờ, hiệu trống, hiệu chiêng, diễnxướng dân gian, múa hát ải lao, múa hổ… hội Gióng ở đây đã trở thành cầu nốiliên kết cộng đồng và chứa đựng nhiều ý tưởng sáng tạo, thể hiện khát vọng đấtnước được thái bình, nhân dân có cuộc sống ấm no, hạnh phúc Vào năm 2010,hội Gióng Sóc Sơn đã chính thức được UNESCO công nhận là di sản văn hóaphi vật thể đại diện của nhân loại.
Thực tế, khu di tích đền Gióng được nhà nước đặc biệt quan tâm trongviệc gìn giữ và phát huy giá trị văn hóa đặc trưng của quần thể di tích, góp phầnquảng bá cho văn hóa dân gian Việt Nam; bên cạnh đó, internet phát triển, ngườidùng đều sử dụng nó làm công cụ để đặt tour trước, vì vậy, cần xây dựng mộtwebsite sử dụng dữ liệu đa phương tiện nhằm cung cấp đầy đủ các thông tin đachiều về khu di tích, phục vụ cho người dùng có nhu cầu tìm hiểu về đền Gióngcũng như du lịch ở địa danh này
Đặc biệt khi khảo sát thực tế khu di tích, việc đặt tour du lịch tiến hànhcòn thủ công, mất nhiều thời gian và công sức nên “Đặt tour” sẽ là một chứcnăng được bổ sung thêm góp phần hỗ trợ cho người dùng và điểm du lịch, khắcphục tình trạng làm việc thủ công như trên
2.2.2 Yêu cầu hệ thống
Website giới thiệu điểm du lịch cần có các chức năng chính sau:
Dành cho người dùng:
- Chức năng hiển thị, cung cấp thông tin: các thông tin về lịch sử, kiến trúc,
lễ hội, ẩm thực, quy tắc ứng xử, cẩm nang du lịch được hiển thị rõ ràng,đầy đủ và sinh động
- Chức năng đăng nhập: phục vụ cho phản hồi ý kiến người dùng, chat vớingười quản trị hệ thống
- Chức năng đặt tour du lịch: người dùng cần được cung cấp đầy đủ cácthông tin về tour như: số ngày, lịch trình, giá cả…
Trang 34- Chức năng phản hồi ý kiến người dùng, chat với người quản trị hệ thống:sau khi đăng nhập người dùng có thể chat trực tiếp với người quản trị nhằmgiải đáp thắc mắc, phản ánh chất lượng website…
Dành cho người quản trị hệ thống:
- Chức năng cập nhật/xóa hình ảnh, video trong cơ sở dữ liệu: người quản trị
có thể xóa hình ảnh, video đã cũ hoặc cập nhật hình ảnh, video mới nhất vàchất lượng cho CSDL giúp website ngày càng đa dạng và sinh động
- Chức năng chat với khách hàng
- Chức năng thống kê tour du lịch
Vậy để xây dựng website giới thiệu điểm du lịch đền Gióng cần ứng dụngCSDL đa phương tiện để lưu trữ lượng lớn hình ảnh và video
2.2.3 Phân tích hệ thống
Hệ thống gồm các chức năng như sau:
Quản lí website
Trang 35Giới thiệu điểm
du lịch Quản lí ngườidùng Quản lí tour dulịch Quản lí cuộctrò chuyện
Biểu đồ 1: Biểu đồ phân cấp chức năng hệ thống
Trang 36Giới thiệu điểm du lịch
Trang 37Giới thiệu điểm du lịch Giới thiệu quy tắcứng xử Giới thiệu cẩmnang du lịch
Giới thiệu kiến
Giới thiệu ẩm thực Giới thiệu Việt PhủThành Chương
Giới thiệu lễ hội Thành Cổ LoaGiới thiệu
Biểu đồ 2: Biểu đồ phân cấp chức năng giới thiệu điểm du lịch
Quản lí hệ thống
Quản lí người dùng Quản lí tour du lịch Quản lí cuộc tròchuyện
Thống kê thông tin
người dùng Thống kê thông tintour Thống kê thôngtin
Duyệt/xóa tour
Xóa cuộc tròchuyện
Biểu đồ 3: Biểu đồ phân cấp chức năng quản lí hệ thống
Trang 382.2.3.1 Các chức năng của hệ thống phục vụ người dùng
Chức năng tìm kiếm thông tin
Đây là chức năng chính của hệ thống, phục vụ đa số nhu cầu của người dùng Website cung cấp các thông tin bao gồm:
Tìm kiếm thông tin Lịch sử Kiến trúc Ẩm thực Lễ hội Quy tắc ứng xử Cẩm nang du lịch
Sơ đồ 1: Sơ đồ chức năng tìm kiếm thông tin của người dùng
Việc tìm kiếm thông tin của người dùng tiến hành như sau:
Hệ
Trang 39Gửi vềCSDL
Thôngtin đượclưu vàoCSDL
Hiển thịthôngbáođăng kíthànhcông
Sơ đồ 3: Quy trình đăng kí thông tin người dùngKhi người dùng đã đăng kí tài khoản trước thì việc đăng nhập tiến hànhnhư sau:
Trang 40Gửi vềCSDL
KiểmtrathôngtintrongCSDL
Hiển thịthôngbáođăngnhậpthànhcông