Tải bản đầy đủ (.pdf) (71 trang)

Xây dựng website hỗ trợ tra cứu các bài thuốc đông y

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 (2.76 MB, 71 trang )

Niên khóa: 2012-2016

VIỆN ĐẠI HỌC MỞ HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN

XÂY DỰNG WEBSITE HỖ TRỢ TRA CỨU CÁC BÀI THUỐC ĐÔNG Y

ĐỖ VĂN CHUYÊN

XÂY DỰNG WEBSITE HỖ TRỢ TRA CỨU
CÁC BÀI THUỐC ĐÔNG Y
Chuyên ngành: Công nghệ thông tin

ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC

Hà Nội – Năm 2015

Hà Nội, 2016


VIỆN ĐẠI HỌC MỞ HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN

ĐỖ VĂN CHUYÊN

XÂY DỰNG WEBSITE HỖ TRỢ TRA CỨU
CÁC BÀI THUỐC ĐÔNG Y
Chuyên ngành: Công nghệ thông tin
Giáo viên hướng dẫn: ThS.Nguyễn Thùy Linh

ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC



Hà Nộ

Hà Nội, 2016


VIỆN ĐẠI HỌC MỞ HÀ NỘI

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

KHOA CÔNG NGHỆ THÔNG TIN

Độc lập – Tự do – Hạnh phúc
Hà nội, ngày 21 tháng 4 năm 2016

NHIỆM VỤ CỦA ĐỒ ÁN TỐT NGHIỆP
Họ và tên: Đỗ Văn Chuyên

Giới tính: Nam

Ngày, tháng, năm sinh: 15/12/1994

Nơi sinh: Hưng Yên

Chuyên ngành: Công nghệ thông tin

Mã số: 12A10010161

1. TÊN ĐỀ TÀI
Xây dựng website hỗ trợ tra cứu các bài thuốc Đông Y

2. NHIỆM VỤ VÀ NỘI DUNG
- Nghiên cứu và tìm hiểu công nghệ PHP và hệ quản trị MySQL;
- Khảo sát hệ thống và tìm hiểu nghiệp vụ của nhà thuốc Đông Y;
- Phân tích thiết kế hệ thống;
- Xây dựng chương trình bao gồm đầy đủ các tính năng cơ bản cho nhà quản
trị và khách hàng:
+ Khách hàng vãng lai:
• Đăng kí làm thành viên;
• Tra cứu và xem thông tin bài viết;
+ Khách hàng thành viên: là thành viên đã đăng kí hoặc đăng nhập. Ngoài
những chức năng của khách vãng lai thì thành viên còn có thêm một số chức
năng khác dưới sự kiểm duyệt Admin:
o Đăng và cập nhật bài thuốc;


o Trả lời, hỏi đáp thắc mắc;
o Ghi nhớ lịch sử tra cứu;
o Chia sẻ mạng xã hội (Facebook, Twinter,… );
+ Người quản trị:
• Quản trị hệ thống;
• Quản lí cây thuốc;
• Quản lí nhóm bệnh;
• Quản lí bài thuốc;
• Quản lí hỏi đáp;
• Quản lí bình luận;
• Quản lí danh mục nhà thuốc;
• Quản lí lịch sử;
3. NGÀY GIAO NHIỆM VỤ: 04/01/2016
4. NGÀY HOÀN THÀNH NHIỆM VỤ: 21/04/2016
5. CÁN BỘ HƯỚNG DẪN: Ths Nguyễn Thùy Linh


CÁN BỘ HƯỚNG DẪN

KHOA CÔNG NGHỆ THÔNG TIN


LỜI NÓI ĐẦU
Hiện nay có rất nhiều bài thuốc Đông Y quý được gìn giữ và lưu truyền rộng
rãi trên internet, tuy nhiên, chúng vẫn nằm rải rác ở các trang mà chưa được
lưu trữ tập trung, sắp xếp một cách có hệ thống. Ngoài ra, nhiều bài viết chưa
nói rõ được công dụng, cách điều trị của từng thảo dược, bài thuốc,…Chính vì
vậy, em đã quyết định chọn đề tài“Xây dựng website hỗ trợ tra cứu các bài
thuốc Đông Y” là một trang thông tin về sức khỏe, kiến thức chữa bệnh bằng
các phương pháp tinh hoa y học cổ truyền. Ngoài phần lời nói đầu, danh sách
các từ viết tắt, danh mục các bảng, danh mục các hình vẽ, tài liệu tham khảo,
bố cục chính của báo cáo Đồ án tốt nghiệp này gồm 5 chương:
Chương 1 - Tổng quan đề tài: Chương này giới thiệu và mô tả bài toán.
Chương 2 - Cơ sở lý thuyết: Chương này trình bày lý thuyết về công nghệ
PHP và hệ quản trị cơ sở dữ liệu.
Chương 3 - Phân tích hệ thống: Mục đích chính của chương là phân tích bài
toán, đưa ra được sơ đồ phân cấp chức năng, sơ đồ luồng dữ liệu các mức của
hệ thống.
Chương 4 - Thiết kế hệ thống: Trình bày về thiết kế cơ sở dữ liệu, thiết kế
một số module của hệ thống.
Chương 5 – Hướng dẫn cài đặt và sử dụng: Trình bày yêu cầu về cấu hình,
hướng dẫn cách cài đặt và hướng dẫn sử dụng.
Trong quá trình làm đồ án, em đã nhận được sự chỉ bảo tận tình của cô Thạc
sĩ Nguyễn Thùy Linh, song do thời gian và khả năng kiến thức của em có hạn
nên đồ án không thể tránh khỏi những sai sót, mong thầy cô đóng góp ý kiến
để đồ án của em được hoàn thiện hơn.

Em xin chân thành cảm ơn!
Hà nội, ngày 21 tháng 4 năm 2016
Sinh viên thực hiện
Đỗ Văn Chuyên


MỤC LỤC
DANH MỤC CÁC BẢNG ..............................................................................
DANH MỤC CÁC HÌNH VẼ ........................................................................
CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI ........................................................... 1
1.1. Giới thiệu bài toán ........................................................................... 1
1.2. Mô tả bài toán .................................................................................. 1
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT ............................................................ 4
2.1

Giới thiệu hệ quản trị MySQL ........................................................ 4

2.1.1

Giới thiệu ..................................................................................... 4

2.1.2

Ưu điểm SQL ............................................................................... 4

2.1.3

Các lí do nên chọn MySQL .......................................................... 5

2.2


Giới thiệu về ngôn ngữ lập trình PHP ............................................ 7

2.2.1

Giới thiệu ..................................................................................... 7

2.2.2

Ưu điểm, nhược điểm PHP .......................................................... 7

2.2.3

Lí do nên chọn PHP ..................................................................... 7

2.2.4

PHP ở cấp doanh nghiệp ........................................................... 10

2.2.5

Sự ảnh hưởng của PHP ở Việt Nam ........................................... 10

CHƯƠNG 3: PHÂN TÍCH HỆ THỐNG .................................................. 12
3.1. Xác định yêu cầu ............................................................................ 12
3.1.1

Yêu cầu khách hàng ................................................................... 12

3.1.2


Yêu cầu người quản trị............................................................... 12

3.2. Mô hình phân rã chức năng .......................................................... 13
3.2.1

Sơ đồ phân rã chức năng ........................................................... 13


3.2.2

Đặc tả chức năng ....................................................................... 15

3.5 Sơ đồ luồng dữ liệu mức dưới đỉnh ................................................. 21
3.5.1

Sơ đồ luồng dữ liệu mức dưới đỉnh với chức năng quản lí hệ

thống……………………………………………………………………..21
3.5.2

Sơ đồ luồng dữ liệu mức dưới đỉnh với chức năng quản lí cây

thuốc……………………………………………………………………..22
3.5.3

Sơ đồ luồng dữ liệu mức dưới đỉnh với chức năng quản lí bài

thuốc……………………………………………………………………..23
3.5.4


Sơ đồ luồng dữ liệu mức dưới đỉnh với chức năng quản lí nhóm

bệnh……………………………………………………………………...24
3.5.5

Sơ đồ luồng dữ liệu mức dưới đỉnh với chức năng quản lí danh

mục nhà thuốc…………………………………………………………………..25
3.5.7

Sơ đồ luồng dữ liệu mức dưới đỉnh với chức năng quản lí bình

luận………………………………………………………………………27
3.5.8

Sơ đồ quản lí mức dưới đỉnh với chức năng quản lí lịch sử ........ 28

CHƯƠNG 4: THIẾT KẾ HỆ THỐNG ..................................................... 29
4.1. Thiết kế cơ sở dữ liệu ..................................................................... 29
4.1.1

Xác định các tập thực thể ........................................................... 29

4.1.2

Xác định mối liên kết giữa các tập thực thể................................ 30

4.1.3


Mô hình ER ................................................................................ 31

4.1.4

Mô hình quan hệ ........................................................................ 32

4.1.5

Các bảng CSDL vật lí ................................................................ 34

4.2. Thiết kê module chức năng............................................................ 39
4.2.1

Module đăng kí tài khoản........................................................... 39


4.2.2

Module đăng nhập ..................................................................... 41

4.2.3

Module thêm bài thuốc............................................................... 42

4.2.4

Module sửa bài thuốc................................................................. 44

4.2.5


Module xóa bài thuốc................................................................. 47

4.2.6

Module tìm kiếm ........................................................................ 48

CHƯƠNG 5 : HƯỚNG DẪN SỬ DỤNG HỆ THỐNG ............................ 49
5.1. Hướng dẫn sử dụng cho khách vãng lai ........................................ 49
5.2. Hướng dẫn sử dụng cho thành viên .............................................. 49
5.2.1

Giao diện màn hình đăng nhập .................................................. 49

5.2.2

Hướng dẫn đăng kí tài khoản ..................................................... 50

5.2.3

Hướng dẫn bình luận bài thuốc.................................................. 51

5.2.4

Hướng dẫn cập nhật tài khoản ................................................... 51

5.2.5

Giao diện trang cá nhân ............................................................ 52

5.2.6


Giao diện đăng bài thuốc ........................................................... 53

5.3. Hướng dẫn sử dụng cho admin ..................................................... 53
5.3.1

Giao diện đăng nhập .................................................................. 53

5.3.2

Giao diện trang quản trị ............................................................ 54

5.3.3

Giao diện thêm cây thuốc........................................................... 55

5.3.4

Giao diện tìm kiếm cây thuốc ..................................................... 55

KẾT LUẬN ................................................................................................. 56
TÀI LIỆU THAM KHẢO.......................................................................... 58


TÓM TẮT ĐỒ ÁN
Họ và tên: Đỗ Văn Chuyên
Chuyên ngành: Công nghệ thông tin

Khóa: 12


Cán bộ hướng dẫn: ThS. Nguyễn Thùy Linh
Tên đề tài: Xây dựng website hỗ trợ tra cứu các bài thuốc Đông Y
Tóm tắt: Hệ thống được xây dựng giúp người dùng dễ dàng tra cứu thông tin
các bài thuốc, cây thuốc, nhóm bệnh,… Ngoài ra, hệ thống còn cho phép
người dùng được phép đăng kí làm thành viên và có thêm một số chức năng
khác:
• Đăng bài và cập nhật bài viết;
• Trả lời hỏi đáp, thắc mắc;
• Ghi nhớ lịch sử tra cứu;
• Chia sẻ trên mạng xã hội (Facebook, Twinter,…);
Abstract:The system is built to help users easily search information for all
drugs , medicinal plants , disease groups , ... In addition , the system also
allows users to be allowed to register as a member and have a number of other
functions :
• Post and update articles ;
• Answer questions and answers , questions ;
• Remember history lookup ;
• Share on social networks ( Facebook , Twinter , ... ) ;


DANH SÁCH CÁC CHỮ VIẾT TẮT
STT Tên viết tắt
1

DBMS

Tên đầy đủ
DataBase Management

Dịch ra tiếng việt

Hệ quản trị cơ sở dữ liệu

System
2

RDBMS

Relational DataBase

Hệ quản trị quan hệ cơ sở

Management System

dữ liệu

3

PHP

HyperText Preprocessor

Nền tảng ứng dụng web

4

HTML

HyperText Markup

Ngôn ngữ siêu văn bản


Language
5

DMNT

Danh mục nhà thuốc

Danh mục nhà thuốc

6

TT

Thông tin

Thông tin

7

y/c

Yêu cầu

Yêu cầu

8

kq


Kết quả

Kết quả


DANH MỤC CÁC BẢNG
Bảng 4. 1 Bảng CÂY THUỐC ..................................................................... 34
Bảng 4. 2 Bảng BỆNH ................................................................................. 34
Bảng 4. 3 Bảng BÀI THUỐC ....................................................................... 35
Bảng 4. 4 Bảng QUYỀN .............................................................................. 35
Bảng 4. 5 Bảng NGƯỜI DÙNG ................................................................... 36
Bảng 4. 6 Bảng DANH MỤC NHÀ THUỐC ............................................... 36
Bảng 4. 7 Bảng HỎI ĐÁP ............................................................................ 37
Bảng 4. 8 Bảng BÌNH LUẬN....................................................................... 37
Bảng 4. 9 Bảng LOG .................................................................................... 37
Bảng 4. 10 Bảng BÀI THUỐC – CÂY THUỐC .......................................... 38
Bảng 4. 11 Bảng BÀI THUỐC – TÁC DỤNG ............................................. 38
Bảng 4. 12 Bảng TÁC DỤNG ...................................................................... 38
Bảng 4. 13 Bảng CÂY THUỐC – TÁC DỤNG ........................................... 39


DANH MỤC CÁC HÌNH VẼ
Hình 3. 1 Sơ đồ phân rã chức năng ............................................................... 14
Hình 3. 2 Sơ đồ luồng dữ liệu mức khung cảnh ............................................ 18
Hình 3. 3 Sơ đồ luồng dữ liệu mức đỉnh ....................................................... 20
Hình 3. 4 Sơ đồ luồng dữ liệu mức dưới đỉnh với chức năng quản lí hệ thống
..................................................................................................................... 21
Hình 3. 5 Sơ đồ luồng dữ liệu với chức năng quản lí cây thuốc .................... 22
Hình 3. 6 Sơ đồ luồng dữ liệu quản lí bài thuốc............................................ 23
Hình 3. 7 Sơ đồ luồng dữ liệu mức dưới đỉnh với chức năng quản lí nhóm

bệnh ............................................................................................................. 24
Hình 3. 8 Sơ đồ luồng dữ liệu mức dưới đỉnh với chức năng quản lí danh mục
nhà thuốc ...................................................................................................... 25
Hình 3. 9 Sơ đồ luồng dữ liệu mức dưới đỉnh với chức năng quản lí hỏi đáp 26
Hình 3. 10 Sơ đồ luồng dữ liệu mức dưới dỉnh với chức năng quản lí bình
luận .............................................................................................................. 27
Hình 3. 11 Sơ đồ luồng dữ liệu mức dưới đỉnh với chức năng quản lí lịch sử
..................................................................................................................... 28
Hình 4. 1 Mô hình E-R ................................................................................. 32
Hình 4. 2 Mô hình quan hệ .......................................................................... 33
Hình 4. 3 Sơ đồ khối module đăng kí tài khoản ............................................ 40
Hình 4. 4 Sơ đồ khối module đăng nhập ....................................................... 41
Hình 4. 5 Sơ đồ khối module thêm bài thuốc ................................................ 43
Hình 4. 6 Sơ đồ khối module sửa bài thuốc (Admin) .................................... 45
Hình 4. 7 Sơ đồ khối module sửa bài thuốc (Thành viên) ............................. 46
Hình 4. 8 Sơ đồ khối module xóa bài thuốc .................................................. 47
Hình 4. 9 Sơ đồ khối module tìm kiếm ......................................................... 48


Hình 5. 1 Giao diện màn hình trang chủ ....................................................... 49
Hình 5. 2 Giao diện màn hình đăng nhập...................................................... 50
Hình 5. 3 Giao diện màn hình đăng kí thành viên ......................................... 50
Hình 5. 4 Giao diện màn hình bình luận của thành viên ............................... 51
Hình 5. 5 Giao diện thay đỏi mật khẩu thành viên ........................................ 52
Hình 5. 6 Giao diện trang cá nhân ................................................................ 52
Hình 5. 7 Giao diện đăng bài của thành viên ............................................... 53
Hình 5. 8 Giao diện đăng nhập quản trị hệ thống của admin......................... 54
Hình 5. 9 Giao diện trang quản trị hệ thống của admin ................................. 54
Hình 5. 10 Giao diện thêm mới cây thuốc của admin ................................... 55
Hình 5. 11 Giao diện tìm kiếm cấy thuốc của admin .................................... 55



1

CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI
1.1. Giới thiệu bài toán
- Ngày nay cùng với sự phát triển của các ngành khoa học, kĩ thuật, kinh
tế,…,làm cho cuộc sống của con người có phần nào cải thiện và nhu
cầu chăm sóc sức khỏe ngày càng tăng dần. Cùng với sự phát triển của
đời sống còn kéo theo về những dịch bệnh do sự ô nhiễm của các nhà
máy, xí nghiệp thải chất thải chưa qua xử lí.
- Mặt khác nên y học hiện đại giờ phát triển mạnh mẽ, nhưng vẫn chưa
thể giải quyết được các bệnh mãn tính, nâng cao thể trạng, điều trị các
rối loạn về chức năng,… và còn nhiều vấn đề y học chưa giải quyết
được mà rất cần đến vai trò của Đông Y. Tuy nhiên, hiện nay các bài
thuốc Đông Y vẫn được gìn giữ và lưu truyền rộng rãi trên internet,
sách,… chưa có sự sắp xếp một cách hệ thống.Các trang internet,
sách,… vẫn chưa cập nhật đủ được hết về nội dung như: công dụng, tên
vị thuốc, nhóm bệnh,… có thể nguyên nhân do sách đã dùng lâu nên
nhàu, nát. Còn với internet chỉ sưu tầm nên không thể đảm bảo được về
nội dung, có thể gây hại cho sức khỏe của con người.Đa số các bài
thuốc vẫn lan truyền miệng cho mọi người sử dụng. Điều này có thể rất
nguy hại đến sức khỏe mọi người. Chính vì vậy, em đã quyết định chọn
đề tài “Xây dựng website hỗ trợ tra cứu các bài thuốc Đông Y”.
1.2. Mô tả bài toán
Qua quá trình khảo sát và tìm hiểu, sau đây em xin đưa ra ý tưởng mới
cho hệ thống mà em muốn xây dựng:


2


- Khách hàng:
• Khách hàng vãng lai: Chưa đăng kí làm thành viên hoặc đăng nhập
nên chỉ có thể xem bài viết. Khách hàng cũng có thể tra cứu để xem
thêm các bài viết khác.
• Khách hàng thành viên là thành viên đã đăng kí và đăng nhập.
Ngoài các chức năng của khách hàng vãng lai, thì thành viên có
thêm một số chức năng khác dưới sự kiểm duyệt Admin:
o Đăng và cập nhật bài viết;
o Trả lời , hỏi đáp thắc mắc;
o Ghi nhớ lịch sử tra cứu;
o Chia sẻ mạng xã hội(Facebook, Twinter,… );
- Người quản trị (Admin) cho phép:
• Quản trị hệ thống: Là quản lí tài khoản người dùng, phân quyền
người dùng.
• Quản lí cây thuốc: Cho phép cập nhật thông tin (tên cây thuốc, hình
ảnh, tác dụng,…), tìm kiếm và thống kê các loại cây thuốc.
• Quản lí nhóm bệnh: Cập nhật thông tin và tìm kiếm nhóm bệnh.
• Quản lí bài thuốc: Cập nhật thông tin bài thuốc (chẳng hạn như bài
thuốc gồm những cây thuốc gì?, khối lượng, tác dụng, cách
dùng,…).
• Quản lí tác dụng: Cập nhật tác dụng, tìm kiếm và báo cáo thống kê
tác dụng.
• Quản lí hỏi đáp: Người quản trị tiếp nhận và kiểm duyệt các câu hỏi
bên phía người dùng. Sau đó người quản trị cũng có thể giải đáp
thắc mắc hoặc có thể kiểm duyệt những trả lời, thắc mắc bên phía
người dùng.
• Quản lí bình luận: Cho phép cập nhật, tìm kiếm các bình luận.



3

• Quản lí tài khoản: Người quản trị có thể cập nhật, tìm kiếm và thống
kê về thông tin tài khoản, phân quyền.
• Quản lí danh mục nhà thuốc: Cập nhật địa chỉ nhà thuốc, kiểm duyệt
và tìm kiếm, báo cáo thống kê.
• Quản lí lịch sử: Hệ thống hỗ trợ tự cập nhật lịch sử người dùng, cho
phép người quản trị có thể tìm kiếm hoặc báo cáo thống kê về lịch
sử người dùng.


4

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
2.1 Giới thiệu hệ quản trị MySQL
2.1.1 Giới thiệu
MySQL là cơ sở dữ liệu được sử dụng cho các ứng dụng Web có quy mô
vừa và nhỏ. Tuy không phải là một cơ sở dữ liệu lớn nhưng chúng cũng có
trình giao diện trên Windows hay Linux, cho phép người dùng có thể thao
tác các hành động liên quan đến cơ sở dữ liệu.
MySQL thường đi kết hợp với ngôn ngữ lập trình PHP để xây dựng các
website. Các hệ thống web ưa chuộng MySQL là tại vì tốc độ xử lí của nó
cao, tính dễ sử dụng và thương thích với các hệ điều hành thông dụng hiện
nay như Linux hay Window,… MySQL có sử dụng ngôn ngữ truy vấn TSQL để thao tác dữ liệu.
Cũng giống như các cơ sở dữ liệu, khi làm việc với cơ sở dữ liệu MySQL,
bạn đăng kí kết nối, tạo cơ sở dữ liệu, quản lí người dùng, phân quyền sử
dụng, thiết kế đối tượng Table của cơ sở dữ liệu và xử lí dữ liệu.
Tuy nhiên, trong bất kì ứng dụng cơ sở dữ liệu nào cũng vậy, nếu bản thân
chúng có hỗ trợ một trình giao diện đồ họa, bạn có thể sử dụng chúng tiện
lợi hơn các sử dụng Command line. Bởi vì, cho dù bạn điều khiển MySQL

dưới bất kì hình thức nào, mục đích cũng quản lí và thao tác cơ sở dữ liệu.
2.1.2 Ưu điểm SQL
- MySQL là hệ quản trị nhỏ, bảo mật, và rất dễ sử dụng, thường được
sử dụng cho các ứng dụng nhỏ và trung bình. Nó được sử dụng cho
các ứng dụng Client/Server với máy chủ mạnh như UNIX, Windows
NT và Windows 95/98 và đặc biệt trên máy chủ UNIX.


5

- MySQL hỗ trợ các điểm vào là ANSI SQL92 và ODBC mức 0 – 2
SQL chuẩn.
- MySQL hỗ trợ nhiều ngôn ngữ cho việc thông báo lỗi như: CZec,
Dutc, English, Estonian, French,… Ngôn ngữ được hỗ trợ mặc định
cho dữ liệu là ISO–88859-1 (Latin 1), muốn thay đổi phải sử chữa
trong mã nguồn.
- Ngôn ngữ lập trình sử dụng viết các hàm API để thâm nhập cơ sở dữ
liệu MySQL có thể là C, Perl, PHP,…
- Các bảng (Table) trong MySQL có kích thước lớn và lưu ở mục
Datas. Kích thước lớn nhất của 1 bảng tối thiểu là 4GB và nó còn
phụ thuộc và kích thước lớn nhất của một file do hệ điều hành quy
định.
- Cơ sở dữ liệu MySQL rất dễ quản lí và có tốc độ xử lí cao hơn tới ba
bốn lần so với các hệ quản trị cơ sở dữ liệu khác.
- MySQL là một hệ quản trị cơ sở dữ liệu mô hình quan hệ, nó có mã
nguồn mở. Nó được cung cấp miễn phí trên các máy chủ UNIX,
OS/2 và cả trên Windows.
2.1.3 Các lí do nên chọn MySQL
- Tính linh hoạt, tính thực thi cao.
- Có thể sử dụng ngay.

- Hỗ trợ giao dịch mạnh.
- Nơi lưu trữ Web và Data đáng tin cậy.
- Chế độ bảo mật dữ liệu mạnh.
- Sự phát triển ứng dụng hỗn hợp.
- Dễ dàng quản lí.
- Mã nguồn mở tự do và hỗ trợ 24/7.
- Tổng chi phí thấp.


6


7

2.2 Giới thiệu về ngôn ngữ lập trình PHP
2.2.1 Giới thiệu
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 đó 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 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.
2.2.2 Ưu điểm, nhược điểmPHP
-

Ưu điểm:
• Dùng mã nguồn mở (có thể chạy trên Apache hoặc IIS);
• Phổ biến hơn ASP;

• Dễ học khi đã biết HTML, C;
• Dựa vào xamp (dễ cấu hình);
• Nhiều hệ thống CMS miễn phí dùng;
• Đi cặp với MySQL;
• Hoạt động trên Linux, có thể trên IIS –Windows;

-Nhược

điểm:

• Mã nguồn không đẹp;
• Chỉ chạy trên ứng dụng web;
2.2.3 Lí do nên chọn PHP
- Mã nguồn mở:
• Vì ưu thế mã nguồn mở nên PHP có thể được cài đặt được hầu
hết trên các Web Server thông dụng hiện nay Apache, IIS,…;


8

• Là một sản phẩm mã nguồn mở (Open-source) nên việc cài đặt và
tùy biến PHP là miễn phí và tự do;
- Tính cộng đồng PHP:
• Với cộng đồng phát triển lớn, việ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 động trong việc hoàn thiện mình;
• Là một ngôn ngữ mã nguồn mở cùng với sự phổ biến của PHP thì
cộng đồng PHP được coi là khá lớn và có chất lượng;
• Cộng đồng hỗ trợ, chia sẻ kinh nghiệm của PHP dồi dào. Với rất
nhiều diễn đàn, blog trong và ngoài nước nói về PHP khiến cho

quá trình tiếp cận của người tìm hiểu PHP được rút ngắn nhanh
chóng;
- Thư viện phong phú:
• Với thư viện code phong phú, việc học tập và ứng dụng trong
PHP trở nên 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;
• Ngoài sự hỗ trợ của cộng đồng, thư viện script PHP cũng rất
phong phú và đa đạng. Từ những cái rất nhỏ như chỉ là một đoạn
code, một hàm (PHP.net…) cho tới những cái lớn hơn như
Framework(Zend, CakePHP, Cogelgniter, … ), ứng dụng hoàn
chỉnh (Joomla, WordPress, PhpBB,…);
- Hỗ trợ kết nối nhiều cơ sở dữ liệu:
• Việc cập nhật và nâng cấp các Database Client đơn giản chỉ là
việc thay thế các Extension PHP để phù hợp với hệ cơ sở dữ liệu
mà PHP sẽ làm việc;


9

• Nhu cầu xây dựng web có sử dụng cơ sở dữ liệu là một nhu cầu
tất yếu và PHP cũng đáp ứng rất tốt nhu cầu này. Với việc tích
hợp sẵn nhiều Database Client trong PHP để làm cho ứng dụng
PHP dễ dàng kết nối tới các hệ cơ sở dữ liệu thông dụng;
• Một số hệ cơ sở dữ liệu thông dụng mà PHP có thể làm việc là:
MySQL, MS SQL, Oracle,…;
• Ngày nay, khái niệm lập trình hướng đối tượng (OOP) đã không
còn xa lạ với lập trình viên. Với khả năng và lợi ích của mô hình
lập trình này nên nhiều ngôn ngữ đã triển khai để hỗ trợ OOP;
- Lập trình hướng đối tượng: OOP (Object – oriented programming)

hay lập trình hướng đối tượng được giới thiệu trong phên bản PHP5.
Bằng khai thác toàn bộ sức mạnh của trình hướng đối tượng, bạn có
thể giảm thiểu tối đa thời gian để hoàn thành dự án và sử dụng nó để
xây dựng các trang web tốt hơn. Các sản phẩm tiêu biểu của OOP là
Magento, WordPress và Joomla.
- Tính bảo mật:
• PHP cung cấp nhiều cơ chế cho phép bạn triển khai tính bảo mật
cho ứng dụng như session, các hàm filter dữ liệu, kĩ thuật ép kiểu,
thư viện PDO (PHP Data Object) để tương tác với cơ sở dữ liệu
an toàn hơn;
• Kết hợp với các kĩ thuật bảo mật ở tầng khác thì ứng dụng PHP sẽ
trở nên chắc chắn và đảm bảo hoạt động cho website;
- Khả năng mở rộng cho PHP:
• Bằng việc xây dựng trên nền ngôn ngữ C và là mã nguồn mở nên
khả năng mở rộng cho ứng dụng PHP có thể nói là không có giới
hạn;


10

• Bạn hoàn toàn có thể xây dựng cho mình các Extension để tối ưu,
bổ sung các chức năng cho PHP cũng như tối ưu luôn Core của
PHP để phục vụ cho các mục đích mở rộng website của mình;
• Với thư viện phong phú và khả năng mở rộng lớn, ứng dụng PHP
có thể tương tác với hầu hết các loại ứng dụng phổ biến như xử
lý hình ảnh, nén dữ liệu, mã hóa, thao tác file PDF, Office, Email,
Streaming,…;
2.2.4 PHP ở cấp doanh nghiệp
Rất nhiều nhà phát triển ứng dựn và quản lí dự án có quan điểm rằng PHP vẫn
chưa sẵn sàng cho cấp doanh nghiệp (enterprise) và trên thực tế, PHP vẫn

chưa xâm nhập sâu vào thị trường này. Chính vì thế, Zend đã tiến hành nhiều
biện pháp nhằm chuẩn hóa PHP, tạo được sự tin cậy hơn cho giới người dùng
cao cấp.
- Zend Platform là một sản phẩm giúp quản lí hệ thống ứng dụng PHP,
nâng cao hiệu xuất, tăng tốc độ của ứng dụng PHP.
- Zend Framework là một tập hợp các lớp, các thư viện được viết bằng
PHP (PHP 5) nhằm cung cấp một giao diện lập trình chuẩn cho các nhà
phát triển ứng dụng.
Ngoài ra, một số framework khác cũng được phát triển nhằm hỗ trợ lập trình
PHP ở cấp doanh nghiệp, trong đó đáng chú ý có thể kể đến là Codelgniter,
CakePHP, Symfony, Seagull,…
2.2.5 Sự ảnh hưởng của PHP ở Việt Nam
Mặc dù đây PHP 5 được coi là sẵn sàng cho doanh nghiệp nhưng sự chấp
nhận PHP vẫn tiến triển khá chậm chạp đặc biệt là ở Việt Nam. Những nỗ lực
đầu tiên để phổ biến PHP trong đó có dự án xây dựng Quy tắc viết mã PHP


11

tiếng việt được xúc tiến. Ngày 24 tháng 10 năm 2004, nhóm PHPVietNam đã
đề xuất xây dựng PHPVietNam Mailling List đầu tiên trên Google Groups tại
địa chỉ: Tại đây diễn ra
những thảo luận để xây dựng diễn đàn cho cộng đồng PHP Việt Nam.


12

CHƯƠNG 3: PHÂN TÍCH HỆ THỐNG
3.1. Xác định yêu cầu
3.1.1 Yêu cầu khách hàng

- Giao diện thân thiện, dễ dàng sử dụng.
- Cho phép khách hàng đăng kí là thành viên và đảm bảo bí mật thông
tin.
- Xem, thay đổi thông tin tài khoản.
- Cung cấp đủ nội dung chi tiết về các bài thuốc.
- Luôn cập nhật các bài thuốc mới.
- Cho phép khách hàng tìm kiếm nhanh chóng chính xác theo nhiều tiêu
chí.
3.1.2 Yêu cầu người quản trị
Ngoài những yêu cầu giống như của khách hàng , thì hệ thống cần phải
bảo đảm những yêu cầu sau của người quản trị:
- Quản trị hệ thống: Là quản lí tài khoản người dùng, phân quyền người
dùng.
- Quản lí cây thuốc: Cho phép cập nhật thông tin (tên cây thuốc, hình
ảnh, công dụng,… ), tìm kiếm và thống kê các loại cây thuốc.
- Quản lí nhóm bệnh: có thể cập nhật thông tin và tìm kiếm nhóm bệnh.
- Quản lí bài thuốc: cập nhật các thông tin bài thuốc (chẳng hạn như bài
thuốc gồm những cây thuốc gì, hàm lượng, liều lượng, tác dụng, hướng
dẫn sử dụng,…).
- Quản lí tác dụng: cập nhật tác dụng (chẳng hạn như mã tác dụng, tên
tác dụng,…).
- Quản lí hỏi đáp: Người quản trị tiếp nhận và kiểm duyệt các câu hỏi
bên phía người dùng. Sau đó, người quản trị cũng có thể giải đáp thắc


×