10868_Quản lý giao việc theo sự kiện

luận văn tốt nghiệp

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG
——————————-

ISO 9001:2015

ĐỒ ÁN TỐT NGHIỆP

NGÀNH: CÔNG NGHỆ THÔNG TIN

Sinh viên : Nguyễn Thành Long
Giảng viên hướng dẫn: TS. Đỗ Văn Chiểu

HẢI PHÒNG – 2018
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG
———————————–

QUẢN LÝ GIAO VIỆC THEO SỰ KIỆN

ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
NGÀNH: CÔNG NGHỆ THÔNG TIN

Sinh viên : Nguyễn Thành Long
Giảng viên hướng dẫn: TS. Đỗ Văn Chiểu

HẢI PHÒNG – 2018
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG
————————————–

NHIỆM VỤ ĐỀ TÀI TỐT NGHIỆP

Sinh viên: Nguyễn Thành Long Mã SV: 1412101011
Lớp: CT1802 Ngành: Công nghệ thông tin
Tên đề tài: Quản lý giao việc theo sự kiện

Trường ĐHDL Hải Phòng
Khóa luận tốt nghiệp

4

LỜI CẢM ƠN
Qua thời gian học tập và nghiên cứu tại trường Đại học Dân lập Hải Phòng, đầu
tiên em xin chân thành cảm ơn sâu sắc tới thầy giáo GS.TS NSƯT Trần Hữu Nghị
hiệu trưởng trường Đại học Dân Lập Hải Phòng, Ban giám hiệu nhà trường, Bộ môn
tin học, các Phòng ban nhà trường đã tạo điều kiện tốt nhất cho chúng em học tập và
nghiên cứu trong thời gian qua.
Em xin chân thành cảm ơn tới tất cả thầy cô giáo trong Khoa Công nghệ thông
tin – trường Đại Học Dân Lập Hải Phòng, chân thành cảm ơn các thầy giáo, cô giáo đã
giảng dạy và truyền đạt những kiến thức bổ ích cho chúng em suốt thời gian học tập tại
trường, giúp em có thêm nhiều kiến thức và hiểu rõ hơn các vấn đề mình nghiên cứu,
để em có thể hoàn thành đồ án này.
Đặc biệt em xin chân thành cảm ơn thầy T.S Đỗ Văn Chiểu – Khoa Công nghệ
thông tin – trường Đại Học Dân Lập Hải Phòng. Trong thời gian làm tốt nghiệp vừa
qua, thầy đã giành nhiều thời gian quý báu và tâm huyết để hướng dẫn em hoàn thành
đề tài này.
Dưới đây là kết quả của quá trình tìm hiểu và nghiên cứu mà em đã đạt được
trong thời gian vừa qua. Tuy có nhiều cố gắng học hỏi trau dồi để nâng cao kiến thức
nhưng không thể tránh khỏi những sai sót. Em rất mong được những sự góp ý quý báu
của các thầy giáo, cô giáo cũng như tất cả các bạn để bài luận văn của em được hoàn
thiện hơn.
Em xin chân thành cảm ơn!
Hải Phòng, ngày ……….tháng……… năm 2018
Sinh viên thực hiện

Nguyễn Thành Long

Trường ĐHDL Hải Phòng
Khóa luận tốt nghiệp

5

MỤC LỤC
LỜI CẢM ƠN ……………………………………………………………………………. 1
MỤC LỤC …………………………………………………………………………………. 5
GIỚI THIỆU
………………………………………………………………………………. 8
CHƯƠNG 1: MỞ ĐẦU ………………………………………………………………. 9
1.1 Mục tiêu đề tài ………………………………………………………………………………………….. 9
1.2 Giới thiệu về công ty …………………………………………………………………………………. 9
1.3 Mô tả hoạt động của hệ thống …………………………………………………………………… 10
CHƯƠNG 2: TÌM HIỂU VỀ LẬP TRÌNH WEB TRÊN NỀN TẢNG
PHP/SQL …………………………………………………………………………………. 12
I. World Wide Web và HTML ……………………………………………………………………….. 12
1.1. World Wide Web ………………………………………………………………………………… 12
1.1.1. Khái niệm …………………………………………………………………………………….. 12
1.1.2. Cách tạo trang web
………………………………………………………………………… 12
1.1.3. Trình duyệt web (web Client hay web Browser) ………………………………. 12
1.1.4. Webserver
…………………………………………………………………………………….. 13
1.2. Phân loại Web …………………………………………………………………………………….. 13
1.2.1. HTML
………………………………………………………………………………………….. 14
1.2.2 Cấu trúc chung của một trang HTML……………………………………………….. 14
1.2.3 Các thẻ HTML cơ bản
…………………………………………………………………….. 14
II. Ngôn ngữ PHP, MySQL và Framework Laravel. …………………………………………. 15
2.1. Ngôn ngữ PHP ……………………………………………………………………………………. 15
2.1.1 Khái niệm PHP
………………………………………………………………………………. 15
2.1.2. Lý do nên dùng PHP ……………………………………………………………………… 16
2.1.3. Hoạt động của PHP ……………………………………………………………………….. 17
2.1.4. Tổng quan về PHP ………………………………………………………………………… 17
2.1.5. Các phương thức được sử dụng trong lập trình PHP …………………………. 19
Trường ĐHDL Hải Phòng
Khóa luận tốt nghiệp

6

2.1.6. Cookie và Session trong PHP …………………………………………………………. 19
2.1.7. Hàm …………………………………………………………………………………………….. 21
2.2. MySQL
………………………………………………………………………………………………. 22
2.2.1 Giới thiệu cơ sở dữ liệu:………………………………………………………………….. 22
2.2.2 Mục đích sử dụng cơ sở dữ liệu:
………………………………………………………. 22
2.2.3 Các kiểu dữ liệu trong cơ sở dữ liệu MySQL…………………………………….. 23
2.2.4 Các thao tác cập nhật dữ liệu …………………………………………………………… 25
2.2.5 Các hàm thông dụng trong MySQL………………………………………………….. 26
2.3 Framework Laravel ………………………………………………………………………………. 27
2.3.1 Mô hình MVC ……………………………………………………………………………….. 27
2.3.2 Laravel ………………………………………………………………………………………….. 29
2.3.3 Cấu trúc của Laravel ………………………………………………………………………. 31
CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ HỆ THỐNG
……………………. 33
3.1 Biểu đồ nghiệp vụ ……………………………………………………………………………………. 33
3.1.1 Biểu đồ ngữ cảnh hệ thống …………………………………………………………………. 33
3.1.2 Biểu đồ phân rã chức năng …………………………………………………………………. 34
3.1.3 Danh sách hồ sơ dữ liệu
……………………………………………………………………… 35
3.1.4 Ma trận thực thể chức năng ………………………………………………………………… 35
3.2 Mô hình hóa ……………………………………………………………………………………………. 36
3.2.1 Biểu đồ luồng dữ liệu hệ thống……………………………………………………………. 36
3.2.2 Biểu đồ luồng dữ liệu chức năng quản lý hợp đồng ………………………………. 37
3.2.3 Biểu đồ luồng dữ liệu chức năng quản lý việc ………………………………………. 38
3.2.4 Biểu đồ luồng dữ liệu chức năng quản lý khách hàng ……………………………. 39
3.2.5 Biểu đồ luồng dữ liệu chức năng quản lý nhân viên
………………………………. 39
3.2.6 Biểu đồ luồng dữ liệu chức năng quản lý sự kiện
………………………………….. 39
3.3 Thiết kế dữ liệu ……………………………………………………………………………………….. 41
3.3.1 Mô hình liên kết thực thể (ER) ……………………………………………………………. 41
3.3.1.1 Xác định thực thể và thuộc tính …………………………………………………….. 41
Trường ĐHDL Hải Phòng
Khóa luận tốt nghiệp

7

3.3.1.2 Xác định các mối quan hệ
…………………………………………………………….. 41
3.3.1.3 Mô hình ER ………………………………………………………………………………… 43
3.3.2 Thiết kế các bảng dữ liệu
……………………………………………………………………. 45
3.3.2.1 Bảng nhân viên (employee) ………………………………………………………….. 45
3.3.2.2 Bảng khách hàng (customer) ………………………………………………………… 45
3.3.2.3 Bảng hợp đồng (contract) …………………………………………………………….. 45
3.3.2.4 Bảng sự kiện (event) ……………………………………………………………………. 45
3.3.2.5 Bảng đầu việc tạo sẵn theo sự kiện (Job) ……………………………………….. 47
3.3.2.6 Bảng Đầu việc (work) ………………………………………………………………….. 47
3.3.2.7 Bảng Chi tiết việc (work_details) ………………………………………………….. 47
3.3.2.8 Bảng Ký hợp đồng (sign_contract)
………………………………………………… 48
3.3.2.9 Bảng Lịch sử cập nhật trạng thái hợp đồng (history_contract)………….. 48
3.3.3 Mô hình quan hệ
…………………………………………………………………………….. 49
CHƯƠNG 4: ỨNG DỤNG THỰC NGHIỆM
……………………………… 50
4.1 Môi trường thử nghiệm
…………………………………………………………………………….. 50
4.2 Giao diện ………………………………………………………………………………………………… 50
KẾT LUẬN ……………………………………………………………………………… 67
TÀI LIỆU THAM KHẢO …………………………………………………………. 68

Trường ĐHDL Hải Phòng
Khóa luận tốt nghiệp

8

GIỚI THIỆU
Nền tin học càng phát triển thì con người càng có nhiều những phương pháp
mới, công cụ mới để xử lý thông tin và nắm bắt được nhiều thông tin hơn. Tin học
được ứng dụng trong mọi ngành nghề, mọi lĩnh vực sản xuất, kinh doanh, du lịch là
một xu hướng tất yếu. Kết quả của việc áp dụng tin học trong quản lý là việc hình
thành các hệ thống thông tin quản lý nhằm phục vụ cho nhu cầu xử lý dữ liệu và cung
cấp thông tin cho các chủ sở hữu hệ thống đó. Ở nước ta hiện nay trong những năm
gần đây các ứng dụng tin học vào quản lý đang ngày một nhiều hơn, đa dạng hơn.
Ứng dụng tin học vào trong hệ thống quản lý là điều tất cả các doanh nghiệp và
công ty đang hướng tới. Lợi ích mà nó đem lại không hề nhỏ, nó có thể giúp chủ
doanh nghiệp quản lý tất cả các thông tin từ xa, không cần lục lọi trong đống giấy tờ
chồng chất cũ nát theo thời gian, không cần mất nhiều thời gian để xử lý, tính toán và
độ chính xác cự kỳ cao, v.v…
Hệ thống thông tin được đề cập đến trong đồ án này là một ứng dụng quản lý
giao việc theo sự kiện. Đối với công việc theo dõi quản lý giao việc theo sự kiện này
cần phải quản lý công việc giao việc cho nhân viên và theo dõi tiến trình của các công
việc đó theo từng sự kiện, hội nghị. Càng ngày lượng khách hàng càng lớn, số lượng
khách yêu cầu tổ chức sự kiện tăng lên, ở nhiều nơi, nhiều khu vực thì yêu cầu quy mô
phải mở rộng đồng thời phải quản lý nhiều nhân viên hơn và phân chia các công việc
cho từng nhân viên sao cho hợp lý, xử lý công việc đúng thời hạn, nhanh chóng và
chính xác. Nhận thấy các khó khăn bất cập trong việc quản lý của hệ thống này em
thấy rằng nếu ứng dụng tin học vào thì việc quản lý sẽ trở nên đơn giản và dễ dàng
hơn so với thực hiện thủ công, thời gian xử lý chậm và khó bảo quản giấy tờ theo thời
gian. Tiết kiệm chi phí quản lý, đem lại độ chính xác cao, tiện lợi.
Do đó, Công ty cổ phẩn tổ chức hội nghị Việt Nam (VNC) cần xây dựng hệ
thống quản lý công việc và theo dõi tiến trình xử lý công việc theo sự kiện. Chính vì
vậy, em đã chọn đề tài: “Xây dựng hệ thống quản lý giao việc theo sự kiện trên nền
tảng web”.

Trường ĐHDL Hải Phòng
Khóa luận tốt nghiệp

9

CHƯƠNG 1: MỞ ĐẦU
1.1 Mục tiêu đề tài
VNC là công ty chuyên tổ chức các sự kiện, hội nghị theo yêu cầu nên đòi hỏi
yêu cầu rất gắt gao trong khâu quản lý và tổ chức. Quản lý giao việc theo sự kiện là
công việc phức tạp đòi hỏi yêu cầu chặt chẽ, tổ chức công việc tốt, triển khai nhanh,
đúng thời hạn, phục vụ theo nhiều yêu cầu, nhiều loại hình,… Mỗi một sự kiện, hội
nghị có các yêu cầu khác nhau về quy mô, thời gian và các yêu cầu khác do khách
hàng đặt ra. Vì vậy, phân chia công việc cần phải hợp lý tùy hoàn cảnh, chính xác và
đầy đủ tránh thiếu xót. Công việc cần hoàn thành đúng thời hạn được giao, theo dõi
được tiến độ các công việc để có các biện pháp xử lý sao cho công việc hoàn thành
đúng hạn. Quản lý ngân sách, chi tiêu hợp lý để có lợi nhuận.
Do đó yêu cầu của em trong đề tài này là xây dựng hệ thống quản lý giao việc
theo sự kiện cho công ty trên nền web cần:
 Giúp cho việc quản lý hệ thống trở nên dễ dàng thực hiện hơn, tiện lợi
hơn trong việc quản lý các thông tin về khách hàng, sự kiện, nhân viên,
hợp đồng, giao việc cho nhân viên và theo dõi tiến độ từng công việc
của từng sự kiện, báo cáo thống kê, ngoài ra còn có viết bài đăng tải tin
tức cho khách vào website đọc.
 Nhân viên có thể đăng nhập vào website để nhận công việc và báo cáo
tiến độ của công việc.
 Khách hàng vào website đọc tin tức, tham khảo các bài viết trên
website, tìm hiểu nhiều hơn về công ty và có thể chat trực tiếp với nhân
viên tư vấn thông qua tiện ích Messenger được tích hợp ngay trên web
site. Khách hàng cũng có thể gửi yêu cầu và để lại thông tin thông qua
form trên website.
Trong quá trình thực hiện hiện em gặp không ít khó khăn và đã cố gắng rất
nhiều để hoàn thành đề tài này và rút ra được nhiều kinh nghiệm và kỹ năng để
phát triển ứng dụng sau này.
1.2 Giới thiệu về công ty
Công ty Cổ phần Tổ chức Hội nghị Việt Nam – VNC được thành lập nhằm phát
triển các dịch vụ đáp ứng nhu cầu tổ chức hội nghị, hội thảo khoa học ngày càng tăng
tại Việt Nam. Vượt qua khởi đầu khó khăn, VNC đã cải tiến không ngừng các tiêu
chuẩn tổ chức, nâng cao dịch vụ hậu cần truyền thống và phát triển kỹ thuật thông
minh trong xử lý các vấn phát sinh.
Trường ĐHDL Hải Phòng
Khóa luận tốt nghiệp

10

Với phương châm hành động: Tiếp cận chuyên nghiệp – Giải pháp hoàn hảo – Thực
hiện hoàn hảo, bên cạnh thế mạnh từ nền tảng nhân sự chuyên nghiệp, công nghệ cập
nhật nâng cấp không ngừng, thông qua kinh nghiệm tổ chức, các mối quan hệ gắn bó
với mạng lưới các nhà cung cấp dịch vụ và khả năng quản lý ngân sách chu đáo, VNC
ngày càng khẳng định vị thế vị trí dẫn đầu trong mảng dịch vụ tổ chức đặc thù này.
Với định hướng phát triển bền vững, cùng với đội ngũ nhân sự chuyên nghiệp, tâm
huyết, VNC cam kết sẽ cung cấp các giải pháp sáng tạo nhằm đem lại thành công cho
sự kiện.
Hotline: (+84) 903.282.918
Website: www.vnconference.com
Facebook: www.facebook.com/tochuchoinghivietnam
– Văn phòng Hà Nội
Địa chỉ : Số 01 Hoàng Hoa Thám, Phường Thụy Khuê, Quận Tây Hồ, Hà Nội
Điện thoại : (+84).24. 3734.9886
– Văn phòng Thành phố Hồ Chí Minh
Địa chỉ : Phòng 1005, Toà nhà Vạn Đô, Số 348 Bến Vân Đồn, phường 1, quận 4,
thành phố Hồ Chí Minh
Điện thoại : (+84) 28.5401.0831
1.3 Mô tả hoạt động của hệ thống
Công ty Cổ phần Tổ chức Hội nghị Việt Nam – VNC là một trong những công
ty tiên phong chuyên tổ chức sự kiện, hội nghị trong nước và ngoài nước và có xu
hướng phát triển hơn nữa. Vì khối lượng công việc rất nhiều và tổ chức ở nhiều nơi
nên không hề đơn giản trong việc tìm kiếm nguồn lực, cơ sở vật chất và di chuyển. Do
đó gặp rất nhiều khó khăn trong việc tổ chức cần quản lý được khối lượng và tiến trình
công việc chính xác và nhanh chóng để triển khai đúng tiến độ của hợp đồng với
khách hàng. Chính vì vậy, công ty cần phát triển hệ thống để quản lý giao việc theo sự
kiện, hội nghị để tiết kiệm thời gian và tăng hiệu quả và trong công việc.
Khi khách hàng có yêu cầu tổ chức sự kiện, nhân viên sẽ làm việc với khách
hàng và tạo ra một bản hợp đồng lưu các thông tin về khách hàng, sự kiện, địa điểm và
để trạng thái hợp đồng là thăm dò. Khi khách hàng quyết định triển khai, hai bên thoản
thuận thành công thì hợp đồng chuyển sang trạng thái ký kết.
Khi hợp đồng giữa khách hàng và công ty được ký kết, người quản lý sẽ phân
ra các đầu việc phục vụ cho sự kiện, hội nghị đó. Mỗi đầu việc sẽ có một người đứng
ra làm trưởng nhóm chịu trách nhiệm cho đầu việc đó trong một khoảng thời gian quy
định. Sau đó mỗi đầu việc có thể được chia ra thành nhiều chi tiết công việc. Mỗi chi
Trường ĐHDL Hải Phòng
Khóa luận tốt nghiệp

11

tiết công việc do một người hoặc nhiều người thực hiện tùy vào tính chất công việc.
Khi các chi tiết việc được hoàn thành thì thông báo với trưởng nhóm để tổng hợp tiến
độ công việc. Nếu thời gian sắp hết mà ai chưa hoàn thành công việc thì sẽ có thông
báo nhắc nhở.
Nếu vì 1 lý do nào đó mà hợp đồng bị gián đoạn buộc phải dừng lại, thì cập
nhật lại trạng thái của hợp đồng đó thành dừng và ghi rõ lý do dừng, thời gian và tên
người sửa.

Trường ĐHDL Hải Phòng
Khóa luận tốt nghiệp

12

CHƯƠNG 2: TÌM HIỂU VỀ LẬP TRÌNH WEB TRÊN NỀN
TẢNG PHP/SQL
I. World Wide Web và HTML
1.1. World Wide Web
1.1.1. Khái niệm
World Wide Web (WWW) hay còn gọi là web là một dịch vụ phổ biến nhất
hiện nay trên Internet, 85% các giao dịch trên Internet ước lượng thuộc về WWW.
Ngày nay số website trên thế giới đã đạt tới con số khổng lồ. WWW cho phép truy
xuất thông tin văn bản, hình ảnh, âm thanh, video trên toàn thế giới. Thông qua
website, các quý công ty có thể giảm thiểu tối đa chi phí in ấn và phân phát tài liệu cho
khách hàng ở nhiều nơi.
1.1.2. Cách tạo trang web
Có nhiều cách để tạo trang web, có thể tạo trang web trên bất kì chương trình xử lí văn
bản nào:
– Tạo web bằng cách viết mã nguồn bởi một trình soạn thảo văn bản như:
Notepad, WordPad,… là những chương trình soạn thảo văn bản có sẵn trong Window.
– Thiết kế bằng cách dùng web Wizard và công cụ của Word 97, Word 2000. –
Thiết kế web bằng các phần mềm chuyên nghiệp: FrontPage, Dreamweaver, Nescape
Editor,…. Phần mềm chuyên nghiệp như DreamWeaver sẽ giúp thiết kế trang web dễ
dàng hơn, nhanh chóng hơn, phần lớn mã lệnh HTML sẽ có sẵn trong phần code.
Để xây dựng một ứng dụng web hoàn chỉnh và có tính thương mại, cần kết hợp
cả Client Script (kịch bản trình khách) và Server Script (kịch bản trên trình chủ) với
một loại cơ sở dữ liệu nào đó, chẳng hạn như: MS Access, SQL Server, MySQL,
Oracle,…. Khi muốn triển khai ứng dụng web trên mạng, ngoài các điều kiện về cấu
hình phần cứng, cần có trình chủ web thường gọi là web Server.
1.1.3. Trình duyệt web (web Client hay web Browser)
Trình duyệt Web là công cụ truy xuất dữ liệu trên mạng, là phần mềm giao diện
trực tiếp với người sử dụng. Nhiệm vụ của Web Browser là nhận các yêu cầu của
người dùng, gửi các yêu cầu đó qua mạng tới các Web Server và nhận các dữ liệu cần
thiết từ Server để hiển thị lên màn hình. Để sử dụng dịch vụ WWW, Client cần có một
chương trình duyệt Web, kết nối vào Internet thông qua một ISP. Các trình duyệt
Trường ĐHDL Hải Phòng
Khóa luận tốt nghiệp

13

thông dụng hiện nay là: Microsoft Internet Explorer, Google Chrome, Mozilla
FireFox….
1.1.4. Webserver
Webserver là một máy tính được nối vào Internet và chạy các phần mềm được
thiết kế. Webserver đóng vai trò một chương trình xử lí các nhiệm vụ xác định, như
tìm trang thích hợp, xử lí tổ hợp dữ liệu, kiểm tra dữ liệu hợp lệ…. Webserver cũng là
nơi lưu trữ cơ sở dữ liệu, là phần mềm đảm nhiệm vai trò server cung cấp dịch vụ
Web.
Webserver hỗ trợ các các công nghệ khác nhau:
– IIS (Internet Information Service): Hỗ trợ ASP, mở rộng hỗ trợ PHP. –
Apache: Hỗ trợ PHP.
– Tomcat: Hỗ trợ JSP (Java Servlet Page).
1.2. Phân loại Web
– Web tĩnh:
Tài liệu được phân phát rất đơn giản từ hệ thống file của Server.
Định dạng các trang web tĩnh là các siêu liên kết, các trang định dạng Text, các
hình ảnh đơn giản.
Ưu điểm: CSDL nhỏ nên việc phân phát dữ liệu có hiệu quả rõ ràng, Server có
thể đáp ứng nhu cầu Client một cách nhanh chóng. Ta nên sử dụng Web tĩnh
khi không thay đổi thông tin trên đó.
Nhược điểm: Không đáp ứng được yêu cầu phức tạp của người sử dụng, không
linh hoạt,…
Hoạt động của trang Web tĩnh được thể hiện như sau:

Hình 1.2.1

– Website động:
Về cơ bản nội dung của trang Web động như một trang Web tĩnh, ngoài ra nó
còn có thể thao tác với CSDL để đáp ứng nhu cầu phức tập của một trang Web.
Sau khi nhận được yêu cầu từ Web Client, chẳng hạn như một truy vấn từ một
Trường ĐHDL Hải Phòng
Khóa luận tốt nghiệp

14

CSDL đặt trên Server, ứng dụng Internet Server sẽ truy vấn CSDL này, tạo một
trang HTML chứa kết quả truy vấn rồi gửi trả cho người dùng.
– Hoạt động của Web động:

Hình 1.2.2

1.2.1. HTML
Trang Web là sự kết hợp giữa văn bản và các thẻ HTML. HTML là chữ viết tắt
của HyperText Markup Language được hội đồng World Wide Web Consortium
(W3C) quy định. Một tập tin HTML chẳng qua là một tập tin bình thường, có đuôi
.html hoặc .htm. HTML giúp định dạng văn bản trong trang Web nhờ các thẻ. Hơn
nữa, các thẻ html có thể liên kết t hoặc một cụm t với các tài liệu khác trên Internet.
Đa số các thẻ HTML có dạng thẻ đóng mở. Thẻ đóng dùng chung t lệnh giống như
thẻ mở, nhưng thêm dấu xiên phải (/). Ngôn ngữ HTML qui định cú pháp không phân
biệt chữ hoa chữ thường. Ví dụ, có thể khai báo hoặc . Không có
khoảng trắng trong định nghĩa thẻ.
1.2.2 Cấu trúc chung của một trang HTML

Tiêu đề của trang Web





1.2.3 Các thẻ HTML cơ bản
– Thẻ … tạo đầu mục trang.
– Thẻ tạo tiêu đề trang trên thanh tiêu đề, đây là thẻ bắt buộc.
Thẻ title cho phép trình bày chuỗi trên thanh tựa đề của trang web mỗi khi
trang Web đó được duyệt trên trình duyệt web.
Trường ĐHDL Hải Phòng
Khóa luận tốt nghiệp

15

– Thẻ … tất cả các thông tin khai báo trong thẻ đều có
thể xuất hiện trên trang web. Những thông tin này có thể nhìn thấy trên trang
web.
– Thẻ

tạo một đoạn mới.
– Thẻ thay đổi phông chữ, kích cỡ và màu kí tự.
– Thẻ

đây là thẻ định dạng bảng trên trang web. Sau khi
khai báo thẻ này, phải khai báo các thẻ hàng

và thẻ cột

cùng với các
thuộc tính của nó.
– Thẻ cho phép chèn hình ảnh vào trang web. Thẻ này thuộc loại thẻ
không có thẻ đóng.
– Thẻ là loại thẻ dùng để liên kết giữa các trang web hoặc liên kết
đến địa chỉ Internet, Mail hay Intranet (URL) và địa chỉ trong tập tin trong
mạng cục bộ (UNC).
– Thẻ cho phép người dùng nhập dữ liệu hay chỉ thị thực thi một hành
động nào đó, thẻ Input bao gồm các loại thẻ như: text, password, submit,
button, reset, checkbox, radio, hidden, image.
– Thẻ < textarea>…. < \textarea> cho phép người dùng nhập liệu với rất nhiều
dòng. Với thẻ này không thể giới hạn chiều dài lớn nhất trên trang Web.
– Thẻ cho phép người dùng chọn phần tử trong tập
phương thức đã được định nghĩa trước. Nếu thẻ sẽ giống như
combobox. Nếu thẻ đó là dạng listbox.
– Thẻ

… .

khi muốn submit dữ liệu người dùng nhập từ trang
web phía Client lên phía Server, có hai cách để làm điều nàu ứng với hai
phương thức POST và GET trong thẻ form. Trong một trang web có thể có
nhiều thẻ

khác nhau, nhưng các thẻ

.Khi trình duyệt truy cập vào một trang PHP,
Server sẽ đọc nội dung file PHP lên và lọc ra các đoạn mã PHP và thực thi các đoạn
mã đó, lấy kết quả nhận được của đoạn mã PHP thay thế vào chỗ ban đầu của chúng
trong file PHP, cuối cùng Server trả về kết quả cuối cùng là một trang nội dung HTML
về cho trình duyệt.
2.1.4. Tổng quan về PHP
– Cấu trúc cơ bản: PHP cũng có thẻ bắt đầu và kết thúc giống với ngôn ngữ
HTML. Chỉ khác, đối với PHP chúng ta có nhiều cách để thể hiện.
 Cú pháp chính
 Trong PHP để kết thúc 1 dòng lệnh chúng ta sử dụng dấu “;”. Để chú
thích một đ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.
 Ví dụ:
– Xuất giá trị ra trình duyệt chúng ta có nhữ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 ….
Who are you?

“;
?>
Nếu giữa hai chuỗi muốn liên kết với nhau ta sử dụng dấu “.”
Trường ĐHDL Hải Phòng
Khóa luận tốt nghiệp

18

Hình 2.3. Liên kết 2 chuỗi

– Biến: được xem là vùng nhớ dữ liệu tạm thời. Và giá trị có thể thay đổi được.
Biến được bắt đầu bằng ký hiệu “$” và theo sau chúng là một từ, một cụm từ
nhưng phải viết liền hoặc có gạch dưới.
 Một biến được xem là hợp lệ khi nó thỏa các yếu tố:
o Tên của biến phải bắt đầu bằng dấu gạch dƣới và theo sau là các ký
tự, số hay dấu gạch dưới.
o 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 một biến chúng ta thường phải khai báo trước,
tuy nhiên đối với các lập trình viên khi sử dụng họ thường xử lý cùng
một lúc các công việc, nghĩa là vừa khai báo vừa gán dữ liệu cho biến.
Bản thân biến cũng có thể gán cho các kiểu dữ liệu khác và tùy theo ý
định của người lập trình mong muốn trên chúng.

– Hằng: nếu biến là cái có thể thay đổi được thì ngược lại hằng là cái chúng ta
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).
 Cũng giống với biến, hằng được xem là hợp lệ thì chúng phải đáp ứng
một số yếu tố:
o Hằng không có dấu “$” ở trước tên.
o Hằng có thể truy cập bất cứ vị trí nào trong mã lệnh.
o Hằng chỉ được phép gán giá trị duy nhất 1 lần.
o Hằng thường viết bằng chữ in để phân biệt với biến.

– Chuỗi: là một nhóm các kỹ tự, số, khoảng trắng, dấu ngắt được đặt trong các
dấu nháy, ví dụ: ‘Hello’.
 Để tạo một biến chuỗi, chúng ta phải gán giá trị chuỗi cho một biến hợp
lệ, ví dụ: $fisrt_name= “Nguyen”;
 Để liên kết một chuỗi và một biến chúng ta thường sử dụng dấu “.”.
Welcome to
“.$test.”
“;
?>
2.1.5. Các phương thức được sử dụng trong lập trình PHP
Có 2 phương thức được sử dụng trong lập trình PHP là GET và POST.
– Phương thức GET: cũng được dùng để lấy dữ liệu từ form nhập liệu. Tuy
nhiên nhiệm vụ chính của nó vẫn là lấy nội dung trang dữ liệu từ web server. Ví
dụ: với url sau: shownews.php?id=50, ta dùng hàm $_GET[‘id’] sẽ được giá trị
là 50.
– Phương thức POST: phương thức này được sử dụng để lấy dữ liệu từ form
nhập liệu và chuyển chúng lên trình chủ webserver.

Ho ten:
;
;


2.1.6. Cookie và Session trong PHP
Cookie và Session là hai phương pháp sử dụng để quản lý các phiên làm việc
giữa người sử dụng và hệ thống.
– Cookie: là 1 đoạn dữ liệu được ghi vào đĩa cứng hoặc bộ nhớ của máy người
sử dụng. Nó được trình duyệt gửi ngược lên lại server mỗi khi browser tải 1
trang web từ server. Những thông tin được lưu trữ trong cookie hoàn toàn phụ
Trường ĐHDL Hải Phòng
Khóa luận tốt nghiệp

20

thuộc vào website trên server. Mỗi website có thể lưu trữ những thông tin khác
nhau trong cookie, ví dụ thời điểm lần cuối ta ghé thăm website, đánh dấu ta đã
login hay chưa,… Cookie được tạo ra bởi website và gửi tới browser, do vậy hai
website khác nhau (cho dù cùng host trên 1 server) sẽ có hai cookie khác nhau
gửi tới browser. Ngoài ra, mỗi browser quản lý và lưu trữ cookie theo cách
riêng của mình, cho nên hai browser cùng truy cập vào một website sẽ nhận
được hai cookie khác nhau.
 Để thiết lập cookie ta sử dụng cú pháp:
o Setcookie (“tên cookie”,”giá trị”, thời gian sống).
o Tên cookie là tên mà chúng ta đặt cho phiên làm việc.
o Giá trị là thông số của tên cookie.
o Ví dụ: setcookie(“name”,”admin”,time()+3600;
 Để sử dụng lại cookie vừa thiết lập, chúng ta sử dụng cú pháp:

o Cú pháp: $_COOKIE[“tên cookies”].
o Tên cookie là tên mà chúng ta thiết lập phía trên.
 Để hủy 1 cookie đã được tạo ta có thể dùng 1 trong 2 cách sau:
o Cú pháp: setcookie(“Tên cookie”).
o Gọi hàm setcookie với chỉ duy nhất tên cookie mà thôi
o Dùng thời gian hết hạn cookie là thời điểm trong quá khứ.
o Ví dụ: setcookie(“name”,”admin”,time()-3600);
– Session: được hiểu là khoảng thời gian người sử dụng giao tiếp với một ứng
dụng. Một session được bắt đầu khi người sử dụng truy cập vào ứng dụng lần
đầu tiên, và kết thúc khi người sử dụng thoát khỏi ứng dụng. Mỗi session sẽ có
được cấp một định danh (ID) khác nhau.
 Để thiết lập 1 session ta sử dụng cú pháp: session_start(). Đoạn code này
phải được nằm trên các kịch bản HTML hoặc những lệnh echo, printf.
 Để thiết lập một giá trị session, ngoài việc cho phép bắt đầu thực thi
session. Chúng ta còn phải đăng ký một giá trị session để tiện cho việc
gán giá trị cho session đó.
 Ta có cú pháp: session_register(“Name”).
 Để sử dụng giá trị của session ta sử dụng mã lệnh sau:
$_SESSION[“name”] với “name” là tên mà chúng ta sử dụng hàm
session_register(“name”) để khai báo.
Trường ĐHDL Hải Phòng
Khóa luận tốt nghiệp

21

2.1.7. Hàm

Để giảm thời gian lặp lại 1 thao tác code nhiều lần, PHP hỗ trợ người lập trình
việc tự định nghĩa cho mình những hàm có khả năng lặp lại nhiều lần trong website.
Việc này cũng giúp cho người lập trình kiểm soát mã nguồn một cách mạch lạc, đồng
thời có thể tùy biến ở mọi trang mà không cần phải khởi tạo hay viết lại mã lệnh như
HTML thuần.
a) Hàm tự định nghĩa
Cú pháp:
function function_name()
{
//Lệnh thực thi
}
Tên hàm có thể là một tổ hợp bất kỳ những chứ cái, con số và dấu gạch dưới,
nhưng phải bắt đầu từ chứ cái và dấu gạch dưới.
b) Hàm tự định nghĩa với các tham số
Cú pháp:
function function_name($gt1,$gt2)
{
//Lệnh thực thi
}

c) Hàm tự định nghĩa với giá trị trả về
Cú pháp:
function function_name(Có hoặc không có đối số)
{
// Lệnh thực thi
return giatri;
}

d) Gọi lại hàm
PHP cung cấp nhiều hàm cho phép triệu gọi lại file. Như hàm include(“URL
đến file”), require(“URL Đến file”). Ngoài hai cú pháp trên còn có
include_once(), require_once(). Hai hàm này cũng có trách nhiệm gọi lại hàm.
Nhưng chúng sẽ chỉ gọi lại duy nhất một lần mà thôi.
Trường ĐHDL Hải Phòng
Khóa luận tốt nghiệp

22

2.2. MySQL
2.2.1 Giới thiệu cơ sở dữ liệu:
MySQL là ứng dụng cơ sở dữ liệu mã nguồn mở phổ biến nhất hiện nay (theo
www.mysql.com) và được sử dụng phối hợp với PHP. Trước khi làm việc với MySQL
cần xác định các nhu cầu cho ứng dụng.
MySQL là cơ sở dữ có trình giao diện trên Windows hay Linux, cho phép
người sử dụng có thể thao tác các hành động liên quan đến nó. Việc tìm hiểu từng
công nghệ trước khi bắt tay vào việc viết mã kịch bản PHP, việc tích hợp hai công
nghệ PHP và MySQL là một công việc cần thiết và rất quan trọng.
2.2.2 Mục đích sử dụng cơ sở dữ liệu:
Mục đích sử dụng cơ sở dữ liệu bao gồm các chức năng như: lưu trữ (storage),
truy cập (accessibility), tổ chức (organization) và xử lí (manipulation).
– Lưu trữ: Lưu trữ trên đĩa và có thể chuyển đổi dữ liệu từ cơ sở dữ liệu này
sang cơ sở dữ liệu khác, nếu sử dụng cho quy mô nhỏ, có thể chọn cơ sở dữ liệu
nhỏ như: Microsoft Exel, Microsoft Access, MySQL, Microsoft Visual
FoxPro,… Nếu ứng dụng có quy mô lớn, có thể chọn cơ sở dữ liệu có quy mô
lớn như: Oracle, SQL Server,…
– Truy cập: Truy cập dữ liệu phụ thuộc vào mục đích và yêu cầu của người sử
dụng, ở mức độ mang tính cục bộ, truy cập cơ sỏ dữ liệu ngay trong cơ sở dữ
liệu với nhau, nhằm trao đổi hay xử lí dữ liệu ngay bên trong chính nó, nhưng
do mục đích và yêu cầu người dùng vượt ra ngoài cơ sở dữ liệu, nên cần có các
phương thức truy cập dữ liệu giữa các cơ sở dử liệu với nhau như: Microsoft
Access với SQL Server, hay SQL Server và cơ sở dữ liệu Oracle….
– Tổ chức: Tổ chức cơ sở dữ liệu phụ thuộc vào mô hình cơ sở dữ liệu, phân
tích và thiết kế cơ sở dữ liệu tức là tổ chức cơ sở dữ liệu phụ thuộc vào đặc
điểm riêng của từng ứng dụng. Tuy nhiên khi tổ chức cơ sở dữ liệu cần phải
tuân theo một số tiêu chuẩn của hệ thống cơ sở dữ liệu nhằm tăng tính tối ưu
khi truy cập và xử lí.
– Xử lí: Tùy vào nhu cầu tính toán và truy vấn cơ sở dữ liệu với các mục đích
khác nhau, cần phải sử dụng các phát biểu truy vấn cùng các phép toán, phát
biểu của cơ sở dữ liệu để xuất ra kết quả như yêu cầu. Để thao tác hay xử lí dữ
liệu bên trong chính cơ sở dữ liệu ta sử dụng các ngôn ngữ lập trình như: PHP,
C++, Java, Visual Basic,…
Trường ĐHDL Hải Phòng
Khóa luận tốt nghiệp

23

2.2.3 Các kiểu dữ liệu trong cơ sở dữ liệu MySQL
– Kiểu dữ liệu numeric: bao gồm số nguyên và kiểu số chấm động.

Trường ĐHDL Hải Phòng
Khóa luận tốt nghiệp

24

 Kiểu chấm động

– Kiểu dữ Date and Time cho phép nhập dữ liệu dưới dạng chuỗi ngà tháng hay
dạng số.

– Kiểu dữ liệu String: chia làm 3 loại: char (chiều dài cố định) và varchar (chiều
dài biến thiên); Text (cho phép lưu chuỗi lớn) và Blob (cho phép lưu đối tượng nhị
phân); Enum và Set.

Trường ĐHDL Hải Phòng
Khóa luận tốt nghiệp

25

2.2.4 Các thao tác cập nhật dữ liệu
– SELECT (truy vấn mẫu tin): SELECT dùng để truy vẫn từ một hay nhiều
bảng khác nhau, kết quả trả về là một tập mẫu tin thỏa mãn các điều kiện cho
trước nếu có, cú pháp phát biểu SQL dạng SELECT như sau:
SELECT
[FROM] [WHERE] [GROUP BY] [HAVING<điều kiện bắt buộc của GROUP BY>] [ORDER BY] [LIMIT FromNumber/ ToNumber]

Đánh giá post

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *