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

Tìm hiểu mô hình MVC, framework cakephp và xây dựng website công ty du lịch văn minh

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 (996.27 KB, 51 trang )

Gi¸o viªn HD: Ths. NguyÔn ThÞ Minh T©m

Môc lôc
MỞ ĐẦU.........................................................................4

NguyÔn ThÞ Tè Loan

45K-CNTT

Trang2


Giáo viên HD: Ths. Nguyễn Thị Minh Tâm

Lời nói đầu
Đầu tiên tôi xin gửi lời cảm ơn tới Cô giáo Nguyễn Thị Minh Tâm đã ủng
hộ v tận tình hớng dẫn để tôi có thể hon thnh tốt đợt thực tập cũng nh bản
báo cáo ny.
Đồng thời tôi cũng cảm ơn ban lãnh đạo cùng các anh chị nhân viên Công
ty TNHH Văn Minh đã giúp đỡ thu thập tất cả thông tin để tôi ho n th nh đợt
thực tập.
Nội dung báo cáo:
Giới thiệu công ty thực tập.
Giới thiệu công nghệ tìm hiểu.
Giới thiệu đề ti đang thực hiện cho công ty.

Vinh, ngy 16 tháng 04 năm 2009
Ngời thực hiện
Nguyễn Thị Tố Loan
Lớp 45K - CNTT


Nguyễn Thị Tố Loan

45K-CNTT

Trang3


Giáo viên HD: Ths. Nguyễn Thị Minh Tâm

M U
Với sự phát triển bùng nổ của INTERNET hiện nay kéo theo sự phát triển
của những ứng dụng trên nền web . Cùng với đó l những công nghệ mới cũng
ra đời v phát triển không ngừng. Trong đó công nghệ PHP v ứng dụng
website l một trong những vấn đề phổ biến nhất hiện nay. PHP cùng với những
ứng dụng phát triển của nó đa đến cho chúng ta một công cụ hữu hiệu để có thể
lm đợc rất nhiều vấn đề hiện nay.
Cng chớnh vỡ lý do ny, trong ti ny tụi quyt nh thc hin ti
Tìm hiểu mô hình MVC, framework CakePHP v xây dựng website công ty
du lịch Văn Minh.

Nguyễn Thị Tố Loan

45K-CNTT

Trang4


Giáo viên HD: Ths. Nguyễn Thị Minh Tâm

Chơng 1:

Tổng quan đề ti
1.1. Giới thiệu đề ti
1.1.1. Tên đề ti
Tìm hiểu mô hình MVC, framework CakePHP v xây dựng website công ty du
lịch Văn Minh.
1.1.2. Mục đích v ứng dụng
Ngy nay các ứng dụng trên nền web ngy cng đ ợc sử dụng phổ biến
trong các doanh nghiệp cũng nh tổ chức. Việc phát triển các ứng dụng ny giúp
cho các doanh nghiệp v khách hng có thể hiểu rõ nhau hơn, doanh nghiệp có
thể quảng bá thơng hiệu của mình một cách hiệu quả cũng nh khách hng có
nhiều lựa chọn hơn .
Để phục vụ cho xây dung các ứng dụng đó thì có rất nhiều công cụ hỗ trợ
v PHP l một công cụ đợc sử dụng rất phổ biến. Cùng với mô hình MVC
(Model-View-Controller) cng lm cho các ứng dụng trên nền php đ ợc sử dụng
một cách mạnh hơn với sự hỗ trợ của các framework nh CakePHP,
ZendFramework.
Từ CakePHP phạm vi đồ án ny sẽ xây dựng website cho công ty du lịch
Văn Minh. Với website ny công ty du lịch Văn Minh có thể quảng bá rộng rãi
với công chúng về các hình thức hoạt động kinh doanh của công ty mình, đồng
thời l cầu nối giữa công ty v khách hng giúp cho việc kinh doanh ngy
cng hiệu quả hơn.

Nguyễn Thị Tố Loan

45K-CNTT

Trang5


Giáo viên HD: Ths. Nguyễn Thị Minh Tâm

1.2. Hớng nghiên cứu
1.2.1. Về mặt lý thuyết
Với đề ti ny các vấn đề nghiên cứu gồm có:
- Tìm hiểu ngôn ngữ lập trình PHP/MySQL bên cạnh đó không thể thiếu
đợc l html, css, javascript.
- Tìm hiểu mô hình MVC, đây l mô hình không những đ ợc sử dụng phổ
biến trong php m nó còn đợc sử dụng rất mạnh mẽ trong JAVA v một số
ngôn ngữ lập trình khác.
- CakePHP l một framework của php trên mô hình MVC.
- Tìm hiểu quy trình phát triển phần mềm theo mô hình sử dụng phổ biến
hiện nay
1.2.2. về định hớng công cụ - công nghệ
Với đề ti ny tôi sử dụng công nghệ php v công cụ soạn thỏa
Dreamweaver.
1.3. Dự kiến kết quả đạt đợc
Xây dựng đợc website cho công ty du lịch Văn Minh.Website có một số
chức năng cơ bản sau:

Hin th trang ngi dựng:
- Hiển thị giới thiệu công ty, tin tức, các tuyến vận tải.
- Hiển thị các form: Đặt vé trực tuyến, liên hệ, góp ý.
- Hiển thị nick yahoo hỗ trợ trực tuyến.
- Hiển thị các hình ảnh quảng cáo.
- Hiển thị trang quản trị:
Ngời quản trị có thể thực hiện các chức năng nh: thêm, sửa, xóa v có thể
sắp xếp hay hiển thị các nội dung nh:
- Menu hiển thị.
- Tin tức.
- Các chuyến đi.
Nguyễn Thị Tố Loan


45K-CNTT

Trang6


Giáo viên HD: Ths. Nguyễn Thị Minh Tâm
- Danh sách ngời quản trị
- Văn phòng công ty
Ngời dùng có thể:
- Đặt vé qua mạng.
- Gửi các ý kiến góp ý cho công ty.

Nguyễn Thị Tố Loan

45K-CNTT

Trang7


Giáo viên HD: Ths. Nguyễn Thị Minh Tâm

Chơng 2: Cơ sở lý thuyết
2.1 Các khái niệm cơ bản về web
2.1.1. Internet l gì
Internet l mạng máy tính ton cầu sử dụng ngôn ngữ truyền thông chung
nó tơng tự nh một hệ thống điện thoại quốc tế nhng nó đợc kết nối theo cách
lm việc của một mạng lớn.
World Wide Web (WWW) cho ta một hình ảnh dễ dng giao tiếp v tìm
kiếm dữ liệu internet. Các dữ liệu ny liênkết với nhau thông qua trang web. Các

file, các trang đợc kết nối với nhau thông qua các mỗi liên kết l text hoặc l
hình ảnh đợc gọi l Hyper link.
Các trang web có thể chứa văn bản, hình ảnh, phim, âm thanh, các trang
ny có thể đợc đặt trên cùng một máy tính ở một nơi no đó trên thế giới Khi ta
kết nối internet ta có thể truy xuất trên ton cầu.
HyperLink l các text hay hình ảnh m đ ợc gắn địa chỉ web trên đó. Bằng
cách click vo hyperlink ta có thể nhảy tới một trang th nh phần của một
website. Mỗi một website có một trang chủ của website đó v có một địa chỉ
duy nhất đợc gọi l Uniform Resource Locator (URL) URL xác định đúng
chính xác tên của máy tính v đờng dẫn tới một trang web xác định.
2.1.2. Khái niệm về web
Web l một tạp chí điện tử khổng lồ với nhiều trang đ ợc chứa ở các máy
tính khác nhau trên ton thế giới. Với web chúng ta có thể lm đợc nhiều việc
hơn l chỉ đọc thông tin nh một tạp chí thông thờng. Để truy cập vo web ta cần
phải có một chơng trình gọi l trình duyệt web.
Web cho phép ngời truy cập có thể trực tiếp thực hiện nhiều việc trên website
nh giao tiếp, trao đổi thông tin với ngời chủ website v những ngời truy cập
khác, tìm kiếm, mua bán,...chứ không phải chỉ xem nh quảng cáo thông thờng.

Nguyễn Thị Tố Loan

45K-CNTT

Trang8


Giáo viên HD: Ths. Nguyễn Thị Minh Tâm
Hng triệu ngời trên khắp thế giới có thể truy cập vo website, nhìn thấy nó chứ
không giới hạn trong một phạm vi lãnh thổ no cả.
2.1.3. Internet infomation server l gì?

Internet infomation server ( IIS ) l một web server cho phép ta công bố
thông tin trên mạng internet hay intranet. Internet infomation server truyền tải
thông tin bằng cách dùng Hypertext Tranfer Protocol. Internet infomation server
cũng có thể dùng FTP hoặc Gopher.
Web l một hệ thống yêu cầu (Request) v đáp ứng ( Response). Web
browse yêu cầu thông tin bằng cách gửi một URL tời Web Server. Web Server
đáp ứng lại bằng cách trả lại một trang HTML cho Web Browse.
HTML có thể l một trang web tĩnh đ ợc lu sẵn trên Web Server hoặc có
thể l một trang web động m Server tạo ra khi đáp ứng yêu cầu ng ời sử dụng
hoặc l một trang ở th mục no đó trên Server.
2.1.4. HTML
HTML (ting Anh, vit tt cho HyperText Markup Language, tc l
"Ngụn ng ỏnh du Siờu vn bn") l mt ngụn ng ỏnh du c thit k ra
to nờn cỏc trang web, ngha l cỏc mu thụng tin c trỡnh by trờn World
Wide Web. c nh ngha nh l mt ng dng n gin ca SGML, vn
c s dng trong cỏc t chc cn n cỏc yờu cu xut bn phc tp, HTML
gi õy ó tr thnh mt chun Internet do t chc World Wide Web
Consortium (W3C) duy trỡ. Phiờn bn mi nht ca nú hin l HTML 4.01.
Cấu trúc của một trang Web đợc bắt đầu bằng thẻ mở <HTML> v kết
thúc bằng thẻ đóng </HTML>. Trang HTML thờng có tên mở rộng l .html,
.htm, .jhtm, .phtm.
Cấu trúc một trang HTML:
<Html>

<Header>
<Title> Welcome to My Web
</Title>
<Meta>

Nguyễn Thị Tố Loan


45K-CNTT

Trang9


Gi¸o viªn HD: Ths. NguyÔn ThÞ Minh T©m
<Link…> </Link>
<Script…> </Script>
</Header>
<Body>
C«ng ty TNHH V¨n Minh
</Body>
2.1.5.T×m hiÓu CSS
a. Giới thiệu cơ bản về CSS


CSS thay thế cho một cụm từ tiếng Anh là "Cascading Style Sheet"



Styles định nghĩa cách các thành phần HTML hiển thị như thế nào.



Các Styles thông thường được lưu trữ trong một Style Sheets




Các Style đã được đã được thêm vào từ công bố HTML bản 4.0



Có ba cách chèn Style: 1.External Style Sheets 2.Internal Style Sheets và

3.Inline Style những giải thích về các loại này ở dưới.


External Style Sheets có thể tiết kiệm được nhiều thời gian cho công việc

của bạn.


External Style Sheets được lưu trong những tệp có phần mở rộng là CSS.
b. Làm thế nào để chèn một Style Sheet
Khi một trình duyệt đọc một style sheet, nó sẽ định dạng văn bản theo các

quy định có trong Style Sheet đó. Có ba cách để chèn một Style Sheet:
c. Style Sheet Ngoài

NguyÔn ThÞ Tè Loan

45K-CNTT

Trang10


Gi¸o viªn HD: Ths. NguyÔn ThÞ Minh T©m
Một Style Sheet ngoài là lý tưởng khi style đó được ứng dụng cho nhiều trang.

Với một Style Sheet ngoài, bạn có thể thay đổi cách nhìn của toàn bộ một
Website chỉ cần với một file thay đổi. Mỗi trang muốn liên kết với Style Sheet
cần phải sử dụng thẻ <link>. Thẻ <link> đứng bên trong đoạn <head>...</head>:
<head>
href="mystyle.css" />
</head>

Trình duyệt sẽ đọc chỉ định về style từ file "mystyle.css", và định dạng văn bản
theo file này.
Một Style Sheet Ngoài có thể được viết trong một bộ soạn thảo văn bản
nào đó. Tệp đó không được chứa các thẻ html. Style Sheet của bạn nên được lưu
lại với phần mở rộng là "tên_file.css". Một ví dụ về một tệp Style Sheet được
biểu diễn phía dưới:

hr {color: sienna}
p {margin-left: 20px}
body {background-image: url("images/back40.gif")}
Lưu ý: Đừng để khoảng trống giữa giá trị của thuộc tính và đơn vị! Nếu bạn sử
dụng câu lệnh:

"margin-left:10 px" thay vì "margin-left: 10px"
thì nó sẽ chỉ làm việc một cách hợp lệ trong trình duyệt Internet Explorer 6
nhưng nó sẽ không làm việc trong hai trình duyệt Mozilla hoặc Netscape.

NguyÔn ThÞ Tè Loan

45K-CNTT

Trang11



Gi¸o viªn HD: Ths. NguyÔn ThÞ Minh T©m
d. Style Sheet Trong
Một Style Sheet Trong cần phải được sử dụng khi một văn bản đơn có
một style duy nhất. Bạn định nghĩa các Style Trong bên trong phần đầu bằng
cách sử dụng thẻ <style> giống như thế này:

<head>
<style type="text/css">
hr
{
color: sienna
}
p
{
margin-left: 20px
}
body {
background-image: url("images/back40.gif")
}
</style>
</head>
Trình duyệt lúc này sẽ đọc các chỉ định style, và định dạng văn bản theo
các chỉ định trong đó.
Lưu ý: Một trình duyệt thông thường thì sẽ bỏ qua những thẻ mà nó
không hiểu. Điều này có nghĩa là một trình duyệt phiên bản cũ mà không hỗ trợ
các Style, sẽ bỏ qua các thẻ <style>, nhưng nội dung của thẻ <style> sẽ hiển thị
trên trang. Có thể ngăn cản một trình duyệt cũ hiển thị nội dung bằng cách ẩn nó
trong thành phần giải thích của HTML.


NguyÔn ThÞ Tè Loan

45K-CNTT

Trang12


Gi¸o viªn HD: Ths. NguyÔn ThÞ Minh T©m
<head>
<style type="text/css">
p {margin-left: 20px}
body {background-image: url("images/back40.gif")}
-->
</style>
</head>
e. Style Nội tuyến (Inline Styles)
Một Style nội tuyến mất rất nhiều ưu điểm của các Style Sheet bình
thường bởi việc trộn lẫn nội dung với việc thể hiện. Sử dụng phương pháp tiết
kiệm này, giống như khi một style được áp dụng cho một sự kiện riêng lẻ của
một thành phần.
Để sử dụng các Style nội tuyến bạn sử dụng thuộc tính style trong thẻ có
liên quan. Thuộc tính thẻ có thể bao gồm bất cứ mẫu CSS nào. Ví dụ dưới đây
sẽ đưa ra cách làm thế nào để thay đổi màu và việc căn trái cho một đoạn:


This is a paragraph




Khi một trang chịu nhiều hiệu ứng Style Sheets(Multiple Style Sheets)
Nếu một vài thuộc tính cùng được thiết lập cho cùng bộ chọn với style
sheets khác nhau, giá trị sẽ được kế thừa nhiều hơn từ các chỉ định đó.
NguyÔn ThÞ Tè Loan

45K-CNTT

Trang13


Gi¸o viªn HD: Ths. NguyÔn ThÞ Minh T©m
Ví dụ: một Style sheet Ngoài có những thuộc tính cho bộ chọn h3 như
sau:
h3
{
color: red;
text-align: left;
font-size: 8pt
}

Và một Style Sheet Trong cũng có các các thuộc tính cho bộ chọn h3 như
sau:

h3
{
text-align: right;
font-size: 20pt
}

Nếu trang Web đã được thiết lập Style Sheet Trong mà đồng thời cũng

gọi Style Sheet Ngoài thì thuộc tính chung cho h3 sẽ là:

color: red;
text-align: right;
font-size: 20pt

NguyÔn ThÞ Tè Loan

45K-CNTT

Trang14


Giáo viên HD: Ths. Nguyễn Thị Minh Tâm
Mu cho h3 s k tha t Style Sheet Ngoi v cỏc thuc tớnh textalignment v font-size s thay th bi Style Sheet Trong(ỳng theo tớnh cht u
tiờn)

2.2. Tìm hiểu PHP
2.2.1. PHP l gì?
PHP (Personal Home Page) l kch bn trên Server ( Server Script), c
thit k cho phép xây dng ng dng Web trên c s d liu. M PHP cú th
thc thi trên Web Server( Trình ch Web) to ra trang HTML v xut ra trên
trình duyt Web theo yêu cu ca ngi dựng.
2.2.2. Lịch sử ra đời của PHP
PHP ra i vo khong nm 1994, do mt nh phát minh mang tên
Rasmus Lerdorf, dn dn nó tip tc c phát triển bi nhiu ngi khác cho
n nay.
Mt s nh phát triển trình duyt Web, thng s dng PHP xây dng
các ng dng thng mi in t, cho n thi im tháng 01 nm 2001 cú 5
triu tên min trên th gii s dng PHP.

PHP l mã ngun m, iu ny có ngha l chúng ta có thể lm vic
trên mã ngun, thêm, sa, s dng v phân phi chúng.
2.2.3. Đặc điểm của PHP
PHP đợc sử dụng để phát triển websitie động vì nó tốt, nhanh v dễ dng
nghiên cứu hơn các giảI pháp khác. PHP có khả năng thực hiện v tích hợp chặt
chẽ với hầu hết các csdl có sẵn, tính bền vững, linh động v khả năng phát triển
không giới hạn. Tất cả các đặc tính trên đều miễn phí vì PHP l mã nguồn mở.
PHP vừa dễ với ngời sử dụng vừa có khả năng lm việc với mọi thứ, đáp ứng đ ợc nhu cầu với lập trình viên chuyên nghiệp.

Nguyễn Thị Tố Loan

45K-CNTT

Trang15


Giáo viên HD: Ths. Nguyễn Thị Minh Tâm
PHP có hỗ trợ các đối tợng đợc dựng sẵn, với những đối tợng ny cùng với script
chúng ta có thể tạo đợc những trang web đ.a năng v có thể viết ch ơng trình viết
chơng trình quản lý mail trên web ( nh yahoo mail) hoặc các ứng dụng thơng
mại điện tử.
Ngoi ra PHP còn có những đối t ợng khác m khi dùng ngời dùng phảI
định nghĩa trớc, các đối tợng ny cũng cung cấp cho lập trình viên khả năng tạo
những trang web hữu ích có thể truy xuất đén csdl nh MýSQL, MS Access hay
SQL Server.
2.2.4. Khả năng của PHP
Với PHP, chúng ta có thể tạo ra đợc nhiều loại web hiện đang có trên
internet. Sau đây ta có thể liệt kê một số khả năng m PHP có thể lm:
- Tạo ra những ảnh quảng cáo dộng rất sinh động v đẹp mắt trên trang
web.

- Có thể đa các thông tin các Forrn từ HTML lên cơ sở dữ liệu
- Có thể tạo ra, có thể hiệnt hị nội dung khác nhau tùy thuộc v o ng ời sử
dụng. Có nghĩa l đối với ngời sử dụng ny sẽ có nội dung hiện thị trên
trình duyệt khác với ngời sử dụng khác.
Đối với trình duyệt web khác nhau, version khác nhau ( IE hay Netscape,
Opera trên windows, Konqueror trên Linux) thì PHP có thể có những nội dung
hiện thị khác nhau tùy thuộc khả năng trình duyệt.
2.2.5. Cách lm việc của PHP
PHP l một ngôn ngữ máy chủ, mã lệnh PHP sẽ tập trung trên máy chủ để
phục vụ các trang web theo yêu cầu của ngời thông qua trình duyệt.
Khi ngời dùng truy cập website viết bằng PHP máy chủ đọc mã lệnh PHP
v xử lý chúng theo hớng dẫn đã đợc mã hóa.
PHP có một tập các đối tợng sẵn có với nhiều tính năng phong phú, khả
năng hỗ trợ VBScript, JavaScript.

Nguyễn Thị Tố Loan

45K-CNTT

Trang16


Giáo viên HD: Ths. Nguyễn Thị Minh Tâm
`PHP đợc thực thi ở phía server, Khi trình duyệt (web Browser) của bạn truy cập
một trang web có chứa một đoạn mã PHP thi trình duyệt sẽ nhận đợc kết quả xử
lý từ web server, bạn không cần biết đoạn mã viết gì. Mã PHP đợc đặt trong dấu
<? Php ?> hoặc <? ?>, Tệp tin PHP có phần mở rộng l: *.php hoặc *.php3.
Với một trang HTML sẵn ta có thể dễ dng tạo trang PHP bằng cách thêm
các lệnh PHP Script cần thiết v có thể đổi phần mở rộng thnh *.php. Cách
chèn PHP script vo trang PHP . PHP Script đợc đặt giữa ký hiệu

hoặc
?>

?>. Thông thờng, chúng ta dùng PHP để sinh ra file HTML sẽ trả cho

client khi có yêu cầu
a. Cấu trúc trang PHP
Một trang php đợc đặt trong cặp dấu <? ?> hoặc chúng ta có thể chèn mã
html v php. ví dụ
<html>
<body>
<title>Hello world</title>
<? Echo 'Hello world ?>
</body>
</html>
b. Biến FORM
Ta



thể

sử

dụng

biến

Form


bằng

cách

sử

dụng

mảng

$HTTP_POST_VARS v $HTTP_GET_VARS hoặc $_POST hoặc $_GET
ví dụ:
$_POST[Name]
c. Session
- Khái niệm:
Session l một đối tợng đợc tạo ra với mục đích lu trữ phiên lm việc của
một đối tợng no đó từ trang ny đến trang khác trong một website.
- Ci đặt Session:
Khởi động Session: Để khởi động Session ta có thể dùng 2 cách sau:
1. Session_start()
Nguyễn Thị Tố Loan

45K-CNTT

Trang17


Giáo viên HD: Ths. Nguyễn Thị Minh Tâm
2. Cấu hình trong trang php.ini

Session.auto_start=0.
- Đăng ký Session:
Session_register(name);
- Hủy bỏ Session;
Session_destroy()
2.3. Tìm hiểu MYSQL
2.3.1. Giới thiệu hệ quản trị CSDL MySQL
CSDL l 1 phn quan trng khụng th th thiu c trong cỏc ng dng
chuyờn nghip. MySQL t lõu ó l h CSDL c dựng ph bin nht vi
PHP vỡ tớnh gn nh, nhanh, min phớ v c PHP h tr sn.
2.3.2. Tạo cơ sở dữ liệu ngời dùng
địa chỉ: http://localhost/phpmyadmin/
Giao diện đồ họa để tạo csdl bằng phpmyadmin nh hình dới đây

Nguyễn Thị Tố Loan

45K-CNTT

Trang18


Giáo viên HD: Ths. Nguyễn Thị Minh Tâm

2.3.3. Lm việc với csdl
PHP cung cp hm mysql_connect kt ni vốo MySQL server. Cú pháp
ca hm ny nh sau:
mysql_connect($server_address, $username, $password)
$server_address l a ch ca MySQL server, cụ th l domain name hoc IP
address, các ví d trong bi vit ny s dùng giá tr "localhost" cho
$server_address.

$username tên ti khoản đăng nhập mặc định l root.
$password mật khẩu đăng nhập, mặc định l trống

Nguyễn Thị Tố Loan

45K-CNTT

Trang19


Giáo viên HD: Ths. Nguyễn Thị Minh Tâm
Hm mysql_connect s tr v 1 kt ni n MySQL server nu nh quá trình kt
ni thnh công, hoc tr v giá tr FALSE nu nh kt ni không c.
dùng kt ni ti MySQL server, PHP cung cp hm mysql_close. on mã
sau vớ d quát trình kt ni vo MySQL server v úng kt ni.
$SERVER = "localhost";
$USERNAME = "root";
$PASSWORD = "";
$conn = mysql_connect($SERVER, $USERNAME, $PASSWORD);
if ( !$conn ) {
//Không kt ni c, thoát ra v báo li
die("Không nt ni c vo MySQL server");
} //end if
//úng kt ni
mysql_close($conn);
?>
a. Chọn cơ sở dữ liệu để lm việc
Sau khi connet vo MySQL server, thao tác ti p theo l chn CSDL lm
vic. PHP cung cp cho ta hm mysql_select_db lm vic ny. Cú pháp

ca hm ny nh sau:
mysql_select_db($db_name[, $conn])
Vi $db_name l tên CSDL cn chn, $conn l kt ni c thc hin
qua lnh mysql_connect. Các ví d trong bi vit ny s s dng CSDL có tên
l test:
$SERVER = "localhost";
$USERNAME = "root";
Nguyễn Thị Tố Loan

45K-CNTT

Trang20


Gi¸o viªn HD: Ths. NguyÔn ThÞ Minh T©m
$PASSWORD = "";
$DBNAME = "test";
$conn = mysql_connect($SERVER, $USERNAME, $PASSWORD);
if ( !$conn ) {
//Không kết nối được, thoát ra và báo lỗi
die("kh«ng kết nối được vào MySQL server");
} //end if
//chọn CSDL để làm việc
mysql_select_db($DBNAME, $conn);
//đóng kết nối
mysql_close($conn);
?>
b. Thùc thi c©u lÖnh SELECT và lÊy kÕt qu¶ tr¶ vÒ
PHP cung cấp cho ta 3 hàm hữu dụng để thực hiện công việc này:



$result = mysql_query($sql, $conn): thực hiện c©y lệnh SQL được cung
cấp qua tham số $sql và trả về 1 kết quả kiểu $result (hàm này trả về
FALSE nếu như c©u lệnh thực hiện kh«ng thành c«ng).



mysql_num_rows($result): hàm này trả về số lượng row lấy được qua
c©u lệnh SELECT (được thực thi bởi hàm mysql_query) trước ®ã.



$row = mysql_fetch_row($result), $row = mysql_fetch_assoc($result): tr¶
vÒ kÕt qu¶ truy vÊn là mét m¶ng.



mysql_error($conn): trả về thông báo lỗi của MySQL server nếu như một
lệnh trước đó có lỗi.
c. Thùc hiÖn c©u lÖnh update, insert, delete

NguyÔn ThÞ Tè Loan

45K-CNTT

Trang21


Gi¸o viªn HD: Ths. NguyÔn ThÞ Minh T©m

Hàm mysql_query cũng được dïng để thực thi c¸c c©u lệnh DELETE,
INSERT hoặc UPDATE, nhưng lóc này hàm sẽ trả về TRUE nếu c©u lệnh thực
hiện thành c«ng và FALSE trong tr ường hợp ngược lại. Để lấy số lượng c¸c
row được chÌn với lệnh INSERT hoặc bị thay đổi bởi lệnh UPDATE, PHP cung
cấp cho ta hàm mysql_affected_rows. Xem vÝ dô sau:
$SERVER = "localhost";
$USERNAME = "root";
$PASSWORD = "";
$DBNAME = "test";
$conn = mysql_connect($SERVER, $USERNAME, $PASSWORD);
if ( !$conn ) {
//Kh«ng kết nối được, tho¸t ra và b¸o lỗi
die("Kh«ng kết nối được vào MySQL server: ".mysql_error($conn));
} //end if
//chọn CSDL để làm việc
mysql_select_db($DBNAME, $conn)
or die("Kh«ng thể chọn được CSDL: ".mysql_error($conn));
$sql = "INSERT INTO member (username, password) VALUES ('xyz', '000')";
$result = mysql_query($sql, $conn);
if ( !$result )
die("Kh«ng thể thực hiện được c©u lệnh SQL: ".mysql_error($conn));
echo "Số lượng row được chÌn: ".mysql_affected_rows($conn)."
\n";
//ta chỉ chän mét dßng nªn hàm mysql_affected_rows sẽ trả về 1
$sql = "UPDATE member SET password='111' WHERE username='xyz'";
NguyÔn ThÞ Tè Loan

45K-CNTT

Trang22



Giáo viên HD: Ths. Nguyễn Thị Minh Tâm
$result = mysql_query($sql, $conn); //i password ca accoutn xyz
if ( !$result )
die("Không th thc hin c câu lnh SQL: ".mysql_error($conn));
echo "S lng row c thay i: ".mysql_affected_rows($conn)."
\n";
//ta thay i 1 dòng nên hm mysql_affected_rows s tr v 1
$sql = "DELETE FROM member";
$result = mysql_query($sql, $conn); //xóa ht tt c cácc account
if ( !$result )
die("Không th thc hin c câu lnh SQL: ".mysql_error($conn));
echo "S lng row c xóa: ".mysql_affected_rows($conn)."
\n";
//ta xoỏ tt c 3 dũng nên hm mysql_affected_rows s tr v 3
//úng kt ni
mysql_close($conn);
?>
2.4. Tìm hiểu mô hình MVC
2.4.1. Giới thiệu
MVC l vit tt ca Model-View-Controller. Phng pháp thit k MVC
l phng pháp chia nh mt ng dng nhiu lp hoc chia nh phn giao din
ngi dựng ca mt ng dng thnh ba thnh phn chính l Model, View v
Controller. Với MVC chúng ta có thể tách biệt các phần kết nối dữ liệu, truy vấn
dữ liệu v hiển thị kết quả, nh vậy việc lập trình sẽ trong sáng v có logic hơn.
- Model (tm dch l phn mô hình ): L mt i tng hoc tp hp các i
tng biu din cho phn d liu ca chng trình.
- View (tm dch l phn Hin th): L phn giao din vi ngi dựng, bao
gm vic hin d liu ra mn hình.
Nguyễn Thị Tố Loan


45K-CNTT

Trang23


Giáo viên HD: Ths. Nguyễn Thị Minh Tâm
- Controller (tm dch l phn iu khin): L phn iu khin ton b logic
v hot ng ca giao din. Nó có nhiệm vụ truy vấn dữ liệu v gửi dữ liệu
xuống cho view hiển thị.
2.4.2. ứng dụng
Với PHP ngoi CakePHP còn có ZendFramdwork l một framework trên
mô hình MVC mạnh mẽ v hỗ trợ nhiều hơn, th ờng sử dụng cho những dự án
lớn hơn. Ngoi ra MVC còn đợc ứng dụng cho nhiều framework của java.
2.5. Tìm hiểu framework CakePHP
Ta có một bảng tên customers
Sau khi kết nối thnh công với cơ sở dữ liệu, ta tiến hnh viết code.
M trỡnh son tho v to cỏc file v ni dung nh sau lu theo ng dn
ch nh File customer.php -> E:\xampp\vanminh\app\models\
class Customer extends AppModel
{
var $name = 'Customer';
}
?>
To File customers_controller.php trong E:\xampp\vanminh\app\controllers
class CustomersController extends AppController
{
var $name = 'Customers';
function index()

{
Nguyễn Thị Tố Loan

45K-CNTT

Trang24


Giáo viên HD: Ths. Nguyễn Thị Minh Tâm
$this->set('customers', $this->Customer>findAll());
}
}
?>
To File index.thtml trong E:\xampp\vanminh\app \views\customers\ Chỳ ý to
th mc customers trong /app/views

Customer Manager


<table>
<tr>
<th>Id</th><th>Name</th><th>Age</th><th>Address</th>
</tr>
<?php foreach ($customers as $cust): ?>
<tr>
<td>2.5.1. Giới thiệu
CakePHP l một framework cho php thiết kế dựa trên mô hình MVC, mục
đích của nó l cung cấp một framework cho ng ời sử dụng php phát triển những
ứng dụng web nhanh, mạnh m không mất tính linh hoạt của nó. CakePHP hon
ton miễn phí v dễ sử dụng, nó cũng cung cấp hệ thống th viện phong phú.
2.5.2. Ci đặt cấu hình

Download CakePHP tại địa chỉ />Sau khi giả nén copy nó vo th mục của Apache server ví dụ
E://xampp/htdocs/vanminh

Nguyễn Thị Tố Loan

45K-CNTT

Trang25


Giáo viên HD: Ths. Nguyễn Thị Minh Tâm
/vanminh
/app
/cake
/vendors
.htaccess
index.php
cake cú th lm vic c vi database, cn cu hỡnh li trang
database.php, mc nh trang ny khụng cú, cu hỡnh ta lm nh sau: - M
file database.php.default /app/config v Save As li thnh file database.php. iu chnh li cỏc thụng s:
var $default = array('driver'

=> 'mysql',

'connect'

=> 'mysql_connect',

'host'


=> 'localhost',

'login'

=> 'root',

'password' => '',
'database' => 'vanminhdb',
'prefix'

=> );

Vi user, password, database ln lt l: tờn user, password v database
trong MySql. Quy c v t tờn bng trong database


Tờn bng trong cake nờn dng ting Anh s nhiu (vd: users, customers,
students, ... )



Bng phi cú primary key tờn l 'id'



Nu cú s dng quan h trong cỏc bng vd: user_id (user khụng cú s v
du _ cng id)
2.5.3. Phát triển ứng dụng web với CakePHP

Ví dụ trong cơ sở dữ liệu của chúng ta có một bảng tên customers

Nguyễn Thị Tố Loan

45K-CNTT

Trang26


×