Tải bản đầy đủ (.doc) (57 trang)

XÂY DỰNG PHẦN mềm SÀNG lọc TRỰC TUYẾN ỨNG VIÊN TUYỂN DỤNG

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.46 MB, 57 trang )

TRƯỜNG ĐẠI HỌC NÔNG NGHIỆP HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN

KHÓA LUẬN TỐT NGHIỆP
ĐỂ TÀI:
XÂY DỰNG PHẦN MỀM SÀNG LỌC TRỰC TUYẾN
ỨNG VIÊN TUYỂN DỤNG

Sinh viên thực hiện

: NGUYỄN THỊ THÊU

Lớp

: K54THO

Msv

: 543278

Ngành

: TIN HỌC

Giảng viên hướng dẫn

: ThS. TRẦN THỊ THU HUYỀN

HÀ NỘI – 2014



GVHD. TS. Trần Thị Thu Huyền

LỜI CẢM ƠN
Trong thời gian hoàn thành Khoá luận tốt nghiệp, ngoài sự nỗ lực của bản
thân, em đã nhận được rất nhiều sự giúp đỡ nhiệt tình của giáo viên Hướng dẫn,
các Thầy Cô giáo trong bộ môn Khoa học máy tính và ban Chủ nhiệm khoa
Công nghệ thông tin trường Đại học Nông Nghiệp Hà Nội, cùng với sự giúp đỡ
của gia đình, bạn bè.
Em xin chân thành cảm ơn các Thầy Cô trong khoa Công nghệ thông tin
Trường Đại học Nông Nghiệp Hà Nội đã tạo điều kiện giúp đỡ em về kiến thức
và môi trường học tập để em hoàn thành tốt Khoá luận tốt nghiệp này.
Đặc biệt, em xin gửi lời cảm ơn sâu sắc tới cô Trần Thị Thu Huyền, đã
hướng dẫn và giúp đỡ em tận tình trong suốt thời gian qua. Em cũng xin gửi lời
cảm ơn đến anh Trần Văn Năm – đã giúp đỡ em hoàn thành tốt code của hệ
thống phần mềm mà em thực hiện cho khoá luận.
Cuối cùng em xin được cảm ơn Ban giám đốc, các anh chị và các trưởng
phòng Công ty Cổ phần Xây dựng Thương mại Thuận An đã giúp em cập nhật
thông tin và dữ liệu trong suốt quá trình làm khoá luận.
Em xin được gửi lời cảm ơn chân thành đến gia đình, bạn bè đã luôn ở bên
động viên, giúp đỡ và tạo mọi điều kiện thuận lợi để em hoàn thành đề tài cũng
như thời gian học tập tại trường Đại học Nông Nghiệp Hà Nội.
Trong quá trình thực hiện đề tài, do điều kiện khách quan cùng kinh nghiệm
thực tế của bản thân nên nội dung khóa luận còn nhiều thiếu sót. Kính mong
được các thầy, các cô và các bạn đóng góp ý kiến để đề tài của em được hoàn
thiện hơn.
Em xin chân thành cảm ơn!
Hà Nội, ngày 20 tháng 05 năm 2014
Sinh viên thực hiện
Nguyễn Thị Thêu
SVTH. Nguyễn Thị Thêu – THOK54


i


GVHD. TS. Trần Thị Thu Huyền

MỤC LỤC
LỜI CẢM ƠN........................................................................................................i
MỤC LỤC.............................................................................................................ii
DANH MỤC CÁC HÌNH....................................................................................iv
PHỤ LỤC A: CÁC THUẬT NGỮ VÀ TỪ VIẾT TẮT........................................v
PHẦN I: MỞ ĐẦU.............................................................................................1
1.1 ĐẶT VẤN ĐỀ.................................................................................................1
1.2 MỤC ĐÍCH VÀ YÊU CẦU............................................................................3
1.2.1 Mục đích.......................................................................................................3
1.2.2 Yêu cầu.........................................................................................................3
PHẦN II: TỔNG QUAN TÀI LIỆU..................................................................5
2.1 Tình hình Công nghệ Thông Tin trên Thế giới................................................5
2.2 Tình hình Công nghệ Thông Tin trong nước...................................................5
PHẦN III: ĐỐI TƯỢNG, NỘI DUNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU
...............................................................................................................................7
3.1 Đối tượng nghiên cứu......................................................................................7
3.2 Nội dung và phương pháp nghiên cứu............................................................7
3.2.1 Nội dung nghiên cứu....................................................................................7
3.2.2 Phương pháp nghiên cứu.............................................................................7
3.3 Địa điểm và thời gian thực tập........................................................................8
PHẦN IV: KẾT QUẢ VÀ THẢO LUẬN..........................................................9
4.1 CƠ SỞ LÝ THUYẾT......................................................................................9
4.1.1 Ngôn ngữ lập trình PHP...............................................................................9
4.1.2 CSS.............................................................................................................14

4.1.3 SQL............................................................................................................15
4.1.4 HTML.........................................................................................................18
4.1.5 Phần mềm Xampp Sever phiên bản 1.6.8..................................................20
SVTH. Nguyễn Thị Thêu – THOK54

ii


GVHD. TS. Trần Thị Thu Huyền

4.2 KHẢO SÁT YÊU CẦU BÀI TOÁN.............................................................22
4.3 KHẢO SÁT YÊU CẦU NGƯỜI DÙNG......................................................22
4.3.1 Đặc tả yêu cầu người dùng.........................................................................22
4.3.2 Đặc tả yêu cầu hệ thống.............................................................................23
4.4 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG VỀ MẶT CHỨC NĂNG..........23
4.4.1 Hệ thống hiện tại........................................................................................23
4.4.2 Đề xuất hệ thống mới.................................................................................25
4.4.3 Phân tích và thiết kế hệ thống....................................................................27
4.5 THIẾT KẾ CƠ SỞ DỮ LIỆU.......................................................................39
4.5.1 Thực thể liên kết.........................................................................................39
4.5.2 Các bảng dữ liệu.........................................................................................40
4.5.3 Một số hình ảnh của chương trình..............................................................42
PHẦN V: KẾT LUẬN VÀ ĐỀ NGHỊ..............................................................45
5.1 KẾT LUẬN...................................................................................................45
5.2 ĐỀ NGHỊ.......................................................................................................46
PHẦN VI: TÀI LIỆU THAM KHẢO..............................................................48

SVTH. Nguyễn Thị Thêu – THOK54

iii



GVHD. TS. Trần Thị Thu Huyền

DANH MỤC HÌNH
Hình 4.1 Quy trình tuyển dụng nhân sự hiện tại.................................................25
Hình 4.2 Hệ Thống Test Online trong quá trình tuyển dụng nhân sự.................27
Hình 4.4.1 Biểu đồ phân cấp chức năng của hệ thống Test Online.....................30
Hình 4.4.2 Biểu đồ phân cấp chức năng Nhà Quản Trị.......................................30
Hình 4.4.3 Biểu đồ phân cấp chức năng Ứng Viên.............................................31
Hình 4.4.4 Biểu đồ mức ngữ cảnh Nhà Quản Trị................................................31
Hình 4.4.5 Biểu đồ mức ngữ cảnh Ứng Viên......................................................32
Bảng 4.5.1 Nội dung câu hỏi...............................................................................43
Bảng 4.5.2 Danh mục..........................................................................................43
Bảng 4.5.3 Đề thi.................................................................................................43
Bảng 4.5.4 Câu hỏi_Đề thi..................................................................................43
Bảng 4.5.5 Độ khó của câu hỏi..........................................................................43
Bảng 4.5.6 Thông tin ứng viên...........................................................................44
Bảng 4.5.7 Quản trị viên.....................................................................................44
Bảng 4.5.8 Tin tức..............................................................................................44
Bảng 4.5.9 Kết quả làm bài thi...........................................................................44
Hình 4.5.10 Trang chủ.........................................................................................45
Hình 4.5.11 Ứng viên đăng nhập vào hệ thống...................................................45
Hình 4.5.12 Thông tin ứng viên sau khi đăng nhập...........................................46
Hình 4.5.13 Tin tức tuyển dụng.........................................................................46
Hình 4.5.14 Nhà quản trị đăng nhập hệ thống....................................................47

SVTH. Nguyễn Thị Thêu – THOK54

iv



GVHD. TS. Trần Thị Thu Huyền
PHỤ LỤC A: CÁC THUẬT NGỮ VÀ TỪ VIẾT TẮT

Tên thuật ngữ
CNTT
HTML
XML

HTTP

Diễn giải
Công nghệ thông tin
(HyperText Markup Language - Ngôn ngữ Đánh dấu Siêu vǎn
bản): Ngôn ngữ được sử dụng để tạo ra các trang World Wide
Web với các siêu liên kết và đánh dấu cho khuôn dạng vǎn bản.
(Extensible Markup Language - Ngôn ngữ Đánh dấu Mở rộng):
Một ngôn ngữ lập trình được phát triển bởi World Wide Web
Consortium (W3C-một tổ chức đưa ra các chuẩn cho World Wide
Web), thực chất là một phiên bản đơn giản hoá của Ngôn ngữ
Đánh dấu Tổng quát Tiêu chuẩn SGML (Standard Generalized
Markup Language) mà nó cho phép các nhà phát triển Web tạo ra
các thẻ tuỳ biến để tổ chức và phân tán nội dung một cách hiệu
quả hơn. W3C đưa ra XML 1.0 vào tháng 12/1997
( />(HyperText Transfer Protocol (Giao thức Truyền Siêu vǎn bản):
Giao thức thường được sử dụng để truyền thông tin từ các máy
phục vụ World Wide Web đến các trình duyệt và là lí do các địa
chỉ Web được bắt đầu với http://.


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úng vào trang
HTML.

CSS

(Cascading Style Sheet) kiểu thiết kế sử dụng nhiều lớp định
dạng chồng lên nhau. Cách đơn giản nhất để hiểu CSS là coi nó
như một phần mở rộng của HTML để giúp đơn giản hóa và cải
tiến việc thiết kế cho các trang web.

SQL

(Structured Query Language) là ngôn ngữ truy vấn cơ sở dữ liệu
(database) phổ dụng nhất hiện nay, bạn có thể dùng các lệnh
SQL để truy vấn database bất kỳ do hệ quản trị database nào.

PHP/FI

"Personal Home Page/Forms Interpreter", bao gồm một số các
chức năng cơ bản cho PHP.

SVTH. Nguyễn Thị Thêu – THOK54

v



GVHD. TS. Trần Thị Thu Huyền

PHẦN I: MỞ ĐẦU
1.1 ĐẶT VẤN ĐỀ
Ngày nay, đi kèm với xu thế phát triển chung của thời đại, công nghệ
thông tin đã trở thành một phần không thể thiếu của con người. Trên thế giới nói
chung và Việt Nam nói riêng, CNTT đã len lỏi vào trong mọi mặt của cuộc sống
từ trong gia đình đến các công sở, từ trong công tác văn phòng đến các lĩnh vực
nghiên cứu khoa học và quản lý, từ trong giáo dục đến quân sự,… Với việc ứng
dụng CNTT không những mang lại những lợi ích đáng kể cho các quốc gia mà
nó còn là một minh chứng rõ ràng nhất về vị thế và sự phát triển của quốc gia đó
trên trường quốc tế. Việt Nam nói riêng và các nước đang phát triển khác nói
chung, để có thể hòa nhập nhanh nhất với thế giới không còn cách nào khác là
phải phát triển và ứng dụng CNTT vào mọi mặt của cuộc sống.
Trước đây, khi Công nghệ thông tin còn chưa phổ biến, các hoạt động
văn thư và hành chính trong các cơ quan chủ yếu là các thao tác thủ công và phụ
thuộc rất nhiều vào sự góp mặt của con người. Các thao tác thủ công đó rất đơn
giản trong quy trình và dễ thực hiện các thao tác. Do đó, với các nhân viên có
chút kinh nghiệm và hiểu biết về nghiệp vụ đều có thể thực hiện được. Tuy
nhiên, nhược điểm của nó lại quá lớn: tốn thời gian, công sức, không cập nhật
thường xuyên, những rủi ro về mất mát thông tin, giấy tờ trong lưu trữ, gây lãng
phí không nhỏ về kết quả thông tin lưu trữ,… Với việc ứng dụng của CNTT đã
giảm tải được rất nhiều thời gian, công sức và nhân lực và đã thay đổi hoàn toàn
bộ mặt hoạt động của công tác quản lý. Các hoạt động cơ bản của công tác quản
lý như:
-

Lưu trữ văn bản, tài liệu,…
Xử lý và lập kế hoạch.

Nhận và lưu chuyển văn bản, tài liệu,…
Tạo và gửi văn bản, tài liệu,…

SVTH. Nguyễn Thị Thêu – THOK54

1


GVHD. TS. Trần Thị Thu Huyền

Đều có thể xử lý tự động hóa một phần hoặc toàn bộ bằng việc ứng dụng
các sản phẩm của CNTT.
Với những ưu thế vượt trội của các sản phẩm CNTT, việc ứng dụng
CNTT vào các lĩnh vực quản lý nói chung và lĩnh vực tuyển dụng nhân sự nói
riêng đã mang lại những lợi ích không nhỏ cho các nhà làm quản lý.
Nước ta hiện nay là một nước đang phát triển, nhu cầu việc làm của người
dân là rất lớn. Có rất nhiều công ty trên thế giới có số lượng nhân viên làm việc
với số lượng khổng lồ, ví dụ như công ty IBM, công ty SamSung, Sony…. Và
mỗi đợt tuyển dụng có tới hàng trăm, hàng ngàn hồ sơ đăng ký, nộp vào để dự
tuyển. Mỗi một đợt dự tuyển đã tiêu tốn rất nhiều thời gian, tiền bạc, và công
sức của các nhà tuyển dụng cũng như của các ứng viên khi tham gia dự tuyển,
bởi vì họ phải sàng lọc hồ sơ, sau đó gọi từng người đến làm một bài phỏng vấn,
công việc tưởng chừng như rất nhàn nhã này thực ra là rất vất vả và tiêu tốn thời
gian, phải mất mấy tháng trời thì họ mới có thể lựa chọn ra được những ứng
viên ưu tú nhất để có thể làm việc tại công ty.
Công việc này có thể sẽ được rút ngắn thời gian đi rất nhiều nếu như ta
loại bớt được các ứng viên dự tuyển, chỉ còn lại những người thật sự xuất sắc
nhất trong những người dự tuyển thì sẽ được tham gia thi tuyển và phỏng vấn.
Có rất nhiều người thắc mắc làm thế nào để loại bớt được những ứng viên,
những hồ sơ kém chất lượng? rất đơn giản là tạo ra được một phần mềm sàng

lọc bớt hồ sơ dự tuyển, nghĩa là loại bớt các hồ sơ dự tuyển kém chất lượng đi,
khi loại bớt các hồ sơ dự tuyển thì công việc còn lại là rất đơn giản và dễ dàng,
nhà tuyển dụng chỉ cần gọi những người dự tuyển đạt yêu cầu đến và phỏng vấn
trực tiếp họ, thay vì mất hàng tháng với việc tuyển dụng như cũ.
Từ nhu cầu thực tế đó, việc xây dựng một chương trình hỗ trợ công việc
xét tuyển nhân sự là thực sự cần thiết. Từ đó có thể giải quyết được các bài toán
mà nhà tuyển dụng đã phải đau đầu suốt nhiều năm qua và làm cho công việc
này sẽ dễ dàng hơn rất nhiều với những nhà tuyển dụng, khi xây dựng thành
SVTH. Nguyễn Thị Thêu – THOK54

2


GVHD. TS. Trần Thị Thu Huyền

công hệ thống phần mềm sẽ giảm được rất nhiều những chi phí, thời gian cho
việc tuyển dụng.
Trên cơ sở yêu cầu cấp bách từ thực tế, cùng với các kiến thức đã tích lũy
được trong suốt 5 năm học trên ghế nhà trường em đã lựa chọn đề tài: “Xây
dựng PHẦN MỀM Sàng Lọc Trực Tuyến Ứng Viên Tuyển Dụng”.
1.2 MỤC ĐÍCH VÀ YÊU CẦU
1.2.1 Mục đích
 Xây dựng phần mềm sàng lọc trực tuyến ứng viên tuyển dụng ứng dụng
trong công tác tuyển dụng nhân sự của Công ty Xây dựng Thương mại Thuận
An.
 Tận dụng và phát huy sức mạnh của máy tính và công nghệ cho công tác
quản lý nghiệp vụ của công ty.
 Bổ sung và nâng cao kiến thức của bản thân về kỹ năng sáng tạo, tư
duy và lập trình ứng dụng cũng như khả năng làm việc độc lập.
1.2.2 Yêu cầu

 Phần mềm chạy trên máy tính đơn.
 Phần mềm xây dựng trên nền tảng các ứng dụng Web. Chạy trên mạng
Internet hay Internet.
 Giao diện thân thiện, đẹp mắt.
 Đảm bảo tính bí mật của những thông tin nội bộ.
 Có khả năng tích hợp với các phần mềm ứng dụng khác (Mail,
Facebook…).
 Thao tác đơn giản, thuận tiện, dễ sử dụng.
 Hệ thống bao gồm các chức năng cơ bản:
1. Quản lý tài khoản người dùng, người quản trị
2. Quản lý tin tức
3. Quản lý danh mục
4. Quản lý danh sách ứng viên
5. Quản lý độ khó câu hỏi
6. Quản lý câu hỏi, đề thi
7. Thống kê báo cáo

SVTH. Nguyễn Thị Thêu – THOK54

3


GVHD. TS. Trần Thị Thu Huyền

SVTH. Nguyễn Thị Thêu – THOK54

4


GVHD. TS. Trần Thị Thu Huyền


PHẦN II: TỔNG QUAN TÀI LIỆU
2.1 Tình hình Công nghệ Thông Tin trên Thế giới
Công nghệ Thông tin đang làm biến đổi sâu sắc đời sống, kinh tế, văn
hóa, xã hội của nhiều nước trên Thế giới, trong đó có Việt Nam. Công nghệ
Thông tin được ứng dụng rộng rãi trong mọi lĩnh vực, thúc đẩy nhanh quá trình
tăng trưởng, chuyển dịch cơ cấu kinh tế, thay đổi cơ cấu xã hội. Góp phần tạo ra
nhiều ngành kinh tế mới, làm thay đổi sâu sắc ngành công nghiệp hiện đại, tăng
khả năng cạnh tranh các ngành công nghiệp truyền thống, thông qua một hệ
thống hỗ trợ như viễn thông, thương mại điện tử, dịch vụ truyền thông đa
phương tiện. Công nghệ Thông Tin đã tạo được những bước phát triển vượt bậc,
tuy nghèo và đi sâu song biết tận dụng cơ hội ứng dụng và phát triển của nó mà
đưa các nước bước mạnh trên đà phát triển, tiêu biểu ở đây như Ấn Độ, Trung
Quốc, Hàn Quốc.
Các tổ chức Quốc tế đã đánh giá cao vai trò của CNTT đối với phát triển
kinh tế - xã hội tại các nước trên thế giới, do đó đã tổ chức nhiều diễn đàn, hội
nghị, hội thảo để tuyên truyền, quảng bá, tổng kết kinh nghiệm, nêu bài học,
khuyến cáo chương trình hoạt động, hướng dẫn các nước hoạch định chiến lược
ứng dụng và phát triển Công nghệ Thông tin.
Tính đến năm 2012, có đến 2,4 tỷ người sử dụng Internet trên toàn cầu.
Nên tính cập nhật thông tin và nhu cầu tìm hiểu của người sử dụng ngày càng
cao. Việc áp dụng các ứng dụng của Công nghệ thông tin vào thực tế ngày càng
được chú trọng.
(Nguồn: />2.2 Tình hình Công nghệ Thông Tin trong nước
Cùng với sự phát triển nhanh chóng của CNTT nói chung và công nghệ
phần mềm nói riêng. Internet đang ngày càng phổ biến ở nước ta, các ứng dụng

SVTH. Nguyễn Thị Thêu – THOK54

5



GVHD. TS. Trần Thị Thu Huyền

Web, các phần mềm hỗ trợ đang càng ngày được sử dụng rộng rãi và có vai trò
quan trọng trong đời sống.
Công nghệ Thông tin đã và đang có tác động lan tỏa, thúc đẩy phát triển
nhiều ngành, nhiều lĩnh vực kinh tế - xã hội. Hạ tầng viễn thông và dịch vụ viễn
thông Việt Nam đã có vị trí trên bản đồ Công nghệ Thông tin thế giới. Mức độ
triển khai chính phủ điện tử của Việt Nam đã vươn lên đứng thứ 4 trong các
quốc gia khu vực Đông Nam Á. Việt Nam đã đứng trong nhóm 10 nước hấp dẫn
nhất về gia công phần mềm và trở thành đối tác lớn thứ hai của Nhật Bản.
Tuy CNTT rất phát triển, nhưng ở một số lĩnh vực, ngành nghề thì các
ứng dụng lại chưa được áp dụng một cách triệt để. Một số doanh nghiệp vẫn còn
áp dụng các phần mềm thủ công, mất khá nhiều thời gian và tiền bạc.

SVTH. Nguyễn Thị Thêu – THOK54

6


GVHD. TS. Trần Thị Thu Huyền

PHẦN III
ĐỐI TƯỢNG, NỘI DUNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU
3.1 Đối tượng nghiên cứu
Đối tượng nghiên cứu của đề tài là :
 Các luồng công việc trong công tác tuyển dụng nhân sự của công ty
(lập kế hoạch, yêu cầu chất lượng nguồn nhân lực về trình độ văn hóa, sức khỏe,
trình độ chuyên môn, năng lực, phẩm chất….).

 Các ứng viên tham gia dự tuyển và các nhà tuyển dụng.
 Các bộ phận có liên quan (phòng nhân sự, phòng kế toán, phòng tài
chính….).
3.2 Nội dung và phương pháp nghiên cứu
3.2.1 Nội dung nghiên cứu
 Tìm hiểu phần mềm hỗ trợ Xampp, Adobe Dreamweaver CS5.
 Tìm hiểu các ngôn ngữ hỗ trợ lập trình web như PHP, CSS, HTML,
MySQL.
 Khảo sát, phân tích, thiết kế hệ thống.
 Tìm hiểu cách thức xây dựng phần mềm ứng dụng web.
3.2.2 Phương pháp nghiên cứu
3.2.2.1 Nhóm phương pháp nghiên cứu bằng lý luận
 Thu thập, phân tích, tổng hợp, xử lý dữ liệu liên quan đến đề tài.
3.2.2.2 Nhóm phương pháp nghiên cứu bằng thực tiễn
 Tham khảo tài liệu, tham khảo ý kiến của các nhà tuyển dụng và các
ứng viên, phần mềm tương tự đã được áp dụng trong Công ty Tài chính PPF –
số 1 Thái Hà - Đống Đa – Hà Nội.

SVTH. Nguyễn Thị Thêu – THOK54

7


GVHD. TS. Trần Thị Thu Huyền

 Tham khảo ý kiến của bạn bè, hướng dẫn của thầy cô, kết hợp với sự
mày mò, sáng tạo ý tưởng của bản thân.
3.2.2.3 Nhóm phương pháp nghiên cứu hỗ trợ
 Khảo sát, phân tích, thiết kế hệ thống.
 Viết chương trình.

 Kiểm thử, thực nghiệm.
3.3 Địa điểm và thời gian thực tập
 Bộ môn Khoa Học Máy Tính, Khoa CNTT, trường ĐH Nông Nghiệp
Hà Nội.
 Thời gian nghiên cứu từ ngày15/01/2014 đến 30/05/2014.

SVTH. Nguyễn Thị Thêu – THOK54

8


GVHD. TS. Trần Thị Thu Huyền

PHẦN IV
KẾT QUẢ VÀ THẢO LUẬN
4.1 CƠ SỞ LÝ THUYẾT
4.1.1 Ngôn ngữ lập trình PHP
4.1.1.1 Giới thiệu chung
PHP (viết tắt hồi quy "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úng và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 C và Java, dễ
học và thời gian xâ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.Đoạn mã sau minh họa giúp cách viết PHP lồng vào các trang
HTML dễ dàng như thế nào:
<html>
<head>
<title>Mã mẫu</title>

</head>
<body>
<?php echo "Chào thế giới PHP!"; ?>
</body>
</html>

SVTH. Nguyễn Thị Thêu – THOK54

9


GVHD. TS. Trần Thị Thu Huyền

Thẻ <?php và thẻ ?> sẽ đánh đấu sự bắt đầu và sự kết thúc của phần mã
PHP qua đó máy chủ biết để xử lý và dịch mã cho đúng. Đây là một điểm khá
tiện lợi của PHP giúp cho việc viết mã PHP trở nên khá trực quan và dễ dàng
trong việc xây dựng phần giao diện ứng dụng HTTP. Ngôn ngữ, các thư viện, tài
liệu gốc của PHP được xây dựng bởi cộng đồng và có sự đóng góp rất lớn của
Zend Inc., công ty do các nhà phát triển cốt lõi của PHP lập nên nhằm tạo ra
một môi trường chuyên nghiệp để đưa PHP phát triển ở quy mô xí nghiệp.
4.1.1.2 Lịch sử phát triển của PHP
PHP được phát triển từ một sản phẩm có tên là PHP/FI. PHP/FI do
Rasmus Lerdorf tạo ra năm 1995, ban đầu được xem như là một tập con đơn
giản của các mã kịch bản Perl để theo dõi tình hình truy cập đến bản sơ yếu lý
lịch của ông trên mạng. Ông đã đặt tên cho bộ mã kịch bản này là 'Personal
Home Page Tools'. Khi cần đến các chức năng rộng hơn, Rasmus đã viết ra một
bộ thực thi bằng C lớn hơn để có thể truy vấn tới các cơ sở dữ liệu và giúp cho
người sử dụng phát triển các ứng dụng web đơn giản. Rasmus đã quyết định
công bố mã nguồn của PHP/FI cho mọi người xem, sử dụng cũng như sửa các
lỗi có trong nó đồng thời cải tiến mã nguồn.

PHP/FI, viết tắt từ "Personal Home Page/Forms Interpreter", bao gồm một
số các chức năng cơ bản cho PHP như ta đã biết đến chúng ngày nay. Nó có các
biến kiểu như Perl, thông dịch tự động các biến của form và cú pháp HTML
nhúng. Cú pháp này giống như của Perl, mặc dù hạn chế hơn nhiều, đơn giản và
có phần thiếu nhất quán.
Vào năm 1997, PHP/FI 2.0, lần viết lại thứ hai của phiên bản C, đã thu
hút được hàng ngàn người sử dụng trên toàn thế giới với xấp xỉ 50.000 tên miền
đã được ghi nhận là có cài đặt nó, chiếm khoảng 1% số tên miền có trên mạng
Internet. Tuy đã có tới hàng nghìn người tham gia đóng góp vào việc tu chỉnh
mã nguồn của dự án này thì vào thời đó nó vẫn chủ yếu chỉ là dự án của một
người.
SVTH. Nguyễn Thị Thêu – THOK54

10


GVHD. TS. Trần Thị Thu Huyền

PHP/FI 2.0 được chính thức công bố vào tháng 11 năm 1997, sau một thời
gian khá dài chỉ được công bố dưới dạng các bản beta. Nhưng không lâu sau đó,
nó đã được thay thế bởi các bản alpha đầu tiên của PHP 3.0.
PHP3
PHP 3.0 là phiên bản đầu tiên cho chúng ta thấy một hình ảnh gần gũi với
các phiên bản PHP mà chúng ta được biết ngày nay. Nó đã được Andi Gutmans
và Zeev Suraski tạo ra năm 1997 sau khi viết lại hoàn toàn bộ mã nguồn trước
đó. Lý do chính mà họ đã tạo ra phiên bản này là do nhận họ thấy PHP/FI 2.0
hết sức yếu kém trong việc phát triển các ứng dụng thương mại điện tử mà họ
đang xúc tiến trong một dự án của trường đại học. Trong một nỗ lực hợp tác và
bắt đầu xây dựng dựa trên cơ sở người dùng đã có của PHP/FI, Andi, Rasmus và
Zeev đã quyết định hợp tác và công bố PHP 3.0 như là phiên bản thế hệ kế tiếp

của PHP/FI 2.0, và chấm dứt phát triển PHP/FI 2.0.
Một trong những sức mạnh lớn nhất của PHP 3.0 là các tính năng mở rộng
mạnh mẽ của nó. Ngoài khả năng cung cấp cho người dùng cuối một cơ sở hạ
tầng chặt chẽ dùng cho nhiều cơ sở dữ liệu, giao thức và API khác nhau, các tính
năng mở rộng của PHP 3.0 đã thu hút rất nhiều nhà phát triển tham gia và đề
xuất các mô đun mở rộng mới. Hoàn toàn có thể kết luận được rằng đây chính là
điểm mấu chốt dẫn đến thành công vang dội của PHP 3.0. Các tính năng khác
được giới thiệu trong PHP 3.0 gồm có hỗ trợ cú pháp hướng đối tượng và nhiều
cú pháp ngôn ngữ nhất quán khác.
Ngôn ngữ hoàn toàn mới đã được công bố dưới một cái tên mới, xóa bỏ
mối liên hệ với việc sử dụng vào mục đích cá nhân hạn hẹp mà cái tên PHP/FI
2.0 gợi nhắc. Nó đã được đặt tên ngắn gọn là 'PHP', một kiểu viết tắt hồi quy của
"PHP: Hypertext Preprocessor".
Vào cuối năm 1998, PHP đã phát triển được con số cài đặt lên tới hàng
chục ngàn người sử dụng và hàng chục ngàn Website báo cáo là đã cài nó. Vào
SVTH. Nguyễn Thị Thêu – THOK54

11


GVHD. TS. Trần Thị Thu Huyền

thời kì đỉnh cao, PHP 3.0 đã được cài đặt cho xấp xỉ 10% số máy chủ Web có
trên mạng Internet.
PHP 3.0 đã chính thức được công bố vào tháng 6 năm 1998, sau thời gian
9 tháng được cộng đồng kiểm nghiệm.
PHP 4
Vào mùa đông năm 1998, ngay sau khi PHP 3.0 chính thức được công bố,
Andi Gutmans và Zeev Suraski đã bắt đầu bắt tay vào việc viết lại phần lõi của
PHP. Mục đích thiết kế là nhằm cải tiến tốc độ xử lý các ứng dụng phức tạp, và

cải tiến tính mô đun của cơ sở mã PHP. Những ứng dụng như vậy đã chạy được
trên PHP 3.0 dựa trên các tính năng mới và sự hỗ trợ khá nhiều các cơ sở dữ liệu
và API của bên thứ ba, nhưng PHP 3.0 đã không được thiết kế để xử lý các ứng
dụng phức tạp như thế này một cách có hiệu quả.
Một động cơ mới, có tên 'Zend Engine' (ghép từ các chữ đầu trong tên của
Zeev và Andi), đã đáp ứng được các nhu cầu thiết kế này một cách thành công,
và lần đầu tiên được giới thiệu vào giữa năm 1999. PHP 4.0, dựa trên động cơ
này, và đi kèm với hàng loạt các tính năng mới bổ sung, đã chính thức được
công bố vào tháng 5 năm 2000, gần 2 năm sau khi bản PHP 3.0 ra đời. Ngoài tốc
độ xử lý được cải thiện rất nhiều, PHP 4.0 đem đến các tính năng chủ yếu khác
gồm có sự hỗ trợ nhiều máy chủ Web hơn, hỗ trợ phiên làm việc HTTP, tạo bộ
đệm thông tin đầu ra, nhiều cách xử lý thông tin người sử dụng nhập vào bảo
mật hơn và cung cấp một vài các cấu trúc ngôn ngữ mới.
Với PHP 4, số nhà phát triển dùng PHP đã lên đến hàng trăm nghìn và
hàng triệu site đã công bố cài đặt PHP, chiếm khoảng 20% số tên miền trên
mạng Internet.
Nhóm phát triển PHP cũng đã lên tới con số hàng nghìn người và nhiều
nghìn người khác tham gia vào các dự án có liên quan đến PHP như PEAR,
PECL và tài liệu kĩ thuật cho PHP.
PHP 5
SVTH. Nguyễn Thị Thêu – THOK54

12


GVHD. TS. Trần Thị Thu Huyền

Sự thành công hết sức to lớn của PHP 4.0 đã không làm cho nhóm phát
triển PHP tự mãn.Cộng đồng php đã nhanh chóng giúp họ nhận ra những yếu
kém của PHP 4 đặc biệt với khả năng hỗ trợ lập trình hướng đối tượng (OOP),

xử lý XML, không hỗ trợ giao thức máy khách mới của MySQL 4.1 và 5.0, hỗ
trợ dịch vụ web yếu. Những điểm này chính là mục đích để Zeev và Andi viết
Zend Engine 2.0, lõi của PHP 5.0. Một thảo luận trên Slashdot đã cho thấy việc
phát triển PHP 5.0 có thể đã bắt đầu vào thời điểm tháng 12 năm 2002 nhưng
những bài phỏng vấn Zeev liên quan đến phiên bản này thì đã có mặt trên mạng
Internet vào khoảng tháng 7 năm 2002. Ngày 29 tháng 6 năm 2003, PHP 5 Beta
1 đã chính thức được công bố để cộng đồng kiểm nghiệm. Đó cũng là phiên bản
đầu tiên của Zend Engine 2.0. Phiên bản Beta 2 sau đó đã ra mắt vào tháng 10 năm
2003 với sự xuất hiện của hai tính năng rất được chờ đợi: Iterators, Reflection nhưng
namespaces một tính năng gây tranh cãi khác đã bị loại khỏi mã nguồn. Ngày 21 tháng
12 năm 2003: PHP 5 Beta 3 đã được công bố để kiểm tra với việc phân phối kèm với
Tidy, bỏ hỗ trợ Windows 95, khả năng gọi các hàm PHP bên trong XSLT, sửa chữa
nhiều lỗi và thêm khá nhiều hàm mới. PHP 5 bản chính thức đã ra mắt ngày 13 tháng
7 năm 2004 sau một chuỗi khá dài các bản kiểm tra thử bao gồm Beta 4, RC 1, RC2,
RC3. Mặc dù coi đây là phiên bản sản xuất đầu tiên nhưng PHP 5.0 vẫn còn một
số lỗi trong đó đáng kể là lỗi xác thực HTTP.
Ngày 14 tháng 7 năm 2005, PHP 5.1 Beta 3 được PHP Team công bố
đánh dấu sự chín muồi mới của PHP với sự có mặt của PDO, một nỗ lực trong
việc tạo ra một hệ thống API nhất quán trong việc truy cập cơ sở dữ liệu và thực
hiện các câu truy vấn. Ngoài ra, trong PHP 5.1, các nhà phát triển PHP tiếp tục
có những cải tiến trong nhân Zend Engine 2, nâng cấp mô đun PCRE lên bản
PCRE 5.0 cùng những tính năng và cải tiến mới trong SOAP, streams và SPL
PHP 6
Hiện nay phiên bản tiếp theo của PHP đang được phát triển, PHP 6 bản sử
dụng thử đã có thể được download tại địa chỉ . Phiên bản
SVTH. Nguyễn Thị Thêu – THOK54

13



GVHD. TS. Trần Thị Thu Huyền

PHP 6 được kỳ vọng sẽ lấp đầy những khiếm khuyết của PHP ở phiên bản hiện
tại, ví dụ: hỗ trợ namespace (hiện tại các nhà phát triển vẫn chưa công bố rõ ràng
về vấn đề này); hỗ trợ Unicode; sử dụng PDO làm API chuẩn cho việc truy cập
cơ sở dữ liệu, các API cũ sẽ bị đưa ra thành thư viện PECL...
4.1.2 CSS
a. Khái niệm về CSS :
CSS là chữ viết tắt của cụm từ tiếng Anh “Cascading Style Sheet”, là kiểu
thiết kế sử dụng nhiều lớp định dạng chồng lên nhau. CSS được tổ chức World
Wide Web (W3C ) giới thiệu vào năm 1996. Cách đơn giản nhất để hiểu CSS là
coi nó như một phần mở rộng của HTML để giúp đơn giản hóa và cải tiến việc
thiết kế cho các trang web.
Khi thế giới web mới ra đời người ta thường dùng các thẻ HTML để dàn
trang. Việc dàn trang đó bao gồm chia trang web thành các bảng (table), ô (cell),
để add text, add ảnh, kiểu chữ, màu sắc... Khi mà công nghệ web ngày càng phát
triển người ta nhận thấy việc dàn trang bằng các bảng ngày càng trở nên bất tiện.
Khối lượng các tag của HTML trong một trang web quá nhiều khiến các
coder khó lòng chỉnh sửa một cách nhanh chóng và chính xác. Vì vậy ngôn ngữ
CSS ra đời giải quyết các nhược điểm của HTML. Người ta có thể sử dụng CSS
để quản lý các tag của HTML và đồng thời có thể định nghĩa, thêm các thuộc
tính cần thiết. Và người ta sử dụng CSS như một công cụ dàn trang khá mạnh,
nó sẽ tạo ra bố cục một trang web khá rõ ràng rành mạch. Nhưng nhược điểm
cũng là đây vì mỗi trình duyệt thường có sự sai lệch một chút ít khi hiện thị các
website về CSS.
Ưu điểm của CSS :
Dễ thay đổi và nâng cấp.
Giảm dung lượng website, hạn chế khối lượng các tag HTML, tăng tốc
độ load web.
Thời gian phát triển website trở lên nhanh hơn.

SVTH. Nguyễn Thị Thêu – THOK54

14


GVHD. TS. Trần Thị Thu Huyền

Khả năng định dạng phong phú.
Dễ viết.
Hỗ trợ in ấn tốt.
Các trang web tách biệt phần thiết kế và nội dung.
b. Các đặc tính cơ bản của CSS :
CSS quy định cá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ẻ đó (front chữ, màu sắc …). Để cho thuận tiện chúng ta có
thể đặt toàn bộ các thuộc tính của thẻ vào trong một file riêng có phần mở rộng
là “.CSS” thường hay đặt tên nó là Stylesheet.css.
CSS phá vỡ giới hạn trong thiết kế web, bởi chỉ cần một file CSS có thể
cho phép chúng ta quản lý định dạng và layout trên rất nhiều trang khác nhau.
Các nhà phát triển Web có thể định nghĩa sẵn thuộc tính của một số thẻ HTML
nào đó và sau đó có thể dung lại trên nhiều trang khác.
Có thể khai báo CSS bằng nhiều cách khác nhau. Chúng ta có thể đặt đoạn
CSS phía trong thẻ <head>…</head>, hoặc ghi nó ra một file riêng có phần mở
rộng “.CSS”, ngoài ra chúng ta còn có thể đặt chúng trong từng thẻ HTML riêng
biệt . Vậy style nào sẽ được áp dụng khi có nhiều hơn một style đuợc chỉ định
cho một thành phần HTML? Tùy vào từng cách đặt khác nhau mà mức độ ưu
tiên cho nó cũng khác nhau . Mức độ ưu tiên này tuân theo thứ tự sau :
o Style nội tuyến :Style đặt trong từng thẻ HTML riêng biệt.
o Style bên trong :Style đặt trong cặp thẻ <head>…</head>.
o Style bên ngoài : Style đặt trong file có đuôi “.css”
o Style theo mặc định của trình duyệt.

CSS có tính kế thừa và tính kết hợp.
4.1.3 SQL
a. Một số khái niệm :

SVTH. Nguyễn Thị Thêu – THOK54

15


GVHD. TS. Trần Thị Thu Huyền

SQL (Structured Query Language) là ngôn ngữ truy vấn cơ sở dữ liệu
(database) phổ dụng nhất hiện nay, bạn có thể dùng các lệnh SQL để truy vấn
database bất kỳ do hệ quản trị database nào.
SQL Server là hệ quản trị cơ sở dữ liệu của Microsoft.
MySQL là hệ quản trị cơ sở dữ liệu có mã nguồn mở có thể chạy trên nhiều
platform như Linux, WinXP... Mysql là hệ quản trị dữ liệu miễn phí, được tích
hợp sử dụng chung với apache, 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 Mysql khô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.
T-SQL (Transact SQL) là ngôn ngữ SQL mở rộng dựa trên SQL chuẩn của
ISO (International Organization for Standardization) và ANSI (American
National Standards Institute) được sử dụng trong SQL Server.
b. Giới thiệu về My SQL :
 My SQL là gì ?
MySQL là một database Server, là hệ thống quản lý cơ sở dữ liệu quan hệ.

Trong việc lưu trữ, tìm kiếm, sắp xếp và truy vấn dữ liệu, nó tỏ ra rất nhanh và
mạnh mẽ. MySQL Server điều khiển truy cập dữ liệu đa người dùng cùng một
thời điểm, cung cấp khả năng truy cập dữ liệu nhanh, đảm bảo cho người sử
dụng được cấp quyền truy cập dữ liệu của hệ thống. Do vậy MySQL là đa người
dùng đa luồng. Nó sử dụng các câu lệnh truy vấn SQL (ngôn ngữ truy vấn có
cấu trúc) là một chuẩn ngôn ngữ truy vấn cơ sở dữ liệu hiện nay trên Web.
MySQL được chính thức sử dụng rộng rãi năm 1996 nhưng nó đã hình thành từ
năm 1979.

SVTH. Nguyễn Thị Thêu – THOK54

16


GVHD. TS. Trần Thị Thu Huyền

MySQL có thể quản lý tới hàng Terabyte dữ liệu, hàng triệu bản ghi, chạy
trên nhiều môi trường khác nhau, có giao diện tương đối dễ sử dụng, có thể truy
vấn cơ sở dữ liệu thông qua câu lệnh SQL.
MySQL thường được sử dụng chung với PHP trong những trang Web cần
sử dụng đến cơ sở dữ liệu.

 Sơ lược My SQL :
Các cơ sở dữ liệu trong MySQL được tạo hoàn toàn bằng lệnh. Các lệnh
trong SQL được kết thúc bởi dấu chấm phẩy (;). Trừ một số lệnh như Quit là
trường hợp đặc biệt.
Khi thực hiện lệnh, MySQL chuyển nó đến Server và yêu cầu thực hiện
lệnh. Do đó “mysql>” ở cuối cùng khi bấm enter thực hiện lệnh báo hiệu yêu
cầu đã được thực hiện.
MySQL đưa ra kết quả dưới dạng một bảng gồm các cột và hàng.

MySQL cũng đưa ra bao nhiêu hàng được trả về và trong vòng bao nhiêu giây.
Ngoài ra MySQL cũng thể hiện được những phép tính đơn giản.
Các lệnh trong MySQL có thể viết trên một hàng, hoặc nhiều hàng.
MySQL có 4 loại dấu nhắc. Sau đây là ý nghĩa của các dấu nhắc:
Prompt: ý nghĩa
Mysql>: sẵn sàng cho một lệnh mới
_>: chờ cho hàng kế tiếp của một lệnh có nhiều hàng
‘>: chờ cho hàng kế tiếp thực hiện bởi 1 chuỗi trong dấu nháy đơn
“>: chờ cho hàng kế tiếp thực hiện bởi một chuỗi trong dấu nháy
 Các lệnh cơ bản trong My SQL :
SHOW DATABASE; // Liệt kê tất cả các database có trên Server

SVTH. Nguyễn Thị Thêu – THOK54

17


GVHD. TS. Trần Thị Thu Huyền

USE TÊN DATABASE; // Lựa chọn sử dụng database, nếu database có
trên Server, máy sẽ báo là database changed
CREAT DATABASE TÊN DATABASE; // Tạo database mới
SHOW TABLES; // Liệt kê các bảng cho database
CREAT TABLE TÊN TABALE; // Tạo bảng cho database.
DESCRIBE TÊN TABLAE; // Mô tả bảng đã tạo.
INSERT INTO TÊN TABLE [ COLUMN 1, COLUMN 2, .... ] VALUES
(VALUE 1, VALUE 2, ... ); // Đưa dữ liệu vào bảng.
SELECT items
FROM tables
[ WHERE điều kiện ]

[ GROUP BY group_type ]
[ HAVING where_definition ]
[ ORDER BY order_type]
[ LIMIT limit_criteria ]
// Truy vấn cơ sở dữ liệu trong các bảng.
LOAD DATA INFILE “TÊN FILE. EXCEPTION” INTO TABLE
TÊN TABLE; // Nhập dữ liệu vào bảng từ trình soạn thảo văn bản khác.
DELETE FROM table
[ WHERE condition ]
[ LIMIT number]
// Xóa dữ liệu trong bảng
UPDATE tablename
SET column1 = expression1, column2 = expression2, ....
[ WHERE condition ]
[ LIMIT number ]
ALTER TABLE tên table RENAME tên table mới // Thay đổi tên bảng
ALTER TABLE table_name ADD COLUMN column_name column atributes.
SVTH. Nguyễn Thị Thêu – THOK54

18


GVHD. TS. Trần Thị Thu Huyền

// Thêm cột vào bảng.
ALTER TABLE table_name DROP column_name // Xóa cột trong bảng
4.1.4 HTML
a. Khái niệm chung
Ngôn ngữ đánh dấu siêu văn bản HTML( Hypertext Markup Langgue) là
một cách đưa vào văn bản nhiều thuộc tính cần thiết để có thể truyền thông

quảng bá trên mạng toàn cầu WWW ( World Wide Web ). HTML cho phép đưa
hình ảnh đồ họa vào văn bản và tạo những tài liệu siêu văn bản có khả năng đối
thoại tương tác với người dùng.
HTML chủ yếu xoay quanh khái niệm “tiêu thức”( tag hay thẻ) làm nền
tảng. Để tạo ra một tại liệu siêu văn bản, ta có thể dùng bất cứ một chương trình
soạn thảo nào ví dụ như NC, EDIT của DOS, Notepad hay Wordpad của
Windows… và chỉ cần nắm vững các thẻ của HTML và chú ý khi lưu thì lưu
dưới dạng đuôi .html hoặc .htm. Song có một hạn chế là dạng văn bản khi soạn
với khi xem sau này trên WWW là không giống nhau.
Ngày nay do sự phát triển của mạng toàn cầu , HTML cũng ngày càng trở
nên phức tạp và hoàn thiện hơn để đáp ứng được những yêu cầu mới nảy sinh
trong quá trình phát triển đó ( như âm thanh, hình ảnh động, hay điều khiển từ
xa, hiện thực ảo …) . Người ta gọi đó là những phiên bản của HTML và đánh số
để biểu thị.
Một trong những điểm mạnh của HTML là một văn bản bất kì nếu tuân
thủ tiêu chuẩn của HTML đều có thể hiện được lên màn hình hay in ra, tóm lại
là hiểu được, bởi bất kì loại phần mềm hay máy tính nào mà người dùng có,
không phân biệt Netscape trên Windows hay Lynx trên Unix, thậm chí cho
người khiếm thị bằng phần mềm đặc biệt.
b. Ưu nhược điểm của HTML
Ưu điểm : ngôn ngữ HTML có nhiều ưu điểm so với các ngôn ngữ khác đó là :
Dễ đọc , dễ hiểu, dễ sử dụng
SVTH. Nguyễn Thị Thêu – THOK54

19


×