Professional Documents
Culture Documents
Tai Lieu Thiet Ke Web Dung PHP
Tai Lieu Thiet Ke Web Dung PHP
2
Bi 2 DANH SCH V FORM..........................................................................................16
Bi 3 CASCADING STYLE SHEET (CSS.......................................................................2!
Bi ! GI"I THI#$ %AVASCRI&T ...................................................................................2'
Bi ( CC )*I T+,NG %AVASCRI&T ...........................................................................!1
Bi 6 )*I T+,NG S- .I#N .............................................................................................(3
Bi / L0& TR1NH &H& 2 L0& TR1NH &H3A SERVER .................................................6!
Bi ' TH4M N5I D$NG )5NG VO TRANG HTML..................................................6/
Bi 6 HM V S7 D8NG L9I M: .................................................................................../6
Bi 1; LM VI#C V"I .I<$ D LI#$ M=NG.............................................................'3
Bi 11 LM VI#C V"I CH$>I.........................................................................................61
Bi 12 SESSION 2 COO.IES............................................................................................6'
Bi 13 M?S@L.....................................................................................................................11;
Bi 1! TR$Y C0& CA SB D LI#$ MYS@L TC &H& ...............................................12!
Bi 1( HI<N THD V &HEN TRANG..............................................................................12'
Bi 16 $&DATE D LI#$.................................................................................................136
Page 1.
Bi 1 NGN NG HTML
1.1 Gii Thiu
HTML (Hypertext Markup Language) l mt s nh dng da trn ngn ng !nh d"u
#hu$n (%ML & %eneral Markup Language)' (gn ng %ML )*# t+ ra t, n-m ./0/1 t, 2
t)3ng 4n g56n l t!#h 758t n5 dung 9 h:nh dng #;a t5 l58u' <nh dng #;a HTML #h+
ph=p tr:nh duy8t >e7 h5?n th #!# t5 l58u1 #!# t5 l58u ny 7a+ g@m #6 Med5a' A6n thBn mt
t5 l58u HTML #hC l nhng tDp t5n 9-n 76n 4n g56n (EFGHH) 9I5 nhng thJ (tag) h+K# nhng
dLng mM K# 758t m mt tr:nh duy8t Ne7 75Ot #!#h thng d#h 9 h5?n th trn mn h:nh'
PhQn lIn #!# #hu$n 9R tr:nh duy8t 9 #!# #ng ngh8 l5n Suan On >e7 Ru )*# ph!t tr5?n
735 >+rld >5de >e7 G+ns+rt5um (>TG) & mt tU #hV# #hu$n # lDp )*# thnh lDp 9+
n-m .//W' Ta #X th? t:m k5Om #!# thng t5n #;a >TG 9 #ng 958# #;a tU #hV# ny t5
>e7s5teY NNN'NT#'+rg'
Mt sZ nh ph!t tr5?n tr:nh duy8t t+ ra mt sZ thJ kh!# #h+ tr:nh duy8t #;a h[1 #!# thJ ny
5 kh5 #h)a )*# h\ tr* 735 #!# tr:nh duy8t kh!#1 9: l2 d+ ny1 mt trang >e7 #X th? h5?n th
r"t h58u Su6 3 tr:nh duy8t ny1 nh)ng l5 r"t t@5 3 mt tr:nh duy8t kh!#' ]+ 9Dy kh5 th5Ot kO
#!# trang Ne71 nn h:nh dung m[5 ngu^5#X th? ang s_ d`ng mt tr:nh duy8t kh!# 9I5 tr:nh
duy8t ta ang s_ d`ng1 #Qn k5?m tra ka tr)I# kh5 )a trang Ne7 ln mng Hnternet
Mt sZ nh ph!t tr5?n tr:nh duy8t t+ ra mt sZ thJ kh!# #h+ tr:nh duy8t #;a h[1 #!# thJ ny
5 kh5 #h)a )*# h\ tr* 735 #!# tr:nh duy8t kh!#1 9: l2 d+ ny1 mt trang >e7 #X th? h5?n th
r"t h58u Su6 3 tr:nh duy8t ny1 nh)ng l5 r"t t@5 3 mt tr:nh duy8t kh!#' ]+ 9Dy kh5 th5Ot kO
#!# trang Ne71 nn h:nh dung m[5 ngu^5#X th? ang s_ d`ng mt tr:nh duy8t kh!# 9I5 tr:nh
duy8t ta ang s_ d`ng1 #Qn k5?m tra ka tr)I# kh5 )a trang Ne7 ln mng Hnternet
1.2 Cc Thnh Phn Ca Trang HTML
1.2.1 Th HTML.
bh5 mt tr:nh duy8t Ne7 h5?n th mt trang HTML1 tr:nh duy8t sc [# d5le HTML ny 9 t:m
k5Om nhng +n mM K# tr)ng tr+ng d5le g[5 l thJ (tag)' G!# thJ HTML )*# !nh d"u 735
k2 h58u ef e9 ege' ]ng #hung #;a mt thJ HTML lY
ftaghname thu#htinh.jeg5! tr .e thu#htinhk j eg5! tr ke g Ghu\5 9-n 76n1 Med5a
fltaghnameg
mi d`Y fAg HTML flAg
ThJ ny (fAg) 7!+ #h+ tr:nh duy8t h5?n th +n 9-n 76n HTML l #h 5n Dm' G!# thJ
HTML 7!+ #h+ tr:nh duy8t 75Ot kh5 n+ th: #Qn 5n Dm1 5n ngh5ng 9-n 76n1 lm 9-n 76n tr3
thnh HnE]no1 l5n kOt On mt trang kh!#1 p
& Tr+ng thJ HTML ftaghnameg th: g5a efe 9 taghname ph65 )*# 95Ot l5Rn (g5a
#hqng khng #X kh+6ng trrng)'
& Thng th)^ng mt thJ HTML Ru #X mt thJ Xng fltaghnameg' Tr+ng thJ Xng #X
#hVa k2 t ele1 k2 t ny 7!+ #h+ tr:nh duy8t 75Ot h58u l# #;a thJ ny kOt thq# t5 By'
HQu hOt #!# thJ HTML Ru #X thJ kOt thq#'
Page 2.
& M\5 thJ HTML #X th? #X mt1 nh5Ru h+K# khng #X thu# tinh' M\5 thu# tinh #X th?
#X #!# g5! tr h+K# khng #X #!# g5! tr' (Ou #X g5! tr th: #!# g5! tr ny th)^ng )*#
Kt tr+ng #Kp d"u ng+K# k=p'
& G!# thJ HTML #X th? )*# 95Ot 7sng #h th)^ng hay #h h+a' Tr:nh duy8t Ne7
khng phBn 758t nh dng ny'
& bhng g5Zng nh) lDp tr:nh tr+ng #!# ngn ng kh!#1 9I5 trang HTML1 nOu #X mt l\51
trang >e7 9tn )*# h5?n th mK# du #X th? khng qng 2 @ #;a nh th5Ot kO'
& Tr:nh duy8t Ne7 #X #!# 7 t, 9ng #!# tag m31 d+ 9Dy 5 kh5 mt tag )*# nhDn 75Ot
735 tr:nh duy8t ny nh)ng l5 khng )*# nhDn ra 735 tr:nh duy8t kh!#' bh5 tr:nh
duy8t khng h5?u mt tag n+ X1 nX sc t ng 7v Sua tag X 9 #hC thng d#h phQn
#Ln l5'
1.2.2 Cu Trc Ca Mt Trang Ti Liu HTML
Mt t5 l58u HTML tUng Su!t )*# tr:nh 7y nh) sauY
fHTMLg
fHnE]g
(5 dung header
flHnE]g
fAw]xg
n5 dung Aw]x
flAw]xg
flHTMLg
& Mt t5 l58u HTML g@m k phQn r5ng 758t' PhQn Qu (HnE]) 9 phQn thBn (Aw]x)'
PhQn Qu #hVa nhng thng t5n 9R t5 l58u 9 khng )*# h5?n th trn mn h:nh' PhQn
thBn #hVa t"t #6 #!# thnh phQn l nhng thV )*# h5?n th nh) l mt phQn #;a trang
Ne7'
& T+n 7 #ng 958# ? t+ mt trang HTML nsm tr+ng #Kp thJ fHTMLg 9
flHTMLg' An tr+ng #Kp thJ ny l #Kp thJ fHnE]gflHnE]g 9
fAw]xgflAw]xg' Trang Ne7 #;a #hqng ta #X th? 9tn h5?n th tZt m khng #Qn
#!# thJ ny1 tuy nh5n 7sng #!#h s_ d`ng #hqng1 trang Ne7 #;a ta sc 6m 76+ h+n
t+n t)4ng thi#h 9I5 #hu$n SuZ# tO #;a HTML 9 #hr# #hrn sc t)4ng thi#h 9I5 #!#
tr:nh duy8t Ne7 kh!# 3 h58n t5 #yng nh) 3 t)4ng la5' <By #yng l mt thX5 Suen tZt'
& G!# #hq thi#h HTML )*# 7a+ 735 fz&& 9 &&g' ]Lng 9-n 76n g5a #Kp thJ ny khng
)*# h5?n th tr+ng trang Ne7' bh5 d#h1 tr:nh duy8t sc 7v Sua #!# thnh phQn nsm
tr+ng #Kp d"u #hq thi#h fz&& 9 &&g' m58# Kt nhng #hq thi#h l r"t hu i#h Z5 9I5
#!# trang Ne7 phV# tp'
& Tr:nh duy8t Ne7 7v Sua #!# kh+6ng trrng Qu dLng1 nhng dLng trZng' ]+ 9Dy kh5
95Ot thJ HTML1 ta #X th? #anh #hCnh #!# thJ1 t+ #!# dLng trZng ng-n #!#h #!# #hq
thi#h1 p sa+ #h+ d{ Su6n l2 m khng s* 6nh h)3ng On n5 dung1 h:nh thV# h5?n th
#;a trang >e7' G!# #hu$n HTML Su5 nh1 m\5 k2 t xuZng hng sc )*# xem nh)
mt kh+6ng trrng' Mt #hu\5 #!# k2 t kh+6ng trrng )*# xem nh) mt kh+6ng
trrng'
& Mt trang HTML #4 76n )*# Kt tn 9I5 phQn m3 rng l HTM h+K# HTML' Tr:nh
duy8t sc nhDn 75Ot #!# t5 l58u HTML Sua #!# phQn m3 rng #;a d5le'
Page 3.
1.3 Cc Th C Bn.
1..1 C!c "#nh $%ng &'n B(n.
1.3.1.1 Nh)ng Ti*u "+
(hng t5u R )*# th# h58n tr+ng HTML 7sng #!#h Kt +n 9-n 76n g5a nhng tsg t5u
R (head5ng tag)' ]ng #!# tag t5u R #;a HTML lY
fHxg Text Eppear 5n Head5ng flHxg
x l mt sZ #X g5! tr t, . On 0 #hC nh ki#h #| #;a t5u R' G!# t5u R )*# srp xOp t,
(Suan tr[ng nh"t) On 0 (it Suan tr[ng nh"t)' G!# dLng h5?n th #!# g5! tr #h+ #!# head5ng t,
. On 0 nh) sau'
a)
MM HTML #h+ h5?n th trn lY
fhtmlg
f7+dyg
fh.g Head5ng Le9el .flh.g fz&& %5! tr ki#h #| lIn nh"t &&g
fhkg Head5ng Le9el kflhkg
fhTg Head5ng Le9el TflhTg
fhWg Head5ng Le9el WflhWg
fh}g Head5ng Le9el }flh}g
fh0g Head5ng Le9el 0flh0gfz&& %5! tr ki#h #| nhv nh"t &&g
flA+dyg
flHTMLg
ThJ ny #X mt thu# tinh l al5gn #X #!# g5! trY Ledt1 o5ght1 Genter dung ? #!#h #hCnh 9-n
76n 9R 7n tr!51 ph651 g5a #;a tr:nh duy8t'
mi d` fHk al5gnje#entereg Head5ng k & Genter flHkg
1.3.1.2 CFiG )HIJ VKJ BLJ V MNOJP DQJP
Mt tr:nh duy8t Ne7 sc 7v Sua t"t #6 #!# k2 t xuZng dLng (#arr5age returns) )*# !nh tr+ng
tr:nh s+n th6+' Tuy nh5n kh5 tr:nh duy8t gKp k thJ fAog 9 fPg nX sc xuZng dLng ? 7rt
Qu mt dLng mI5' F kh!# 758t g5a k thJ ny l fAo g sc xuZng dLng1 fPg sc #h~n mt
dLng trZng 9 xuZng dLng1 h4n na thJ fAog khng #X thJ kOt thq# tr+ng kh5 fPg #X th? #X
9 thJ fPg #Ln #X thu# tinh g5Zng nh) thJ Head5ng l al5gn ? #h+ ph=p #anh #hCnh 9-n 76n
tr+ng +n' (Ou khng #X thJ flPg th: +n 9-n 76n tr+ng thJ fPg #yng 7 #h"m dVt kh5 gKp
thJ fPg mI5'
ThJ fPg #Ln #X mt thu# tinh kh!# l al5gn #X #!# g5! tr ledt (mK# nh)1 #enter 9 r5ght #h+
ph=p #anh #hCnh 9-n 76n tr+ng +n tr+ng #_a sU tr:nh duy8t'
T+ )^ng kJ
ThJ fHog sc t+ mt )^ng kJ ngang Sua trang >e7' GX ha5 thu# tinh th)^ng dung l s5e
9 N5dth' Thu# tinh s5e sc x!# nh ki#h th)I# #;a )^ng thng (tinh 7sng p5xel) 9I5 g5! tr
mK# nh l k 9 N5dth k5?m s+!t #h5Ru rng )^ng kJ' Ta #X th? th5Ot lDp g5! tr #h+
>H]TH the+ p5xel hay the+ t l8 #;a #_a sU tr:nh duy8t' ThJ ny khng #X thJ kOt thq#'
Lm 958# 9I5 #!# k5?u mtu (Ftyle)
HTML #ung #"p mt sZ thJ #h+ 958# nh dng 9-n 76n nh) 5n Dm1 ngh5ng1 p GX th? l58t
k mt sZ thJ #4 76n nh) sauY
HTML tag bOt Su6
fAg Th5s 5s A+ldpfAg (95) TFiR iR BHSTp
Page 4.
fHg Th5s 5s Htal5# pflHg (955) This is Italic p
fttg Th5s 5s TypeNr5ter pflttg This is Typewriter
fg Th5s 5s nderl5ne flg a' Th5s 5s nderl5ne
Ta #yng #X th? kOt h*p #!# tag ny ? nh dng1 m5{n #hqng )*# l@ng 9+ nhau mt #!#h
#hinh x!#' Ta #yng #X th? !p d`ng #!# k5?u mtu 9+ tr+ng #!# t5u R'
1.3.1.3 Mt ,- Th ./rt0atting 1h!c
& fAl+#kSu+tegY Gh~n mt khZ5 9-n 76n )*# tr:nh 7y th`t 9+ tr+ng s+ 9I5 phQn thBn
9-n 76n' The+ #!#h 95Ot truyRn thZng1 mt +n tri#h dtn #;a 7a hay nh5Ru #Bu )*#
lm nU5 7Dt h4n s+ 9I5 +n 9-n 76n #hinh 7sng #!#h tr:nh 7y nh) mt khZ5 9-n 76n
th`t 9+ tr+ng (5ndented 7l+#k +d text)' mI5 trang HTML1 )a 9-n 76n 9+ #Kp thJ
fAl+#kSu+teg p text p flAl+#kSu+teg? t+ #hV# n-ng ny'
& fEddressgY Thng th)^ng tr+ng #!# trang >e71 t5 phQn #uZ5 (d++ter) th)^ng #X 9ung
#ung #"p thng t5n 9R t!# g56 9 t5 l58u' <+n 9-n 76n ny th)^ng )*# Kt tr+ng #!#
dLng tr+ng thJ faddressg1 kh5 X nX sc )*# h5?n th 9I5 k5?u #h 5n ngh5ng' G!#
thng t5n hu i#h #Qn m t6 ngrn g[n tr+ng d++ter th)^ng lY
T5u R hay #h; R trang h58n t5'
(gy t+ 9 ngy #Dp nhDt'
Gh; SuyRn'
Tn ema5l1 t!# g56 trang Ne7'
Tn 9 l5n kOt tI5 9-n 76n ngu@n gZ# tU #hV#'
& ThJ fAase+ntgY Ta s_ d`ng tag ny ? th5Ot lDp d+nt #h mK# nh #h+ t+n 7 trang
Ne7 9 khng #X thJ kOt thq#' ThJ ny #X #!# thu# tinh l da#ejed+nt #he1
s5ejeki#h th)I#e #;a #h' bi#h th)I# 9-n 76n #X g5! tr t, . (nhv nh"t) On (lIn
nh"t)' T"t #6 #!# +n 9-n 76n khng nsm tr+ng thJ d+nt n+ sc s_ d`ng d+nt #h #;a
thJ d+nt7ase' ThJ ny #yng #hC hOt h58u l# kh5 gKp thJ d+nt7ase kh!#'ThJ ny #Ln #X
t!# d`ng tZt tr+ng th5Ot lDp l5 ki#h th)I# #;a d+nt #h the+ tinh t)4ng Z5 #;a thJ
d+nt'
& ThJ fd+ntgY dung ? th5Ot lDp #!# thu# tinh 9R d+nt #h )*# h5?n th trn trang Ne7'
G!# thu# tinh #;a thJ ny 7a+ g@mY
sizeY bi#h #| #;a #h' %5! tr thu# tinh ny #X g5! tr t, . (nhv nh"t) On (lIn nh"t)'
mi d`Y fd+nt s5eje0eg'
(g+5 #!#h th5Ot lDp g5! tr dng tuy8t Z5 #h+ d+nt #h nh) trn1 ta #Ln #X th? th5Ot lDp
g5! tr t)4ng Z5 7sng #!#h da 9+ g5! tr ki#h #| M #X sn tr)I# X 7sng #!#h thm
d"u ee (t-ng) h+K# e&e (g56m) 9+ tr)I# g5! tr #;a thu# tinh s5e' mi d`Y fd+nt
s5ejekeg sc t-ng ki#h th)I# #;a d+nt #h ln k g5! tr s+ 9I5 d+nt #h h58n t5' Th5Ot
lDp thu# tinh dng t)4ng Z5 ny sc r"t hu i#h kh5 ta thay U5 ki#h th)I# d+nt #h s+
9I5 g5! tr tr+ng thJ 7ased+nt' mi d` nOu ta muZn t-ng ki#h #| d+nt #h #;a trang ln .
4n 91 ta #hC #Qn thay U5 l5 g5! tr tr+ng thJ 7ased+nt (th)^ng )*# s_ d`ng mt lQn
tr+ng mt trang) m khng #Qn thay U5 l5 tr+ng t"t #6 #!# thJ d+nt #;a trang'
FaceY Tn #;a d+nt #h )*# x!# nh ? h5?n th 9-n 76n trn tr:nh duy8t'
ColorY Mu sr# #;a d+nt #h' Ta s_ d`ng thu# tinh ny kh5 #Qn th5Ot lDp mu r5ng
758t #h+ +n 9-n 76n tr+ng thJ d+nt' Thng th)^ng mu 9-n 76n )*# x!# nh tr+ng
thJ f7+dyg h+K# s_ d`ng mu mK# nh #;a tr:nh duy8t' %5! tr #;a thu# tinh ny
#yng g5Zng nh) t"t #6 #!# thu# tinh x!# nh mu sr# kh!# #;a trang Ne71 X l ta #X
th? s_ d`ng #!# mu hsng h+K# #!# g5! tr #;a h8 mu o%A the+ dng sZ hexa ? th5Ot
lDp mt mu sr# nh"t nh'
Page 5.
G!# 9i d` 9R thJ d+nt'
&&&&&&&&&&&&&&&&&&mi d` .&&&&&&&&&&&&&&&&&&&&&
fhtmlg
f7+dyg
fd+nt s5ejeWe #+l+rjerede da#eje9n5&t5meseg+nt s5eYW & #+l+rYred & da#eY9n5&t5mesf7rg
fd+nt s5ej0 #+l+rjedde da#ejear5aleg+nt s5eY0 & #+l+rY dd & da#eYar5alfld+ntgf7rg
fd+nt s5eje&keg+nt s5eYk & #+l+rYred & da#eY9n5&t5mesfld+ntgf7rg
+nt s5eYW & #+l+rYred & da#eY9n5&t5mesfld+ntg
fl7+dyg
flhtmlg
&&&&&&&&&&&&&&&&&&mi d` k&&&&&&&&&&&&&&&&&&&&&
fhtmlg
f7+dyg
f7ased+nt da#eje9n5&t5mese s5ej0g
fd+nt s5ej.g +nt s5ej.fld+ntgf7rg
fd+nt s5ejkg +nt s5ejkfld+ntgf7rg
fd+nt s5ejTg +nt s5ejTfld+ntgf7rg
fd+nt s5ejWg +nt s5ejWfld+ntgf7rg
fd+nt s5ej}g +nt s5ej}fld+ntgf7rg
fd+nt s5ej0g +nt s5ej0fld+ntgf7rg
fd+nt s5ejg +nt s5ej #hfld+ntgf7rg
(g+5 thJ d+ntfpg
fhr N5dthj} al5gnjledtg
f7ased+nt s5ejW da#eje9n5&t5meseg
(g+5 thJf7rg
fd+nt s5ej0g
d+nt s5ej0f7rg
fld+ntg
ng+5 thJ
fd+nt s5ejeTegd+nt s5ejfld+ntgf7rg
fd+nt s5eje&kegd+nt s5ejkfld+ntg
fl7+dyg
flhtmlg
& fPregY H5?n th dng #h !nh m!y 9 g5 nguyn #!# kh+6ng trrng 9 d"u xuZng
dLng'
& fFu7gY m-n 76n tr+ng thJ ny sc )*# 95Ot d)I5 dng Fu7s#r5pt' <By l 9-n 76n )*#
5n h45 th"p h4n dLng #h th)^ng'
& fFupgY m-n 76n tr+ng thJ ny sc )*# 95Ot d)I5 dng Fuppers#r5pt' <By l 9-n 76n
)*# 5n h45 #a+ h4n dLng #h th)^ng'
& fA5gg 9 fFmallgY <+n 9-n 76n nsm tr+ng thJ sc #X d+nt&s5e dng #h lIn h+K#
nhv t)4ng Vng'
& fMarSueegY m-n 76n nsm g5a ha5 thJ ny sc #hy Sua #hy l5 tu the+ #!# g5! tr
thu# tinh )*# th5Ot lDp' Mt sZ thu# tinh #;a MarSuee lY
DirectionY GX g5! tr 7sng Ledt h+K# o5ght l h)Ing #huy?n ng #;a 9-n 76n'
ScrollDelayY %5! tr nguyn d)4ng ny l sZ m5l5 g5By 9-n 76n ng,ng tr)I# kh5
#huy?n ng t5Op' %5! tr #ng nhv1 #huy?n ng #ng nhanh'
BehaviorY L+5 #huy?n ng #;a text' F#r+ll1 Fl5de1 Elternate
Page 6.
Align >5th textY <+n 9-n 76n )*# #anh #hCnh tr+ng 9ung d58n ti#h #;a marSuee' GX
T g5! trY T+p1 M5ddle1 A+tt+m'
LoopY %5! tr nguyn th5Ot lDp sZ #hu k #huy?n ng #;a +n 9-n 76n'
mi d`
fMarSuee al5gnjem5ddlee d5re#t5+njer5ghte s#r+lldelayje0eg
Gh+ m,ng 7n M On Ne7s5te #;a #hqng t5
flMarSueeg
1..2 Ch2n H3nh 4nh &/ Trang HTML
GX nh5Ru h:nh 6nh )*# h\ tr* trn Hnternet nh)Y 'PHGT1 '%H1 'TH1 'AMP1 'P%1
'Pn%p 9 #!# h:nh 6nh ny # lDp 9I5 dlatd+rm' Tuy nh5n dng #hu$n h5?n th tr+ng mt
trang Ne7 l %H (%raph5#s Hnter#hange +rmat)' %H n=n #!# thng t5n #;a h:nh 6nh (lm
g56m ki#h th)I# #;a tDp t5n) 9 #huy?n nX thnh mM nh phBn ? #huy?n Sua mng Hnternet'
ba thuDt n=n dng %H #X h58u Su6 #a+ nh"t kh5 h:nh 6nh #X nhng 9ung l5n t`# #ung mu
9 958# n=n #ng lIn kh5 #X s lKp l5 mu the+ #h5Ru Vng' Mt dng h:nh 6nh kh!# th)^ng
hay )*# s_ d`ng tr+ng Ne7 l P% h+K# Pn% ()*# Kt tn sau kh5 nhXm +5nt
Ph+t+graph5# nng5neer5ng %r+up th5Ot kO ra dng ny)' ba thuDt n=n Pn% r"t #X h58u Su6
9I5 #!# 6nh #h`p #X mu sr# thay U5 l5n t`# tr+ng #!# phQn r"t nhv #;a 6nh' Tu thu# 9+
#h"t l)*ng 6nh1 Pn% #ung #"p #!# h8 sZ n=n 9R ki#h th)I# r"t "n t)*ng'
& GX nh5Ru #h)4ng tr:nh @ h+ #X sn #hV# n-ng l)u tr tDp t5n the+ dng tu #h[n' Ta
nn l)u the+ ha5 l+5 9 s+ s!nh ki#h th)I# 9 #h"t l)*ng 6nh ? SuyOt nh s_ d`ng
h:nh ny l+5 n+' Mt 95 t58n i#h #h+ @ h+ #h+ ph=p #!# #huy?n U5 ny nh)Y
%HG+n9erter1 >5n%5dp
& bh5 th5Ot kO trang Ne7 #X h:nh1 nn l)u 2 ? trang th5Ot kO #X dung l)*ng khng lIn
Su!' ]ung l)*ng #;a trang )*# tinh gp t"t #6 #!# h:nh #h~n 9+ trang #hV khng
ph65 #hC tinh phQn 9-n 76n HTML'
& Th)^ng kh5 th5Ot kO Ne71 ta t+ mt th) m`# r5ng ? l)u tr #!# h:nh 6nh #h+ ph=p
Su6n l2 d{ dng t+n 7 >e7 F5te'
& <? #h~n mt h:nh 6nh 9+ trang Ne71 s_ d`ng thJ fHM% g' ThJ ny khng #X thJ kOt
thq#' Tr+ng thJ ny #X nh5Ru thu# tinh nh) sauY
SRCY #X g5! tr l )^ng dtn #;a d5le h:nh 6nh' <)^ng dtn ny th)^ng )*# x!# nh
l #!# )^ng dtn t)4ng Z5 h+K# )^ng dtn Qy ; t, mt Ne7s5te kh!#' mI5 )^ng
dtn t)4ng Z51 ? truy #Dp On th) m`# #"p #ha ta s_ d`ng ha5 d"u #h"m 9 d"u
xU Ye''le'
V d
fHM% FoGjeHmageslh.'g5deg Gh~n h:nh h.'g5d tr+ng th) m`# #+n Hmages'
fHM% FoGje''lHmageslh.'g5deg Gh~n h.'g5d t, th) m`# ngang hng 9I5 th) m`# h58n hnh
tn l Hmages'
fHM% FoGjeNNN'm5#r+s+dt'#+ml5mageslh.'g5deg Gh~n h:nh h.'g5d tr+ng th) m`# 5mages
#;a Ne7s5te #X d+ma5n l m5#r+s+dt'#+m '
C!c th"#c tnh $h!cY
AlignY #X #!# g5! tr t+p1 m5ddle1 7+tt+m (mK# nh)1 ledt1 #enter1 r5ght sc 5Ru kh5?n 9 tri #;a
9-n 76n s+ 9I5 h:nh 6nh tr+ng hng'
Page 7.
AltjetexteY l +n 9-n 76n h5?n th t5 9 tri h:nh tr+ng #!# tr)^ng h*pY kh5 ng)^5 s_ d`ng
tr:nh duy8t khng h\ tr* h:nh1 trt 958# tr:nh 7y h:nh 6nh tr+ng tr:nh duy8t1 kh5 h:nh #h)a
)*# t65 x+ng1 bh5 )a #+n trv 9+ 9ung h:nh 6nh'
%idth& 'eightY GX g5! tr l #!# sZ nguyn1 l g5! tr x!# nh #h5Ru rng 9 #h5Ru #a+ #;a
h:nh the+ p5xels' Ta #X th? )a #!# g5! tr ki#h th)I# ny kh!# 9I5 ki#h th)I# thDt #;a h:nh
6nh1 tuy nh5n #X th? h:nh 6nh sc 7 75On dng h+K# xu"t h58n nhng khZ5 mu ng+5 9ung
ki#h th)I# thDt' Thng th)^ng1 kh5 khng x!# nh #h5Ru rng 9 #h5Ru #a+1 tr:nh duy8t sc
h5?n th mt h:nh 6nh @ h+ thay thO mK# nh 9I5 mt ki#h th)I# #Z nh #h+ On kh5 nX t65
xuZng x+ng h:nh 6nh #Qn h5?n th' Fau X h:nh 6nh sc )*# thay U5 On ki#h th)I# #;a h:nh
#hinh' <5Ru ny sc lm #h+ n5 dung tr+ng #_a sU )*# nh 9 l5' bh5 x!# nh ha5 thu#
tinh ny th: tr:nh duy8t dnh mt #h\ trn mn h:nh tr)I# kh5 6nh )*# t65 xuZng' <5Ru ny
#X th? lm trang Ne7 )*# th? h58n mt #!#h #hinh x!# 9 nhanh #hXng h4n'
'spaceY bh+6ng #!#h tinh 7sng p5xel #;a 9-n 76n xu"t h58n xung Suanh tI5 ha5 75n d[# #;a
h:nh 6nh'
Vspace %5Zng nh) thu# tinh trn nh)ng tinh the+ #h5Ru Vng'
BorderY th5Ot lDp )^ng 75n #h+ 6nh tinh the+ p5xel' (Ou khng muZn th"y 75n1 ta #h+ g5!
tr 7sng '
1.. Mu ,5c & Cu Trc Ch/ N+n
& Tr+ng mt tr:nh duy8t Ne71 ta )*# s_ d`ng #!# mu #;a h8 thZng ? t+ mu #h+
9-n 76n 9 #h+ nRn #;a trang Ne7' M\5 mu )*# x!# nh da trn #!# g5! tr oed&
%reen&Alue (o%A) #;a nX' Aa sZ ny #X gia tr (95Ot the+ h8 thDp phBn) t, tI5 k}}1
m\5 sZ th? h58n #)^ng #;a thnh phQn mu the+ thV t oed&%reen&Alue' %5! tr
lIm nh"t #;a #6 T (k}}&k}}&k}}) sc #h+ ra mu trrng 9 g5! tr nhv nh"t (&&) sc
#h+ ra mu en' T"t #6 #!# mu )*# 75?u d5{n 735 7 7a o%A kh!# nhau'
& G!# mu )*# th5Ot lDp tr+ng t5 l58u HTML 7sng #!# sZ hexa #X dng xxyy'
Tr+ng X x1 y1 l #!# g5! tr t, On ' xx l g5! tr #;a mu red1 yy l #;a mu
%reen 9 l mu Alue'
& Ta #yng #X th? s_ d`ng #!# mu hsng sZ #4 76n )*# nh ngha sn m tr:nh duy8t
#X th? h5?u )*# nh)Y Alue1 %reen1 xell+N1 p
& ThJ Aw]x #h+ ph=p ta thm 9+ #!# thu# tinh 9R mu sr# #;a trang Ne7'
fA+dy 7g#+l+rjexxxxxxe textjexxxxxxe L5nkjexxxxxxe ml5nk j exxxxxxeg
Tr+ng X m\5 g5! tr x #X g5! tr t, On '
Ag#+l+r j mu nRn'
TextY Mu #;a 9-n 76n tr+ng phQn thBn trang Ne7'
L5nkY Mu sr# #;a #!# l5n kOt s5u 9-n 76n' Mu mK# nh l Alue'
ml5nk (m5s5tted L5nk)Y Mu sr# #;a mt m`# s5u l5n kOt M )*# xem' Mu mK# nh l
Purple (tim)'
V d
fhtmlg
f7+dy 7g#+l+rje%reene textjee l5nkje7luee 9l5nkjee g
Mau sau tr+ng trang Ne7 f7rg
fa hredjeeg l5nk . flEgf7rg
fAgfE hredjeegl5nk kflagflAg
flA+dyg
flHTMLg
Page 8.
mI5 thJ Aw]x1 ta #Ln #X th? thay U5 nRn trang Ne7 7sng mt h:nh 6nh Sua thu# tinh
7a#kgr+und' Ta #yng #X th? #h~n 9+ mt 6nh nhv 9 tr:nh duy8t sc el*pe #!# 76n sa+ l5n t`#
#!# h:nh ny 9+ trang Ne7'
fA+dy 7a#kgr+undjeh.'g5deg'
(#t s) *i+" c,n ch- .Y
bi#h th)I# h:nh #Qn #h~nY (n s_ d`ng #!# h:nh #X ki#h th)I# #ng nhv #ng tZt'
HMy la #h[n h:nh 9 mu 9-n 76n sa+ #h+ #X t)4ng ph6n #a+'
(Ou tr+ng thJ A+dy #X #6 k thu# tinh 7g#+l+r 9 7a#kgr+und1 kh5 h:nh nRn trang
#h)a l+ad x+ng1 trang sc #X mu 7g#+l+r 9 mu sc #huy?n thnh h:nh nRn kh5 trang
np x+ng h:nh'
1..6 ,7 $8ng H9:;r<in=
& FV# mnh thDt s #;a >e7 l kh6 n-ng t+ ra nhng s5u l5n kOt (hyperl5nk) On #!#
thng t5n l5n Suan' (hng thng t5n ny #X th? l nhng trang >e7 kh!#1 nhng h:nh
6nh1 Bm thanh1 +n ph5m1 an5mat5+n1 #!# #h)4ng tr:nh1 n5 dung #;a g+pher ser9er1
mt tr:nh l+g&5n 9+ m!y tinh 3 xa (rem+te #+mputer)1 mt tDp h*p #!# phQn mRm1
TP s5te'
& >>> s_ d`ng mt #!#h !nh a #hC g[5 l oL (n5d+rm oes+r#e L+#at+r) ? #hC
ra nhng 9 tri #;a nhng m`# nh) 9Dy' (hng l5n kOt ny th)^ng )*# 75?u d5{n
735 nhng #h mu xanh #X g#h d)I5 9 )*# g[5 l an#h+r'
& ThJ fEg sc dung ? t+ #!# l5n kOt 9 #X dng nh) sauY
fE hredjoL targetjnameg Text l5nk1 med5a flEg
Ta #X th? xem a l an#h+r1 hred l hypertext oederen#e'
& Thu# tinh targetY Target #X g5! tr )*# th5Ot lDp nh) tr+ng 76ng d)I5'
%5! tr ngha
(ame (p trang >e7 9+ tr+ng #_a sU hay drame #X tn l name'
h7lank (p trang >e7 9+ #_a sU mI5 khng #X tn'
hparent (p trang Ne7 9+ #_a sU #ha #;a trang h58n hnh'
hseld %5! tr mK# nh' (p trang Ne7 9+ #_a sU h58n hnh'
ht+p (p trang Ne7 9+ #_a sU #a+ nh"t'
(Ou th5Ot lDp mt tn tr+ng target m #h)a )*# m3 (tr:nh duy8t khng 75Ot)1 kh5 X
tr:nh duy8t sc t+ mt #_a sU mI5 (g5Zng nh) h7lank) ? np trang l5n kOt1 #_a sU ny
)*# Kt tn l g5! tr name mI5 t+' %5! tr #;a #;a sU ny #X i#h tr+ng tr)^ng h*p s_
d`ng #!# mM ki#h 76n nh) a9as#r5pt' G!# g5! tr hsng tr+ng #t g5! tr 76ng trn ph65
95Ot 7sng #h th)^ng'
& Thu# tinh hredY <)^ng dtn #;a Z5 t)*ng )*# l5n kOt tI5' G!# g5! tr #;a oL
tr+ng thu# tinh hred' Ta #X th? phBn #h5a ra lm k l+5 l5n kOt' L5n kOt On #!# d5le
tr+ng #ung mt Ne7s5te 9 l5n kOt On #!# d5le tr+ng Ne7s5te kh!#'
L5n kOt tr+ng #ung Ne7s5teY M[5 g5! tr oL Ru l )^ng dtn t)4ng Z5 (ralat59e
l5nk & )^ng dtn tinh t, th) m`# h58n hnh1 th) m`# #hVa l5n kOt ang s+n th6+)
h+K# )^ng dtn tinh t, ]+ma5n' Tuy nh5n th)^ng it kh5 s_ d`ng )^ng dtn t,
d+ma5n name d+ khng thuDn t58n 9: kh5 th5Ot kO ta th)^ng #h)a 75Ot )*# a #hC
>e7s5te #hinh thV#' bh5 s_ d`ng )^ng dtn t)4ng Z51 9I5 #!# l5n kOt tI5 th) m`#
#"p #a+ h4n1 ta s_ d`ng #Kp g5! tr e''le'
Page 9.
L5n kOt On mt d5le tr+ng >e7s5te kh!#Y Ta s_ d`ng )^ng dtn oL tinh t, d+ma5n
name'
L5n kOt On mt 7++kmark tr+ng #ung trang hay t4i mt 7++kmark #;a trang kh!#Y
A++kmark l mt 9 tri )*# !nh d"u tr+ng trang Ne7' T, mt 9 tri1 ta #X th? l5n
kOt On 9 tri M )*# !nh d"u ny' A:nh th)^ng1 kh5 l5n kOt tI5 trang1 9 tri Qu t5n
#;a trang sc )*# h5?n th ngay t5 phQn Qu #_a sU tr:nh duy8t mK# du trang #Qn h5?n
th d5 h4n 9ung #_a sU' Tuy nh5n1 kh5 ta l5n kOt On 7++kmark1 9 tri #;a 7++kmark
sc )*# h5?n th tr+ng 9ung 7rt Qu #;a #_a sU mK# du trang #X n5 dung h5?n th 9)*t
Su! 9ung #_a sU tr:nh duy8t' <? l5n kOt On 7++kmark1 ta thm d"u 9 tn
7++kmark ngay sau g5! tr #;a oL' <? t+ mt 7++kmark1 ta s_ d`ng thJ fEg t5 9
tri #Qn t+ the+ Su5 tr# sauY fE namejetn7++kmarkegtextflEg'
<? d{ h:nh dung1 g56 s_ ta #X #By th) m`# nh) h:nh sau' GBy th) m`# ny l mt >e7
s5te #X d+ma5n lY NNN'a7#'#+m'
Trang d.k'htm #X n5 dung nh) sauY
&&&&&&&&&&&.k'htm&&&&&&&&&&&&&&
fhtmlg
f7+dyg
s+meth5ng here'
fa nameje#hapter.egflag
s+meth5ng
&&&&&&
&&&&&&
fa nameje#hapterke g#hapterkflag
&&&&&&&
fl7+dyg
flhtmlg
A6ng 9i d` sau sc s_ d`ng thJ fEg ? l5n kOt On #!# thnh phQn kh!#'
Code HTML M trong file ngha
fE hredj#hapter.g Ghng .flEg
.k'htm
& L5n kOt n5 On 9 tri #X
7++kmark tn l #hapter.
tr+ng #ung trang'
fE hredjd.k'htm#hapter.g
fHM%sr#j''l5mageslh.'g5dgflEg ..'htm
& L5n kOt l h:nh h.'g5d On
trang d.k.'htm t5 9 tri
7++kmark #X tn #hapter.
tr+ng #ung th) m`#'
Page 10.
fa hredjd+lder.ld..'htmg #l5#k flag Hndex'htm L5n kOt On trang d..'htm
fEhredj''ld+lderkld+lderk.ldk..'htmg l5nk
flEg
..'htm L5n kOt On trang dk..'htm
fa hredj''ldk.'htm targetjh7lankg trang
dk. flag
k..'htm
L5n kOt On trang dk.'htm
9 sc np dk.'htm 9+ #_a sU
mI5 nOu #l5#k 9+ l5n kOt
ny'
fa hredja'5pgd+Nnl+ad flag k..'htm
H5?n th #_a sU ? d+Nnl+ad
tDp t5n a'5p
fE hredjNNN'm5#r+s+dt'#+m
Targetjh7lankg M5#r+s+dt flEg
L5n kOt On trang #h; #;a
m!y #h; M5#r+s+dt' Trang
Ne7 )*# np 9+ #_a sU
mI5
fE hredjdtpYlldtp'm5#r+s+dt'#+mlms'5pg
d+Nnl+ad flEg
& H5?n th #_a sU t65 tDp t5n
the+ g5a+ thV# dpt
fE hredjma5lt+Ya7#yah++'#+mg My
nma5l flEg
& H5?n th tr:nh s+n th6+ th)
? g_5 tI5 a #hC x!# nh
tr+ng hred'
1..> .ra0;
Asng #!#h dung drame (khung)1 ta #X th? ngrt trang Ne7 thnh #!# 9ung r5ng 758t (#_a sU) 9
th? h58n #!# tDp t5n HTML kh!# nhau tr+ng m\5 9ung' mI5 #!#h ny1 m\5 9ung #X th? #huy?n
sang trang Ne7 kh!# tr+ng kh5 #!# 9ung kh!# 9tn khng thay U5'
Ta #X th? t+ khung 7sng #!#h dung mt h@ s4 nh ngha tDp khung & mt tDp t5n HTML #hC
#hVa #!# thng t5n 9R #!#h thV# phBn #h5a trang Ne7 9 #!# tDp t5n sc )*# h5?n th tr+ng m\5
9ung t)4ng Vng' mi d`'
fHTMLg
fHnE]g
fTHTLng rameflTHTLng
flHnE]g
foEMnFnT GwLFje}11eg
foEMn FoGje.'htmeg
foEMn FoGjek'htmeg
foEMn FoGjeT'htmeg
floEMnFnTg
flHTMLg
TDp khung tr+ng +n mM trn trv tI5 T h@ s4 tr+ng html lY.'htm1 k'htm 9 T'htm' Phia tr+ng
thJ foEMnFnTg #X thu# tinh GwLF1 !m #hC rsng trang sc )*# #h5a thnh nh5Ru #t1 T
g5! tr #;a thu# tinh ny sc x!# nh T #tY #t Qu t5n sc #X #h5Ru rng 7sng 9I5 } #_a sU
tr:nh duy8t1 #t thV ha5 #X #h5Ru rng l p5xel 9 #t thV 7a sc #X #h5Ru rng 7sng 9I5 phQn
#Ln l5 #;a #_a sU tr:nh duy8t ()*# th? h58n 735 75?u t)*ng )' (Ou ta th5Ot lDp ki#h th)I#
#;a khung 7sng #!#h dung tC l8 phQn tr-m1 #hqng sc #+ g5Mn tuy the+ #_a sU tr:nh duy8t'
Tr+ng h:nh ta th"y #!# thanh phBn #!#h g5a #!# #t1 ng)^5 dung #X th? k=+ #!# thanh ny ?
thay U5 ki#h th)I# #;a #t' uay tr3 l5 9I5 +n mM1 #hq 2 rsng phia tr+ng tDp khung1 #X
#!# thJ foEMng' G!# thJ ny x!# nh #!# tDp t5n HTML m tr:nh duy8t sc h5?n th tr+ng
m\5 tr:nh duy8t #;a khung'
Page 11.
C!c Th/ t0o 1ra2e v3 th"#c tnhY
Th/ Fra2esetY T+ mt drame'
Thu# tinhY
& #+lsjegtr .1 g5! tr k1 peY PhBn #h5a mt drame thnh #!# 9ung #+n #X sZ #t (#+ls) l
sZ #!# g5! tr tr+ng #+ls'
& r+Nsjegtr .1 g5! tr k1 pe Y PhBn #h5a mt drame thnh #!# 9ung #+n #X sZ dLng
(r+Ns) l sZ #!# g5! tr tr+ng r+Ns'
& oEMnAwo]no1 oEMnFPEGH(%Y
Th/ Fra2eY L@ng tr+ng drameset1 x!# nh d l58u #h+ 9ung #_a sU h58n t5'
Thu# tinhY
& FoGY !# nh )^ng dtn On trang #Qn np
& (ameY Tn #;a drame' F_ d`ng #h+ thu# tinh target #;a #!# l5n kOt'
& F#r++l5ngY (yes1 n+1 aut+)Y !# nh 958# h5?n th thanh #un'
fHTMLg
fHnE]g
fTHTLngnm7edd5ng rameflTHTLng
flHnE]g
foEMnFnT ow>Fje}1e oEMnAwo]nojee oEMnFPEGH(%jeeg
foEMn FoGje.'htme (EMnjedrame.e FGowLLH(%jen+eg
foEMnFnT GwLFjek1e oEMnAwo]noje.e oEMnFPEGH(%je.eg
foEMn FoGjek'htme (EMnjedrameke FGowLLH(%jeyeseg
foEMn FoGjeT'htme (EMnjedrameTe FGowLLH(%jeaut+eg
floEMnFnTg
floEMnFnTg
flHTMLg
45i n#i d"ng gi6a c!c $h"ng
m58# #X th? g_5 n5 dung #;a mt khung t, 7"t k khung n+ M m3 ra mt l+t #!# kh6 n-ng'
%56 s_ rsng ta muZn t+ mt thanh d5 #huy?n' <? th# h58n 5Ru ny1 #!# l5n kOt tr+ng tDp t5n
#hVa thanh d5 #huy?n ph65 #X kh6 n-ng g_5 n5 dung On #!# khung kh!# tr+ng tDp khung X'
<+n mM sau t+ ra mt tDp khung 9I5 mt thanh d5 #huy?n 4n g56n'
fHTMLg
foEMnFnT GwLFjek}1}e oEMnAwo]noje.e oEMnFPEGH(%je.eg
foEMn FoGjena9'htme (EMnje(a9ramee FGowLLH(%jeyeseg
foEMn FoGje.'htme (EMnjeG+ntentramee FGowLLH(%jeaut+eg
floEMnFnTg
flHTMLg
TDp khung tr+ng +n mM g5I5 th58u mt tDp t5n HTML mI5 #X tn l na9'htm 9I5 mt l+t
#!# l5n kOt tr+ng X' TDp t5n na9'htm #X n5 dung nh) sauY
fHTMLg
fAw]xg
fE Honje.'htme TEo%nTjeG+ntentrameeg%+ t+ rame .flEgfAog
Page 12.
fE Honjek'htme TEo%nTjeG+ntentrameeg%+ t+ rame kflEgfAog
fE HonjeT'htme TEo%nTjeG+ntentrameeg%+ t+ rame TflEgfAog
flAw]xg
flHTMLg
7h6ng v8n *+ c,n 9"an t:2 $hi s5 dng 1ra2e
& m: nh5Ru tr:nh duy8t #y khng h\ tr* khung1 ta #X th? #Qn ph65 Suan tBm tI5 thJ
f(woEMnFg tr+ng #!# trang Ne7 #;a m:nh' G!# tr:nh duy8t khng h\ tr* khung sc
#hC h5?n th phQn 9-n 76n nsm g5a #Kp thJ f(woEMnFg 9 fl(woEMnFg' m-n
76n ny #X th? 7a+ g@m 7"t k nhng g: t, mt #+n trv #hC On mt ph5n 76n khng
dung khung tr+ng s5te #;a ta #h+ On mt l^5 R ngh nhM nhKn ng)^5 dung nBng #"p
tr:nh duy8t #;a h['
& T"t #6 l5n kOt dtn On 9 tri ng+5 s5te #;a ta #Qn ph65 th5Ot lDp thu# tinh TEo%nT
9I5 g5! tr ht+p' (Ou kh!# 51 ng)^5 dung sc #X #6m g5!# nh) h[ 7 r45 9+ mt #!5 7ty
tr+ng mt tDp khung #;a ta'
Lm 958# 9I5 khung #X th? l mt th!#h thV#' bh5 )*# s_ d`ng #$n thDn1 khung #X th?
#65 t5On !ng k? 9R kh6 n-ng d5 #huy?n 9 ph+ng #!#h Ne7s5te #;a ta'
1..? Ta@<;A
Mt trang Ne7 )*# tU #hV# tZt sc d{ dng thu hqt ng)^5 [# 9 g5qp h[ d{ dng t:m k5Om
thng t5n m h[ muZn' G!# 76ng 9 khung l nhng #ng #` #X g5! tr #h+ 958# tU #hV# thng
t5n' mI5 76ng1 ta #X th? #h5a #!# phQn kh!# nhau #;a trang Ne7 thnh #!# 9ung 9 Kt #!#
thng t5n kh!# nhau 9+ #!# 9ung X' Ta sc #6m th"y rsng #!# 76ng sc r"t hu d`ng #h+
nh5Ru #ng 958# kh!# nhau1 t, tr:nh 7y d l58u the+ dng #t 9 hng #h+ On 958# nh 9
#hinh x!# #!# m`# trn mt trang Ne7'
C;n <=n v+ <=ng
A6ng )*# !nh d"u 7sng #!# thJ fTEALng 9 flTEALng' Tr+ng #!# thJ ny1 ta s_ d`ng
#!# thJ nh ngha hng #;a 76ng1 fTog 9 flTog' Tr+ng m\5 hng1 ta l5 nh ngha #!#
#;a 76ng 7sng #!# thJ fT]g 9 flT]g' <+n mM sau g5I5 th58u mt trang Ne7 #hVa mt
76ng #4 76n' Ta #X th? th"y 76ng )*# t+ ra 735 +n mM ny tr+ng h:nh d)I5'
fHTMLg
fAw]xg
fTEALn Awo]noje.eg
fTog
fT]go.1 ].flT]g
fT]go+N .1 ]ata kflT]g
flTog
fTog
fT]go+N k1 ]ata .flT]g
fT]gTh5s 5s o+N k1 ]ata G+lumn kflT]g
flTog
flTEALng
flAw]xg
flHTMLg
Page 13.
m58# th5Ot lDp thu# tinh Awo]no 9I5 g5! tr . sc t+ ra )^ng 75n dy . p5xel xung Suanh
m\5 #;a 76ng #yng nh) xung Suanh 76ng' (Ou ta t-ng g5! tr ny1 #h5Ru dy #;a )^ng 75n
sc t-ng ln1 tuy nh5n )^ng kJ g5a #!# )*# g5 nguyn #h5Ru dy . p5xel' bh5 t+ 76ng1
ta #X th? th`t Qu dLng nh) tr+ng +n mM trn ? phBn t!#h mt #!#h tr# Suan #!# mV#
kh!# nhau #;a 76ng' G!# thJ fT]g )*# th`t 9+ sBu h4n s+ 9I5 #!# thJ fTog 9 #!# thJ
fTog )*# th`t sBu h4n s+ 9I5 #!# thJ fTEALng' bhng nh"t th5Ot ph65 s_ d`ng 958# tr:nh
7y th`t Qu dLng1 tuy nh5n nn dung ka thuDt ny ph`# 9` nh) mt #ng #` dL l\5 hu
d`ng1 K# 758t l tr+ng #!# 76ng phV# tp'
C!c th"#c tnh $h!c c>a <=ng
& 7g#+l+rY !# nh mu mu nRn #;a t+n 7 76ng (h+K# #!# )' MK# nh1 nRn #;a
76ng l tr+ng suZt' (Ou ta th5Ot lDp mu nRn kh!# 9I5 mu nRn #;a tr+ng 76ng th:
mu nRn #;a X sc )*# )u t5n #a+ h4n' %5! tr #;a Ag#+l+r #yng #X th? l mt
mu hsng h+K# #!# #Kp sZ Hexa the+ h8 mu o%A'
& AEGb%ow(] #h+ ph=p ta h5?n th mt h:nh 6nh phia sau mt hay t+n 7 76ng
ta #hC 958# th5Ot lDp thu# tinh ny trv On mt h:nh 6nh m+ng muZn'
& A+rderY !# nh dy #;a 75n' %5! tr #;a nX l mt sZ nguyn'
& >5dth1 he5ghtY !# nh ki#h th)I# 76ng' %5! tr #;a #!# thu# tinh ny #X th? l
t)4ng Z5 ()1 9i d` }1 hay tuy8t Z5 (tinh 7sng mt sZ nguyn l p5xel)'
& El5gnY Ganh #hCnh 76ngY X #!# g5! trY r5ght1 ledt1 #enter'
& p
T0o c!c ? v@i c!c $ch thA@c $h!c nha"
& ow>FPE(Y %h=p nh5Ru tr+ng dLng thnh mt '
& GwLFPE(Y %h=p nh5Ru tr+ng #t thnh mt '
fHTMLg
fAw]xg
fTEALn Awo]noje.eg
fTog
fT] GwLFPE(jeke ELH%(je#enterego+N .1 ]ata .flT]g
flTog
fTog
fT]go+N k1 ]ata .flT]g
fT]go+N k1 ]ata kflT]g
flTog
flTEALng
flAw]xg
flHTMLg
Thu# tinh GwLFPE( x!# nh #h5Ru rng #;a mt tinh the+ #t' Mt thng th)^ng 5Rn
Qy tr+ng mt #t' m58# th5Ot lDp g5! tr #;a GwLFPE( l k lm #h+ tr65 rng thm ha5 #t
th5Ot lDp g5! tr W sc lm #h+ tr65 rng trn W #t' Tr+ng 9i d`1 958# th5Ot lDp g5! tr
GwLFPE( thnh k lm #h+ t)4ng Vng sc #X #h5Ru rng 7sng k tr+ng #!# hng kO #Dn'
Gyng #Qn #hq 2 rsng thu# tinh ELH%( M )*# th5Ot lDp ? #anh g5a n5 dung #;a ' Thu#
tinh #X T g5! trYLedt (mK# nh)1 Genter 9 o5ght' ba thuDt th5Ot lDp #h5Ru rng1 #anh g5a n5
dung #;a nh) thO ny th)^ng r"t hu d`ng kh5 ta t+ #!# t5u R #t #;a 76ng'
9i d` s_ d`ng #6 ha5 thu# tinh ow>FPE( 9 GwLFPE( trn mt 76ng'
Page 14.
fHTMLg
fAw]xg
fTEALn Awo]noje.eg
fTog
fT] GwLFPE(jeWe ELH%(je#enteregfAgru5t FalesflAgflT]g
flTog
fTog
fT]gn7spflT]g
fT]g n7spflT]g
fT]gFt+re .flT]g
fT]gFt+re kflT]g
flTog
fTog
fT] ow>FPE(jekegEpplesflT]g
fT]g]ay.flT]gfT]gWflT]gfT]gk}flT]g
flTog
fTog
fT]g]aykflT]gfT]gTflT]gfT]gTflT]g
flTog
fTog
fT] ow>FPE(jekegwrangesflT]g
fT]g]ay.flT]gfT]gWflT]gfT]gk}flT]g
flTog
fTog
fT]g]aykflT]gfT]gTflT]gfT]gTflT]g
flTog
flTEALng
flAw]xg
flHTMLg
Page 15.
Bi 2 $BNH ,CCH &D .EFM
2.1 Danh Sch (List)
HTML #X mt tDp #!# thJ #h+ ph=p t+ ra #!# danh s!#h dng phBn #"p' GX ha5 dng danh
s!#hY khng #X thV t 9 #X thV t' G!# danh s!#h khng #X thV t l danh s!#h dng nqt1
tr+ng kh5 X danh s!#h #X thV t th)^ng l danh s!#h #X !nh sZ' Ta #yng #X th? kOt h*p ha5
l+5 ny ? t+ ra danh s!#h phV# tp h4n'
Danh s!ch $h?ng cB thC tD E"nordered list)'
<Qu t5n hMy xem x=t ha5 danh s!#h khng #X thV t' <+n mM #h+ #!# danh s!#h ny xu"t
h58n tr+ng +n mM k&.' H:nh k&. th? h58n #!# danh s!#h )*# phBn #!#h 735 mt )^ng kJ
ngang'
&&&&&&&&&&& +n mM k'.&&&&&&&
fHTMLg
fAw]xg
fLgTh5s 5s at the d5rst le9el'
fLgTh5s 5s at the se#+nd le9el'flLg
fLgTh5s 5s at the se#+nd le9el'
fLg Th5s 5s at the th5rd le9el'flLg
flLg
fLgTh5s 5s at the se#+nd le9el'flLg
flLg
fHog
fL Typeje]5s#egTh5s 5s the d5rst le9el header'
fLHgTh5s 5s the d5rst le9el&. 5tem 5n the l5st'
fLHgTh5s 5s the se#+nd le9el&. 5tem 5n the l5st'
fLg
fLHgTh5s 5s the d5rst le9el&k 5tem 5n the l5st'
fLHgEnd th5s 5s the se#+nd le9el&k 5tem 5n the l5st'
flLg
fLHgTh5s 5s the th5rd le9el&. 5tem 5n the l5st'
flLg
flAw]xg
flHTMLg
Page 16.
]anh s!#h Qu t5n tr+ng +n mM trn )*# #"u t+ #hC dung #!# thJ danh s!#h khng #X thV
t1 fLg 9 flLg' Asng #!#h Kt mt tDp #!# thJ danh s!#h khng #X thV t tr+ng mt thJ
danh s!#h kh!#1 #hqng ta #X th? nhqng #!# danh s!#h tr+ng mt danh s!#h kh!# ? t+ ra mt
l+t #!# 9-n 76n )*# Kt th`t Qu dLng' Ghq 2 rsng m\5 thJ fLg m3 #X mt thJ flLg
Xng t)4ng Vng'
]anh s!#h kO t5Op tr+ng +n mM #yng 7rt Qu 9I5 mt thJ danh s!#h khng #X thV t1 fLg'
Mt thJ Xng1 flLg1 l #Qn th5Ot 9 nX xu"t h58n 3 #uZ5 #;a danh s!#h1 nsm gQn 3 #uZ5 tDp
t5n' A"t k: nhng g: g5a ha5 thJ ny )*# xem l thnh phQn #;a danh s!#h' ]anh s!#h ny
#hVa ng #!# m`# dng nqt1 )*# 7rt Qu 735 thJ m`# danh s!#h1 fLHg' ThJ kOt thq# flLHg
khng L5 hv5 nhng g: 7rt gKp tr)I# kh5 mt m`# kh!# 7rt Qu hay tr)I# kh5 kOt thq# danh
s!#h )*# xem l thnh phQn #;a mt m`# tr+ng danh s!#h' Mt danh s!#h kh!# )*# nhqng
9+ tr+ng danh s!#h ny' Ghq 2 rsng danh s!#h )*# nhqng 9+ ny )*# th`t Qu dLng 9
#!# nqt #;a nX #X mt dng kh!#' GhC #X T mV# nhqng Qu t5n #X #!# dng nqt kh!# nhau'
Art Qu 9I5 mV# thV 7a1 t"t #6 #!# danh s!#h s_ d`ng #hung mt k5?u nqt' Ghq 2 rsng mV#
thV ha5 khng #X 7"t k 9-n 76n n+ sau thJ fLg' G!# 9-n 76n t5u R nh) 9Dy l tu #h[n'
Tr+ng thJ fLg #X mt thu# tinh TxPn' Thu# tinh ny Su5 nh r l+5 nqt )*# h5?n th'
Type #X #!# g5! tr ]5s# (h:nh trLn K# & mK# nh #h+ #"p #a+ nh"t)1 G5r#le (h:nh trLn) 9
FSuare (h:nh 9ung)'
Danh s!ch cB thC tD
G!# m`# #;a mt danh s!#h #X thV t )*# h5?n th 9I5 #!# #+n sZ thay 9: #!# nqt' F_ d`ng
thJ fwLg (wrder L5st) ? th5Ot lDp mt danh s!#h #X thV t1 nh) )*# th? h58n tr+ng +n mM
sau' H:nh 6nh th? h58n #!#h m tr:nh duy8t h5?n th +n mM ny'
fHTMLg
fHnE]gfTHTLng ]anh s!#h #X thV tflTHTLng
flHnE]g
fAw]xg
fwLg
fLHgTh5s 5s the d5rst le9el&. 5tem 5n the l5st'
fLHgTh5s 5s the se#+nd le9el&. 5tem 5n the l5st'
fwLg
Page 17.
fLHgTh5s 5s the d5rst le9el&k 5tem 5n the l5st'
fLHgEnd th5s 5s the se#+nd le9el&k 5tem 5n the l5st'
flwLg
fLHgTh5s 5s the th5rd le9el&. 5tem 5n the l5st'
flwLg
flAw]xg
flHTMLg
]anh s!#h tr+ng +n mM ny 7rt Qu 9I5 mt thJ danh s!#h #X thV t fwLg' (h) tr+ng
tr)^ng h*p 9I5 danh s!#h khng #X thV t1 mt thJ Xng flwLg l #Qn th5Ot' M\5 m`# tr+ng
danh s!#h 7By g5^ )*# 7rt Qu 7sng mt #+n sZ thay 9: mt nqt' Ghq 2 rsng mt danh s!#h
thV ha5 )*# nhqng tr+ng danh s!#h thV nh"t 9 958# !nh sZ )*# 7rt Qu t, . tr+ng danh
s!#h thV ha5'
C!c danh s!ch phCc hFp
ThJ fwLg h\ tr* mt thu# tinh #X tn l TxPn' Thu# tinh ny k5?m s+!t xem #!# m`#
tr+ng danh s!#h )*# 7rt Qu 9I5 mt sZ1 mt #h #!5 hay mt #+n sZ La MM' Mt thu# tinh
kh!# l Ftart (mK# nh l .) )*# g!n #!# g5! tr nguyn sc x!# nh g5! tr xu"t ph!t #;a #+n
sZ hay #h #!5' <+n mM kO sau m5nh h+ thu# tinh TxPn #yng nh) 958# trn ltn #!# thJ
fwLg 9 fLg' bOt Su6 th? h58n #;a +n mM ny tr+ng h:nh ' Asng #!#h kOt h*p #!# danh
s!#h #X thV t 9 danh s!#h khng #X thV t 9 7sng #!#h s_ d`ng thu# tinh TxPn1 ta #X th?
tr:nh 7y #!# thng t5n phBn #"p phV# tp'
fHTMLg
fAw]xg
fwL TxPnje.e Ftartj.g
fLHgTh5s uses num7ers'
fwL TxPnjeEe g
fLHgTh5s uses upper#ase letters'
fwL TxPnjeaeg
fLHgTh5s uses l+Ner#ase letters'
fwL TxPnjeHeg
fLHgTh5s uses upper#ase r+man numerals'
fwL TxPnje5eg
fLHgTh5s uses l+Ner#ase r+man numerals'
fLHgTh5s als+ uses l+Ner#ase r+man numerals'
flwLg
flwLg
flwLg
flwLg
fLg
fLHgHere 5s a 7ullet'
Page 18.
flLg
flwLg
flAw]xg
flHTMLg
A6ng g5! tr #;a thu# tinh TxPn thJ fwLg
TxPn L+5 k2 t h5?n th
. .1 k1 T1 p
a a1 71 #1 p
E E1 A1 G1 p
5 51 551 5551 p
H H1 HH1 HHH1 p
(Ou thay dLng Qu t5n sau thJ fAw]xg 9i d` trn 7sng dLngY
fwL TxPnje.e FtartjTg
ta sc )*# kOt Su6 h5?n th nh) h:nh d)I5'
2.2 Biu Mu
2.2.1 Gii Thiu
A5?u mtu #h+ ph=p th# h58n t)4ng t!# g5a ng)^5 dung 9 m!y #h;' bh!5 n58m #hung ny l
m!y #h; th? h58n mt 75?u mtu #h+ ng)^5 dung thng Sua mt trang Ne7 ? yu #Qu 7"t k:
thng t5n n+1 #hng hn nh) tn1 a #hC1 sZ 58n th+51 tuU5p'(g)^5 dung sc 5Rn 9+ 75?u
mtu 9 sau X g_5 nX ln m!y #h;' Mt 75?u mtu #X th? #hVa mt l+t #!# phQn t_1 7a+ g@m
#!# tr)^ng 9-n 76n #h+ On #!# hp k5?m1 danh s!#h th6 xuZngp'
2.2.2 C!ch ThGc ,7 $8ng C!c 1iHu TrIJng NhK: $) Liu
2.2.2.1 Th ./r0
PhQn t_ woM nh ngha mt 75?u mtu' T"t #6 #!# phQn t_ t)4ng t!# #;a mt 75?u mtu
(tr)^ng 9-n 76n1 hp #h[n lap) ph65 )*# Kt g5a thJ fwoMg 9 flwoMg' ThJ
fwoMg #yng h\ tr* mt sZ thu# tinh'
Thu# tinh (EMn #;a thJ fwoM g x!# nh tn #h+ 75?u mtu' Thu# tinh ny g5qp #h+
958# truy #Dp d l58u trn 75?u mtu )*# d{ dng h4n 9 K# 758t hu d`ng kh5 ta #X nh5Ru
75?u mtu trn trang Ne7 9 s_ d`ng #!# ngn ng lDp tr:nh phia #l5ent (a9as#r5pt1 m7s#r5pt)'
Ta nn t+ #!# gia tr (ame #h+ +rm (9 #!# thnh phQn kh!# tr+ng d+rm) l nhng tDp #!#
k2 t khng #X kh+6ng trrng 9 d"u t5Ong 958t'
G!# thu# tinh thJ d+rmY
& EGTHw(Y x!# nh oL (mt s#r5pt phia ser9er) m the+ X 75?u mtu sc g_5 thng
t5n #;a nhXm (#!# thnh phQn tr+ng d+rm) kh5 ng)^5 dung nh"p #hut 9+ nqt Fu7m5t'
& MnTHw] x!# nh #!#h thV# 75?u mtu sc )*# g_5 ln m!y #h;' GX ha5 tu #h[n
#hu$nY %nT 9 PwFT' Ph)4ng thV# %et #hC #h+ ph=p g_5 d l58u hn #hO (}.k 7yte)'
& nn#typeY !# nh #4 #hO s_ d`ng ? mM hXa d l58u n5 dung #;a +rm' Ta #hC #Qn
x!# lDp 3 #hO mK# nh tr, kh5 kh5 ta t+ mt d+rm #h+ ph=p g_5 mt d5le ln
Fer9er' Lq# X g5! tr #;a thu# tinh nn#type l eMult5partld+rm&datae 9 Meth+d #;a
+rm ph65 l PwFT'
Page 19.
2.2.2.2 Th Ln:ut
T+ mt thnh phQn #;a d+rm' GX nh5Ru thnh phQn1 )*# x!# nh kh!# nhau 735 thu# tinh
type tr+ng thJ H(PT'
Th3nh ph,n teGt<oGY (hDp d l58u trn mt dLngY Hnput typejetexte' Thnh phQn ny #X #!#
thu# tinhY type1 name1 9alue1 FHn1 1 MELn(%TH'
Th3nh ph,n HassIordY %5Zng text1 nh)ng d l58u nhDp 9+ h5?n th d"u ' Hnput
typejepassN+rde' G!# thu# tinhY type1 name1 9aluep
C!c n-t chJn RadioY Hnput typejerad5+e' Thnh phQn ? ng)^5 s_ d`ng #X th? #h[n hay 7v
la #h[n' GX #!# thu# tinhY type1 name1 9alue1 #he#ked (x!# nh nqt #X #h[n mK# nh
khng' Thu# tinh ny khng #Qn g!n g5! tr)' G!# nqt rad5+ th)^ng nhXm thnh mt nhXm1
#!# nqt tr+ng mt nhXm #hC )*# ph=p #h[n mt nqt' <? t+ thnh mt nhXm1 #!# nqt ph65 #X
#ung g5! tr name'
C!c n-t chec$<oGY Hnput typeje#he#k7+xe' mR #hV# n-ng g5Zng rad5+ tuy nh5n #X th? #h[n
nh5Ru hay khng #h[n nqt n+ tr+ng nhXm'
Kpload 1ile' 5nput typejd5le' G!# thnh phQn kh!# g5Zng text7+x1 s_ s`ng kh5 #Qn upl+ad .
d5le ln ser9er thng Sua dr+m'
Th3nh ph,n hiddenY 5nput typejh5dden' %5Zng text7+x1 nh)ng khng h5?n th trn mn h:nh'
Th)^ng Xng 9a5 trL nh) mt 75On truyRn d l58u'
7-t s"<2itY 5nput typejsu7m5t' F_ d`ng g_5 d+rm tI5 s#r5pt M x!# nh tr+ng thu# tinh
a#t5+n #;a d+rm'
7-t resetY Type j oeset' F_ d`ng xXa d+rm 9R trng th!5 7an Qu'' G!# thu# tinh kh!# g5Zng
su7m5t'
7-t <"ttonY Mt nqt h:nh dng g5Zng su7m5t nh)ng khng #X hnh ng n+ kh5 #l5#k 9+'
(X th)^ng )*# s_ d`ng tr+ng kOt h*p 9I5 a9as#r5pt ? 7rt #!# s k58n 9 th# th5 mt sZ
hnh ng n+ X' G!# thu# tinh kh!# g5Zng su7m5t'
2.2.2.3 T;Mtar;a
%5Zng text 7+x1 dung ? nhDp l58u nh)ng nhDp )*# trn nh5Ru hng' ThJ ny #X thJ Xng 9
#X #q ph!p nh) sauY
ftextarea #+lsjn r+Nsjmg fltextareag
Thu# tinhY #+ls1 r+NsY bi#h th)I# textarea'
2.2.2.! LiAt@/M
Gh[n d l58u t, danh s!#h M #X'
ThJY bOt h*p k thJ fsele#t g 9 f+pt5+ng' M\5 thJ +pt5+n l mt la #h[n' Thnh phQn d
l58u tr+ng thu# tinh 9alue #;a thJ +pt5+n sc )*# g_5 the+ d+rm1 #Xn thnh phQn g5a ha5 thJ
m3 9 Xng #;a +pt5+n l thnh phQn )*# th"y 735 ng)^5 s_ d`ng'
fsele#t namej sg
Page 20.
f+pt5+n 9aluej9.g %5! tr . fl+pt5+ng
f+pt5+n 9aluej9kg %5! tr k fl+pt5+ng
flsele#tg
2.2. Mt ,- Th HTML Nuan TrOng 1h!c
2.2.3.1 Th MPTB Qtr/ng :hRn h;aST.
m58# #ung #"p ng #6nh l mt tr+ng nhng 9a5 trL #;a thJ MnTE' ThJ ny #yng #X th? dung
? #ung #"p mt sZ d#h 9` khng tr# t5Op l5n Suan On n5 dung #;a trang Ne7' ])I5 By
l danh s!#h 9R #ng 958# m ta #X th? th# h58n 9I5 #!# thJ MnTE #ung 9I5 +n mM t)4ng
VngY
& Au# trang Ne7 t #Dp nhDt sau mt th^5 g5an x!# nh (tinh the+ g5By)Y
fMnTE HTTP& nHmjeononFHe Gw(Tn(Tje}eg
& T65 t+n 7 ki t khng ph65 t5Ong Enh #h+ h@ s4 (9i d` t5Ong (hDt nh) tr+ng 9i d`)'
A k2 t ny sc #hC h5?n th nOu nX )*# h\ tr* 9 )*# #5 Kt trn m!y tinh #;a
ng)^5 dungY
fMnTE HTTP&nHmjeononFHe Gw(Tn(Tjetextlhtml
GHEoFnTj N5nd+N&}./Tkeg
& Au# trang Ne7 ny khng #hVa tr+ng 7 8m #;a m!y kh!#h hng' Mt sZ tr:nh
duy8t #X th? khng h\ tr* K# 5?m nyY
fMnTE (EMnjePragmae Gw(Tn(Tje(+&Ga#heeg
& A!+ h58u rsng n5 dung #;a h@ s4 M khng #Ln h58u l# t5 mt th^5 5?m tr+ng Su!
khV 9 5Ru ny ng-n khng #h+ [# l5 trang t, trn 7 8m #;a m!y kh!#h hngY
fMnTE HTTP&nHmjenxp5rese
Gw(Tn(TjeThurday1 .&an /0 .0Yk0YT %MTeg
& Ghuy?n ng)^5 dung On mt trang Ne7 kh!# sau mt kh+6ng th^5 g5anY
fMnTE HTTP&nHmjeonnoFHe
Gw(Tn(Tje} oLjhttpYlNNN'm5#r+s+dt'#+meg
& <)a 9+ #!# t, kh+!1 l^5 m t61 l+5 h@ s4 9 th^5 g5an #Qn gh= th-m l5 & #!# thng t5n
#Qn #h+ nh5Ru ng #4 t:m k5Om trn Ne7Y
fMnTE (EMnjekeyN+rdse mELnje]HTML1 GFF1 E#t59e1 HTML1 F#r5pteg
fMnTE (EMnjedes#r5pt5+ne mELnje]es#r5pt5+n +d ]HTMLeg
fMnTE (EMnjetypee mELnjeser Manualeg
fMnTE (EMnjere95s5t&addere mELnje. dayseg
G!# thJ MnTE lun )*# Kt 3 Qu phQn t_ HnE] tr+ng mt tDp t5n' Ta #Qn 75Ot rsng nh5Ru
ng #4 t:m k5Om sc 7v Sua thJ MnTE #;a ta nOu lKp 5 lKp l5 Su! nh5Ru lQn' Asng #!#h
dung #!# t, @ng nghahay m t6 nh5Ru R m`# tr+ng thJ MnTE l+5 keyN+rds l mt #hinh
s!#h nX5 #hung l qng'
(h5Ru ng)^5 dung thJ MnTE 9I5 thu# tinh (EMn ? gh5 thng t5n 9R trang Ne7' mi d`1 thJ
MnTE 9I5 thu# tinh (EMn 9I5 #!# g5! tr HFA(1 Euth+r 9 T5tle #X th? )*# dung ? gh5
thng t5n 9R mt #uZn s!#h' Mt sZ ng #4 t:m k5Om #X kh6 n-ng t:m k5Om #!# thJ MnTE
tu 75On ny'
Page 21.
2.2.6 C!c Th ,UBN V $L&
G!# thJ fFPE(g 9 f]Hmg )*# xem nh) l #!# thJ #hVa (thJ mang)' Ghqng r"t hu d`ng
tr+ng 958# phBn #h5a #!# khZ5 9-n 76n 9I5 phQn xung Suanh nX m khng lm 6nh h)3ng On
nh dng #;a r5ng nX' G!# thJ ny th)^ng )*# dung 9I5 #!# nh dng style sheet GFF 9
ang )*# )a #hung tr+ng th5Ot kO lay+ut #;a nhng trang Ne7 phV# tp'
FPE( l mt phQn t_ dLng1 #X ngha l nX #X th? tham g5a 9+ +n 9-n 76n 9 khng t+ ra
mt ngrt dLng' Mt sZ phQn t_ nhqng tr+ng dLng kh!# l A (5n Dm)1 (g#h d)I5)1 9 H ( 5n
ngh5ng)' M\5 phQn t_ ny sc tham g5a 9+ +n 9-n m khng t+ ra mt ngrt dLng' (g)*#
l51 ]Hm l phQn t_ khZ5' ThJ ]Hm sc khng tham g5a 9+ +n 9-n' Thay 9: 9Dy1 phQn t_ ]Hm
)*# xem nh) mt khZ5 9-n 76n r5ng 758t 9 tr3 thnh mt +n 9-n #;a r5ng nX' Mt sZ
phQn t_ khZ5 thng d`ng kh!# l P (+n 9-n)1 Ho ()^ng kJ ngang)1 TEALn 9 #!# phQn t_
danh s!#h #hng hng nh) L (danh s!#h khng #X thV t)1 wL (danh s!#h #X thV t) 9 LH
(m`# #;a danh s!#h)' <+n mM sau m5nh h[a mt sZ #!#h dung #4 76n 9R k5?u 9I5 #!# thJ
FPE( 9 ]Hm' Ghq 2 rsng ha5 dLng mM t)4ng t nhau nh)ng t+ ra kOt Su6 h+n t+n kh!#
nhau tr+ng tr:nh duy8t'
fHTMLg
fAw]xg
Here 5s fFPE( FTxLnjed+ntY7+ld .Wptegs+me textflFPE(g 5n a FPE('
fHog
Here 5s f]Hm FTxLnjed+ntY7+ld .Wptegs+me textfl]Hmg 5n a ]Hm'
flAw]xg
flHTMLg
2.2.> C!c ThWc ThH 1X TW
Mt th# th? k2 t #hC l mt mM 75?u th mt k2 t' M\5 k2 t #X th? )*# h5?n th trn mn
h:nh #X mt th# th? k2 t t)4ng Vng' G!# th# th? k2 t sc hu d`ng kh5 ta muZn h5?n th
mt k2 t m ta khX nhDp )*# t, 7n phim h+K# khX h5?n th the+ #!#h thng th)^ng' mi d`1
g56 s_ ta muZn h5?n th k2 t efe tr+ng tr:nh duy8t' b2 t ny th)^ng )*# dung ? !nh d"u
phQn 7rt Qu #;a mt thJ HTML 9 nOu )*# nhDp nh) mt k2 t tr+ng phQn 9-n 76n1 nX #X
th? gBy nhQm ltn #h+ tr:nh duy8t' Tr:nh duy8t th)^ng xem nX 9 9-n 76n Vng sau l mt thJ
HTML 9 sc 7v Sua ethJe ny nOu nX khng nhDn 75Ot )*#' m: 9Dy1 ta #X th? dung mt th#
th? k2 t ? 75?u th #h+ k2 t ny 9 tr!nh )*# #!# 9"n R #X th? x6y ra' bh!5 n58m ny
)*# m5nh h+ tr+ng +n mM 9i d` 9 kOt Su6 th? h58n #;a nX tr+ng h:nh d)I5'
fHTMLg
fAw]xg
]5splay 5n 7+ld that 5s less than xY fAg ltx flAg'
Th5s paragraph uses a #hara#ter ent5ty'
fHog
]5splay 5n 7+ld that 5s less than xY fAg fx flAg'
Th5s paragraph d+es n+t use a #hara#ter ent5ty'
flAw]xg
flHTMLg
<+n thV nh"t s_ d`ng th# th? k2 t #h+ k2 t efe (lt)' <+n thV ha5 s_ d`ng 76n thBn k2
t efe' Tr+ng 9i d` ny1 m[5 thV g5a k2 t efe 9 phQn kOt thq# #;a thJ Xng flAg )*#
Page 22.
xem nh) nsm phia tr+ng #;a mt thJ HTML 9 nh) 9Dy nX khng )*# h5?n th' (g+5 ra1
thJ Xng flAg #yng khng )*# x_ l2 qng' (h) 9Dy1 phQn #Ln l5 #;a 9-n 76n sc )*# h5?n
th 3 dng 5n Dm'
Mt th# th? k2 t 7a+ g@m T phQn' PhQn Qu t5n l k2 t ee' b2 t ny 7!+ #h+ tr:nh
duy8t 75Ot rsng mt th# th? k2 t 7rt Qu t, By' PhQn kO t5Op #X th? l mt #+n sZ1 )*# Kt
tr)I# 735 k2 t ee1 h+K# mt tn g[5 x!# nh #h+ mt th# th? k2 t K# 758t' T"t #6 #!#
th# th? k2 t Ru #X mt #+n sZ nh danh1 tr+ng kh5 X th: mt sZ th# th? k2 t th)^ng
dung #X mt tn #h+ tr)I# 9 th)^ng )*# g[5 l th# th? )*# Kt tn' Th# th? k2 t efe
tr+ng 9i d` nu trn l mt 9i d` 5?n h:nh' (X #X th? )*# x!# nh h+K# 9I5 0 h+K# 9I5 lt'
PhQn #uZ5 #ung #;a th# th? k2 t l d"u ee' b2 t ny !nh d"u phQn kOt thq# #;a mt th#
th? k2 t' Tr+ng 76ng sau l58t k mt 95 tr+ng sZ #!# th# th? k2 t th)^ng dung nh"t' G!#
g5! tr sZ #h+ #!# th# th? k2 t )*# l"y t, tDp k2 t n5#+de ph5n 76n k' (#hinh x!# h4n
l the+ #hu$n HFw .0W0)1 mt 76ng #X hng #h`# ngn k2 t #;a t+n thO g5I5
]ng h5?n th <nh danh sZ Th# th? %h5 #hq
amp
TW Su+t ]"u nh!y k=p
.0/ #+py A6n SuyRn
g 0k gt
f 0 lt
.0 n7sp b2 t kh+6ng trrng
.W reg (hMn h58u -ng k2
.}T trade
. plusmn ]"u #ngltr,
Page 23.
Bi CB,CB$LNG ,TYLP ,HPPT QC,,T
3.1 GiUi TFiVN
<nh ngha 9R 76ng k5?u xOp #h@ng (#ss) s_ d`ng ? t!#h 758t d+rmat trang 9 n5 dung #;a
trang Ne7' mI5 GFF1 ta #X th? 75On U5 m[5 thV t, ki#h #|1 k5?u1 mu sr# #;a 9-n 76n #h+ On
kh+6ng #!#h g5a #!# #h #!5 9 #!# dLng1 )^ng 75n 9 phQn 8m xung Suanh phQn t_1 9
tri #hinh x!# #;a Z5 t)*ng trn trang
3.2 .iWN TIi CFX
b5?u t5 #h\ l k5?u )*# !p d`ng #h+ mt thJ r5ng 758t trn trang Ne7' Ta #X th? !p d`ng
mt k5?u t5 #h\ #h+ 7"t k thJ n+ trn trang 7sng #!#h dung thu# tinh FTxLn' (h)
nhng thu# tinh kh!#1 FTxLn #hC 6nh h)3ng On thJ #hVa nX'
fHTMLg
fAw]xg
fFPE( FTxLnjed+nt&Ne5ghtY 7+ld d+nt&styleY 5tal5#eg
Th5s text 5s 5n a FPE('flFPE(gfAog
Th5s text 5s n+t 5n a FPE('
flAw]xg
flHTMLg
3.3 BLJP .iWN
Mt 76ng k5?u 7a+ g@m mt h+K# nh5Ru nh ngha k5?u (hay #Ln g[5 l Su5 tr# k5?u)' A6ng
k5?u #X th? #hVa tr+ng phm 95 mt h@ s4 Ne7 h+K# )*# g5 tr+ng mt tDp t5n 7n ng+5 h@
s4 X' Mt nh ngha #h+ mt k5?u 7a+ g@m mt sele#t+r1 t5Op the+ sau 735 khZ5 kha5 7!+
nh) tr+ng 9i d` sauY
FPE( d+nt&Ne5ghtY 7+ld d+nt&s5eY 5tal5#
Tr+ng phQn lIn #!# tr)^ng h*p1 mt sele#t+r #hinh l mt thJ HTML' Tr+ng 9i d` trn1 Fpan
#hinh l mt sele#t+r1 9: 9Dy t"t #6 nhng thJ Fpan #X tr+ng h@ s4 sc tuBn the+ nhng Su5 tr#
M nh tr+ng nh ngha k5?u ny'
bhZ5 kha5 7!+ the+ sau sele#t+r 9 nsm tr+ng #Kp d"u ng+K# mX# ' bhZ5 ny l mt danh
s!#h nhng kha5 7!+ k5?u1 )*# phBn #!#h 7sng nhng d"u #h"m ph$y'
3.4 BLJP .iWN THJ CYZ
A6ng k5?u t+n #`# (h+K# 76ng k5?u )*# nhqng 9+) )*# k~m the+ nh) l mt phQn #;a h@
s4 HTML' L+5 76ng k5?u ny x!# nh 75n g5I5 #;a nX 7sng thJ m3 fFTxLng 9 thJ Xng
flFTxLng1 nX th)^ng )*# Kt tr+ng phQn head #;a trang HTML'
mi d`Y
fHTMLg
fHnE]g
fFTxLng
H. d+nt&s5eY .0pt d+nt&Ne5ghtY 7+ld #+l+rY red
Hk d+nt&styleY 5tal5# d+nt&s5eY kWpt #+l+rY green
FPE( d+nt&Ne5ghtY 7+ld d+nt&styleY 5tal5#
flFTxLng
flHnE]g
Page 24.
fAw]xg
fFPE(gTh5s text 5s 5n a FPE('flFPE(g
fH.gTh5s text 5s 5n an H.'flH.g
fHkgTh5s text 5s 5n an Hk'flHkg
flAw]xg
flHTMLg
H5?n th tr+ng tr:nh duy8tY
(Ou muZn mt ph5n 76n #` th? #;a mt phQn t_ )*# nh ngha kh!# 5 s+ 9I5 nhng g: M
)*# nh ngha tr+ng 76ng k5?u t+n #`#1 #X th? gh5 ~ 76ng k5?u 7sng #!#h s_ d`ng k5?u
t5 #h\ #h+ phQn t_ K# 758t ny'
fHTMLg
fHnE]g
fFTxLng
H. d+nt&s5eY .0pt d+nt&Ne5ghtY 7+ld #+l+rY red
Hk d+nt&styleY 5tal5# d+nt&s5eY kWpt #+l+rY green
FPE( d+nt&Ne5ghtY 7+ld d+nt&styleY 5tal5#
flFTxLng
flHnE]g
fAw]xg
fFPE(gTh5s text 5s 5n a FPE('flFPE(g
fH.gTh5s text 5s 5n an H.'flH.g
fHkgTh5s text 5s 5n an Hk'flHkg
fHk FTxLnjed+nt&s5eY T0ptegTh5s 5s m+d5d5ed Hk text'flHkg
flAw]xg
flHTMLg
3.5 BLJP .iWN Li[J .\]
bh6 n-ng nh dng )*# R #Dp tr+ng nhng phQn tr)I# khng #hC d,ng l5 3 mV# #;a
mt trang Ne7 4n m #Ln #X th? k5?m s+!t k5?u trn nh5Ru trang Ne7 hay #X th? trn t+n 7
Ne7s5te 7sng #!#h s_ d`ng 76ng k5?u l5n kOt' Mt 76ng k5?u l5n kOt (hay 76ng k5?u 7n
ng+5) #hC 4n g56n l mt tDp t5n 9-n 76n1 7a+ g@m nhng nh ngha k5?u' TDp t5n ny )*#
l)u 9I5 phQn m3 rng l GFF' TDp ny (nsm ng+5 tDp t5n HTML) #X th? )*# tham #h5Ou
h+K# l5n kOt 735 9-n 76n HTML 7sng #!#h s_ d`ng thJ fLH(bg #;a trang HTML'
mi d`Y <Qu t5n1 s_ d`ng n+tepad ? s+n th6+ tDp t5n #X n5 dung nh) sauY
H. d+nt&s5eY .0pt d+nt&Ne5ghtY 7+ld #+l+rYred
Hk d+nt&styleY 5tal5# d+nt&s5eYkWpt #+l+rYgreen
FPE( d+nt&Ne5ghtY 7+ld d+nt&styleY 5tal5#
L)u tDp t5n 9I5 tn 7"t k #X phQn m3 rng l GFF (9i d`Y style'#ss)' Gyng #Qn #hq 2 rsng1
76ng k5?u l5n kOt ny khng k~m the+ #!# thnh phQn fFtyleg 9 flFtyleg (tV# tr+ng d5le
GFF khng #X #!# thJ ny)'
Page 25.
ABy g5^ tDp t5n t+ mt d5le HTML #hVa mt l5n kOt On 76ng k5?u 7n ng+5 M nh ngha'
mi d`Y
fHTMLg
fHnE]g
fLH(b Honjestyles'#sse onLjeFTxLnFHnnTe TxPnjetextl#sseg
flHnE]g
fAw]xg
fFPE(gTh5s text 5s 5n a FPE('flFPE(g
fH.gTh5s text 5s 5n an H.'flH.g
fHkgTh5s text 5s 5n an Hk'flHkg
fHk FTxLnjed+nt&s5eY T0ptegTh5s 5s m+d5d5ed Hk text'flHkg
flAw]xg
flHTMLg
Tr+ng 9i d` ny tDp t5n s_ d`ng thJ fLH(bg tr+ng phQn Qu #;a h@ s4 HTML' ThJ ny #hVa
thu# tinh Hon x!# nh 9 tri #;a tDp t5n i#h' Thu# tinh onL sc nh r rsng l5n kOt ny
l mt tham #h5Ou On mt 76ng k5?u 9 thu# tinh TxPn nh r l+5 76ng k5?u' Th^5 5?m
h58n t5 th: textl#ss l l+5 76ng k5?u )*# h\ tr* phU 75On 9 duy nh"t'
A6ng k5?u l5n kOt #X 6nh h)3ng tI5 h@ s4 HTML g5Zng nh) 76ng k5?u t+n #`# (76ng k5?u
nhqng)' M[5 phQn t_ tr+ng h@ s4 HTML m thJ #;a #hqng )*# nh ngha tr+ng tDp t5n
style'#ss sc )*# th? h58n 7sng #!#h s_ d`ng k5?u M )*# x!# nh'
m: khng nsm tr+ng 7"t k tDp t5n HTML K# 758t n+1 nn 76ng k5?u l5n kOt ng+5 #X th?
)*# l5n kOt 9I5 sZ l)*ng h@ s4 khng g5I5 hn' mi d`1 tDp t5n #X th? t+ 76ng k5?u #h+ t+n
7 >e7s5te 9 l5n kOt t,ng trang 9I5 76ng k5?u X' bh6 n-ng ny r"t hu i#h kh5 tDp t5n
muZn duy tr: #!#h th? h58n1 #yng nh) #!#h #6m nhDn nh"t Su!n trn t+n 7 Ne7s5te' (X #yng
r"t t58n l*5 kh5 muZn thay U5 #!#h th? h58n tUng th? #;a >e7s5te'
3.6 T^JF TF_G H`aJP
Tr+ng phQn lIn #!# trang Ne71 #!# phQn t_ HTML th)^ng #hVa ng nhng phQn t_ kh!#'
G!# k5?u ng h\ tr* #4 #hO g[5 l th,a h)3ng' Tr+ng X 958# nh dng phQn t_ 7n ng+5
)*# s_ d`ng lm #4 s3 #h+ 958# nh dng Z5 t)*ng #+n 7n tr+ng nhsm 7U sung #h+ #!#
nh dng )*# th,a h)3ng' Tr+ng 9i d` sau1 +n text tr+ng thJ fAg sc )*# th,a h)3ng
#!# K# tinh #;a thJ ng+5 fFPE(g
fHTMLg
fHnE]g
fFTxLng
FPE( d+nt&s5eY .0pt d+nt&styleY 5tal5# #+l+rY red
A d+nt&s5eY kWpt
flFTxLng
flHnE]g
fAw]xg
fFPE(gTh5s 5s s+me fAg7+ldedflAg text 5n a FPE('flFPE(g
flAw]xg
flHTMLg
H:nh kOt Su6 trn tr:nh duy8tY
Page 26.
m58# th,a h)3ng #h+ ph=p th5Ot lDp nhng nh ngha k5?u mK# nh )*# !p d`ng #h+ t"t #6
#!# phQn t_ tr+ng h@ s4' <? th# h58n 5Ru ny1 ta #hC #Qn th5Ot lDp 76ng k5?u 9 #!# nh
ngha k5?u #h+ phQn t_ Aw]x #;a h@ s4 X'
3.7 LUb
L mt 75On nh ngha d+rmat #;a #!# thu# tinh tr+ng #!# thJ nh)ng m[5 thJ Ru #X th?
dung )*#'
& Gng thV# #hungY 'tnlIp #!# thu# tinh'
& F_ d`ngY ftag #lassjetnlIpeg '' fltagg
mi d`Y
fHTMLg
fHnE]g
fFTxLng
'large d+nt&s5eY kWpt
'small d+nt&s5eY pt
flFTxLng
flHnE]g
fAw]xg
Ftandard text'
fHk GLEFFjesmallegThe small #lass +n an Hk element'flHkg
fFPE( GLEFFjelargeegThe large #lass +n a FPE( element'flFPE(gfAog
fP GLEFFjesmallegThe small #lass +n a P element'flPg
fA GLEFFjelargeegThe large #lass +n a A element'flAgfAog
flAw]xg
flHTMLg
3.8 )cJF DIJP CSS CFH Md] TFe .Fi MfZ )cJF ID
%5Zng nh) #lass1 tuy nh5n1 nh dng ny #hC #h+ mt thJ #X thu# tinh 5d duy nh"t x!# nh
tr)I#' L)u 2 kh5 ta dung H]1 #X ngha l duy nh"t #!5 d59 "y t@n t5 9 #X nh dng GFF #h+
H] th: ph65 7rt Qu 7sng d"u ee'
V^ TYg
page&#+nta5ner
7a#kgr+undY red
N5dthY 0px
marg5nY
f7+dyg
fd59 5djepage&#+nta5nereg (+5 dung p fld59g
fl7+dyg
Page 27.
Bi 4 GLZL THL[\ ]B&B,CFLUT
4.1 GiUi TFiVN
(gn ng !nh d"u s5u 9-n 76n HTML #X th? #hVa ng mt nh dng #h5 t5Ot 9R n5 dung
9-n 76n d)I5 dng mt trang >e7 tnh' (5 dung trang ny #X th? 7a+ g@m 9-n 76n M nh
dng1 6nh1 76ng 75?u 9 #!# s5u l5n kOt ? t+ ra mt ph)4ng t58n tr:nh 7y thng t5n mt
#!#h "n t)*ng' Tuy nh5n1 ng+5 s t)4ng t!# mV# th"p #;a #!# s5u l5n kOt 7sng #!#h
)a ng)^5 s_ d`ng 5 t, trang >e7 ny On trang >e7 kh!#' (X5 #hung HTML khng #h+
ph=p !p Vng #!# thng t5n nhDp 9+ t, phia ng)^5 dung ng+5 958# )a h[ tI5 mt trang mI5'
HMng (ets#ape G+mmun5#at5+ns thu# tDp +n Fun M5#r+systems )a ra mt g565 ph!p
7sng #!#h t+ ra mt tDp #!# l8nh inh k~m the+ trang HTML g[5 l a9aF#r5pt' F_ d`ng
a9aF#r5pt1 ta #X th? xBy dng #!# 75?u mtu1 #ng #` tinh t+!n 9 nhng g565 ph!p ? t+ ra
trang >e7 ng' Tr)I# kh5 #X a9aF#r5pt1 m[5 h+t ng g5a ng)^5 s_ d`ng 9I5 s t)4ng t!#
phia m!y #h; ph65 thng Sua nhng Vng d`ng Ne7 hOt sV# t5nh 95 9 m!y #h; Ne7 #a+ #"p'
a9aF#r5pt ra ^5 M lm #h+ m!y tinh #;a ng)^5 s_ d`ng tr3 nn #Bn 7sng h4n 9 em l5
mt sZ sV# mnh #h+ m!y kh!#h m tr)I# k5a #hC th# h58n )*# 3 m!y #h;'
Fau kh5 a9aF#r5pt ra ^51 hMng M5#r+s+dt #yng )a ra ngn ng lDp tr:nh r5ng #;a h[ l
m5sual Aas5# F#r5pt5ng nd5t5+n hay mAF#r5pt'
(g+5 ha5 ngn ng trn1 #Ln #X nh5Ru ngn ng #h+ ph=p lDp tr:nh phia m!y kh!#h nh)
PerlF#r5pt1 Pyth+s'
T5 th^5 5?m ny1 a9aF#r5pt M )*# ha5 hMng M5#r+s+dt 9 (ets#ape xBy dng l5 thnh
ngn ng mI5 9 Kt tn l nGMEF#r5pt (tuy nh5n th# tO ng)^5 ta 9tn g[5 nX l a9aF#r5pt)'
Ph5n 76n h58n t5 #;a a9as#r5pt l k'1 7a+ g@m #!# #hV# n-ng t)4ng t!# tZt h4n 9 ng)^5 s_
d`ng Su6n l2 mM tZt h4nY k5?u1 lIp'
mAF#r5pt 9 a9aF#r5pt l #!# ngn ng lDp tr:nh k5?u thng d#h dung #h+ >e7' G!# +n
#h)4ng tr:nh 95Ot 7sng ngn ng ny nhqng tr+ng #!# trang HTML 9 sc )*# #!# tr:nh
duy8t thng d#h ? th# h58n' G!# ngn ng F#r5pt #h+ ph=p ph!t tr5?n nhanh 9 d{ dng #!#
#h)4ng tr:nh 4n g56n h4n l #!# ngn ng dng 75n d#h nh) l G1 G'
Gq ph!p #;a mAF#r5pt gQn g5Zng 9I5 m5sual Aas5# #Ln #q ph!p #;a a9aF#r5pt l5 g5Zng 9I5
ngn ng G1 G'
m7F#r5pt 9 a9aF#r5pt l ha5 ngn ng F#r5pt dung ? 95Ot #!# +n #h)4ng tr:nh 3 phia
#l5ent r"t thng d`ng h58n nay' Tuy nh5n a9aF#r5pt )*# h\ tr* trn hQu hOt #!# tr:nh duy8t1
tr+ng kh5 XmAF#r5pt #hC )*# h\ tr* tZt nh"t trn tr:nh duy8t Hnternet nxpl+rer #;a
M5#r+s+dt' H58n t51 ha5 ngn ng ny #yng )*# s_ d`ng ? d#h #!# #h)4ng tr:nh phia
ser9er'
4.2 CfZF TFhZ Vi\] Md] )HIJ Mi %GjGRZkib]
Trong cp th:<SCRIT!: a9aF#r5pt )*# thm 9+ trang HTML 7sng #!#h s_ d`ng #Kp
thJ l YfFGoHPT languageja9aF#r5ptg 9 flFGoHPTg' mR nguyn tr# #!# +n mM
a9aF#r5pt #X th? Kt t5 7"t k 9 tri n+ tr+ng trang HTML 9 tr)I# thJ flAw]xg' Tuy
nh5n ? d{ Su6n l21 ng)^5 ta th)^ng Kt #hqng tr+ng #Kp thJ fHnE]g flHnE]g' <Z5 9I5
nhng tr:nh duy8t #y #X th? sc khng h5?u a9aF#r5pt1 d+ 9Dy nOu gKp nhng +n F#r5pt ny1
Page 28.
#hqng sc xem nh) nhng text 7:nh th)^ng 9 h5?n th trn mn h:nh' m: l2 d+ ny1 #hqng ta
nn Kt mM #;a nX tr+ng #hq thi#h trang HTML (tr+ng #Kp d"u fz& & 9 & &g
fHTMLg
fHnE]g
fFGoHPT languageja9aF#r5pt g
fz&& F_ d`ng ? d"u mM a9aF#r5pt Z5 9I5 nhng tr:nh duy8t khng h5?u
a9aF#r5pt
(mM a9aF#r5pt Kt t5 By)
&&g
flFGoHPTg
flHnE]g
fAw]xg
(mM html)
fFGoHPT languageja9aF#r5pt g
fz& &
(mM a9aF#r5pt )
& &g
flFGoHPTg
(mM html)
flAw]xg
fHTMLg
Trong c"c #$ %i&n 'e(ent)Y MM a9aF#r5pt #Ln )*# Kt tr+ng #!# s k58n (e9ent) #;a thJ
HTML the+ #q ph!pY ftaghhtml +nn9entj +n mM a9aF#r5pt gpfltaghhtmlg' Ta th"y
tr+ng #!# s k58n (+nn9ent) mM a9aF#r5pt )*# Kt tr+ng #Kp d"u ''' G!# +n mM ny
th)^ng l #!# hm d+ ng)^5 s_ d`ng 95Ot h+K# d+ ngn ng #ung #"p nhsm m`# i#h th#
h58n mt t!# 9` n+ X'
G!# #hq thi#h #;a a9aF#r5pt g5Zng nh) ngn ng G1 G l )*# Kt tr+ng #Kp l 9 l nOu
#hq thi#h trn nh5Ru dLng 9 sau d"u ll nOu 3 trn mt dLng'
M\5 #Bu l8nh #;a a9aF#r5pt kOt thq# 735 d"u #h"m ph$y()'
V dY
fHTMLg
fHnE]g
fFGoHPT languagejea9aF#r5pteg
fz&& lln Z5 9I5 #!# tr:nh duy8t khng h\ tr* a9aF#r5pt
dun#t5+n sh+Nhhell+() ll m5Ot mt hm tn l sh+Nhhell+
Page 32.
Gh)4ng tr:nh sc k5?m tra 75?uhthV#hk' (Ou 75?uhthV#hk dqng sc th5 hnh l8nh F #h+ On
kh5 n+ 75?uhthV#hk l mt g5! tr sa5'
6.6.> ClN ]kmZ TH p sFiSq
Gq ph!p
d+
Nh5le (75?uhthV#hk)
GBu l8nh F )*# th5 hnh #h+ On kh5 75?uhthV#hk 7 sa5' mLng lKp ny kh!# 9I5 9Lng lKp
trn l th# h58n l8nh F tr)I# 9 k5?m tra 5Ru k58n sau'
V d Gh)4ng tr:nh sau sc tinh g5! trY . .lT p.ln #h+ On kh5 5Ru k58n .l(n.)
f x6y ra ( l mt sZ th# #h+ tr)I#)'
vOng lPp Ihile
fFGoHPT languagejea9aF#r5pteg
9ar anphaj'.
9ar t+ng j 1 5j.1 xj.l5
Nh5le (xgj anpha)
t+ng j(.l5)
5
xj .l5
5d (5k jj)
#+nt5nue
t+ng j t+ng 5
alert(eT+ng #a# s+ le fj. la Y e t+ng)
bOt Su6Y
6.6.b CrN LVJF FHk .. IJ
F_ d`ng ? duy8t Sua t,ng thu# tinh #;a Z5 t)*ng hay t,ng phQn t_ tr+ng Z5 t)*ng m6ng1
nh"t l #!# m6ng dng tDp h*p (m6ng m #!# #hC sZ khng ph65 l sZ nguyn)'
Gq ph!pY
d+r(75en 5n #+lle#t5+nErray)
F
Tr+ng X #+lle#t5+n 9 Erray l #!# 75On' mi d` #h+ 9Lng lKp d+r dng ny )*# th? h58n
tr+ng phQn Z5 t)*ng Erray'
6.6.c Cdu Lnh tr9 e catch
bh5 duy8t mt trang Ne71 ta th)^ng th"y hp th+5 h5?n th thng 7!+ l\5 9 yu #Qu ta #X
de7ug l\5 hay khng (e]+ y+u N5sh t+ de7uge)' Thng 7!+ l\5 ny th)^ng #X i#h #h+ ng)^5
ph!t tr5?n nh)ng gBy khX #hu #h+ ng)^5 s_ d`ng' PhQn ny sc h)Ing dtn #!#h 7ty 9 x_ l2
l\5 mt #!#h thBn th58n h4n'
GX ha5 #!#h ? 7rt mt l\5 trn trang Ne7Y
& F_ d`ng l8nh try p #at#h
& F_ d`ng s k58n +nerr+r' <By l g565 ph!p #y hay s_ d`ng
G"u trq# try p #at#h #h+ ph=p ta k5?m tra l\5 #;a mt khZ5 #+de' bhZ5 try #hVa #+de #Qn
#hy ? k5?m tra1 khZ5 #at#h #hVa #+de )*# th# th5 kh5 l\5 x6y ra'
C- ph!pY
try
#at#h(err)
V d
mi d` ny #hVa mt l\5 9 khng s_ d`ng try p #at#h ? 7rt l\5'
fhtmlg
fheadg
fs#r5pt typejetextla9as#r5pteg
dun#t5+n message()
fls#r5ptg
flheadg
f7+dyg
f5nput typeje7utt+ne 9aluejem5eN messagee +n#l5#kjemessage()e lg
fl7+dyg
flhtmlg
mi d` sau s_ d`ng try p #at#h ? x_ l2 l\5 #;a 9i d` trn
fhtmlg
fheadg
fs#r5pt typejetextla9as#r5pteg
9ar txtjee
dun#t5+n message()
try
adddlert(e>el#+me guestze)
#at#h(err)
txtjeThere Nas an err+r +n th5s page'nne
txtjenrr+r des#r5pt5+nY e err'des#r5pt5+n enne
txtjeGl5#k wb t+ #+nt5nue'nne
alert(txt)
fls#r5ptg
flheadg
f7+dyg
f5nput typeje7utt+ne 9aluejem5eN messagee +n#l5#kjemessage()e lg
fl7+dyg
Page 35.
flhtmlg
C:" lQnh throI
GBu l8nh ny #h+ ph=p ta t+ ra mt ng+5 l8 9 )*# s_ d`ng #ung #"u trq# try p #at#h ?
t+ #X th? 5Ru kh5?n #h)4ng tr:nh ph!t s5nh ra #!# thng 7!+ l\5 #hinh x!# h4n'
C- ph!p thoIEeGceptionR
ex#ept5+n #X th? l #hu\51 sZ nguyn1 g5! tr 7++lean hay mt Z5 t)*ng'
mi d` ny #h+ ta nhDp 9+ mt sZ nguyn t, On.' (Ou nhDp ng+5 #!# sZ ny1 #h)4ng
tr:nh ph!t s5nh ra l\5' Thng t5n l\5 )*# truyRn 9+ khZ5 #at#h (Sua l8nh thr+N) 9 )*# h5?n
th'
fhtmlg
f7+dyg
fs#r5pt typejetextla9as#r5pteg
9ar xjpr+mpt(ennter a num7er 7etNeen and .Ye1ee)
try
5d(xg.) thr+N enrr.e
else 5d(xf) thr+N enrrke
#at#h(er)
5d(erjjenrr.e)
alert(enrr+rz The 9alue 5s t++ h5ghe)
5d(er jj enrrke)
alert(enrr+rz The 9alue 5s t++ l+Ne)
fls#r5ptg
fl7+dyg
flhtmlg
4.5 Hw TkHJP %GjGRZkib]
Hm l thnh phQn Suan tr[ng tr+ng 958# lDp tr:nh #h+ ph=p th5 hnh nhng t!# 9` K# 758t'
Tr+ng a9aF#r5pt #hqng ta #X th? s_ d`ng nhng hm th) 958n #;a ngn ng h+K# 95Ot #!#
hm #;a r5ng m:nh'
6.>.1 Hw )`xZ )cJF NPFyG Bai NP`zi L{b Tk|JF.
Gq ph!p ? t+ mt hmY
dun#t5+n tenhham(thams+h.1 thams+hk1 ''1thams+hn)
Tr+ng XY tenhham tuBn the+ Su5 tr# nh danh #;a a9aF#r5pt1 dun#t5+n l t, kh+!'
Thams+h.1 thams+kp l #!# tham sZ h:nh thV# truyRn 9+ hm'
Page 36.
Ghq 2Y hm tr+ng a9aF#r5pt kh!# 9I5 tr+ng G l nX khng x!# nh k5?u tr6 9R 9 #!# tham
sZ h:nh thV# #yng khng )*# x!# nh k5?u'
Hm #X th? #X hay khng #X g5! tr tr6 9R (Sua ph=p t+!n return)'
V d m5Ot mt hm tinh g5a5 th,a #;a mt sZ n'
fFGoHPT languagejea9aF#r5pteg
dun#t5+n g5a5hthua(n) llhm tinh nz
9ar 5j.1 Fj.
5d (nf) return . llk5?m tra g5! tr n' Tr6 9R . nOu nf
5d ((n jj) (njj.)) return . ll(Ou njj h+K# njj. th: nzj.
else
Nh5le (5fjn)
Fj5
5
return F
5d (nfj.) return .
return n gtdeSu5(n&.)
mi d` sau #h+ xBy dng mt hm #h+ ng)^5 lDp tr:nh nhDp sZ #Qn tinh g5a5 th,a n t, 7n
phim' Hm ny #X k5?m tra g5! tr n #h+ On kh5 ng)^5 s_ d`ng nhDp qng (n l mt sZ 9
khng Bm)' bh5 X hm ny sc g[5 hm hm g5a5hthua() ? tinh 9 xu"t ra g5! tr'
fHTMLg
fHnE]g
fFGoHPT languagejea9aF#r5pteg
dun#t5+n g5a5hthua(n) ll Hm tinh g5a5 th,a #;a n
9ar 5j.1 gtj.
Nh5le (5fjn)
gtj 5
5
return gt
Page 37.
dun#t5+n thu#hh5en()
9ar n
d+
flFGoHPTg
flHnE]g
fAw]xg
fE hredj +nGl5#kjthu#hh5en()gGl5#k 9+ By ? th# h58nflEg
flAw]xg
flHTMLg
Tr+ng mi d` ny #hqng ta M s_ d`ng thm hm pr+mpt()' <By l hm )*# nh ngha sn
tr+ng ngn ng' Hm ny #h+ ph=p ng)^5 s_ d`ng nhDp 9+ mt sZ 9 tr6 9R sZ M nhDp' GBu
l8nh n j pr+mpt((hDp 9+ g5! tr n) tr+ng 9i d` trn nOu ng)^5 s_ d`ng nhDp 9+ sZ W 9
#l5#k wb th: sZ ny sc )*# g!n #h+ n' Gyng tr+ng #h)4ng tr:nh ny ta Kt hm tr+ng s k58n
+nGl5#k #;a l5n kOt ? g[5 hm kh5 l5n kOt )*# #l5#k'
HMy 95Ot thm phQn k5?m tra nOu ng)^5 s_ d`ng khng nhDp h+K# #l5#k nqt #an#el'
6.>.2 T}w V~Z CG Bi\J
TQm 9# #;a 75On l n45 m ta #X th? truy #Dp On 75On' A5On )*# kha5 7!+ tr+ng mt hm
g[5 l 75On #`# 7 9 #hC #X th? tham kh6+ )*# t5 tr+ng hm X h+K# #!# hm m nX g[5 th5
hnh' A5On kha5 7!+ ng+5 t"t #6 #!# hm g[5 l 75On t+n #`# 9 nX #X th? )*# tham kh6+
735 t"t #6 #!# hm tr+ng trang s#r5pt ng+5 tr, tr+ng hm ny #yng #X mt 75On nh) 9Dy )*#
kha5 7!+'
V d
fFGoHPT languageja9aF#r5ptg
9ar 5j1 k j. ll75On t+n #`#'
dun#t5+n 75en()
75en()
alert(e (g+5 hmY 5Ye 5 kY )
flFGoHPTg
]+ tr+ng a9aF#r5pt1 kha5 7!+ mt 75On ta #X th? khng #Qn s_ d`ng t, kh+! 9ar1 tuy nh5n
#!#h 95Ot ny khng hn hay 9 #X th? dtn On mt sZ l\5 khng l)^ng tr)I#' mi d` ta s_
d`ng mt 75On t+n #`#' Tr+ng mt hm1 ta muZn s_ d`ng mt 75On #`# 7 #X tn g5Zng 75On
Page 38.
7n ng+51 nh)ng khng s_ d`ng t, kh+! 9ar' <5Ru ny lm a9aF#r5pt lQm t)3ng k 75On X l
mt 9 #X th? dtn dOn l\5' mi d` sau sc dtn On 9Lng lKp 9 hn d+ khng s_ d`ng t, kh+!
9ar '
fHTMLg
fAw]xg
fFGoHPT languageja9aF#r5ptg
9ar 5 ll75On t+n #`#
dun#t5+n ham.()
9ar tj
d+r (5j. 5f} 5) lls_ d`ng 75On t+n #`#
tj t+ng()
return t
dun#t5+n t+ng()
F j
5j. l ng)^5 s_ d`ng muZn s_ d`ng 5 nh) mt 75On #`# 7 nh)ng a9aF#r5pt
l5 s_ d`ng #hung 75On t+n #`#'l
F j F 5
return F
Page 42.
#h j F'#harEt(5)
5d ( ((#h gj E) ( #h fj )) ((#h gj a) ( #h fj )) )
#+unt#h
sN5t#h (n)
5d (nf.) return ee n
else return n
ll Hm 5n #!# #hu\5 #Qn th5Ot ra mn h5nh(
dun#t5+n 95ethngay()
Page 44.
9ar d j neN ]ate()
thu j dmthu(d'get]ay())
ngay j dmT5me(d'get]ate())
thang j dmT5me(d'getM+nth() .)
ll Gng thm . d+ getM+nth() tr6 9R g5! tr t, On ..'
nam j d'getullxear()
F. j efw(T da#ej9n5&t5mes s5ej} #+l+rjredge
F. j eHm nay l e thu e ngy e ngay e th!ng e thang e n-m e
nam
g5+ j dmT5me(d'getH+urs())
9ar ampm
5d (g5+ g .k)
g5+ j dmT5me(g5+ & .k)
ampm j ePMe
else
ampm j eEMe
phut j dmT5me(d'getM5nutes())
g5ay j dmT5me(d'getFe#+nds())
Fk je ABy g5^ l e g5+ e Y e phut e Y e g5ay e(e ampm e)e
ll m5Ot #hu\5 F. ra trang >e7 9 xuZng dLng
d+#ument'Nr5te (F. efAoge)
ll m5Ot #hu\5 F. ra trang >e7
d+#ument'Nr5te(Fk)
& &g
flFGoHPTg
flHnE]g
fAw]xg
fw(T da#eje9n5&t5meseg
mi d` 9R k5?u ]ate flw(TgfAog
fFGoHPT languagejea9aF#r5pteg
95ethngay()
flFGoHPTg
flAw]xg
flHTMLg
5.4 )Oi T`xJP AkkG?
<)*# s_ d`ng t+1 l)u tr #!# #"u trq# d l58u dng m6ng' <? t+ mt m6ng ta s_ d`ng #!#
#q ph!p sauY
9ar tenhmang j neN Erray() ]ung ? t+ mt m6ng r\ng'
9ar tenhmang j neN Erray(n) T+ m6ng #X sZ phQn t_ l n'
9ar tenhmang j neN Erray(gt.1 gtk1 ''1gtn) T+ m6ng #X n phQn t_ 9 g!n g5! tr
#h+ #!# phQn th_ ny'
Page 45.
M\5 phQn t_ tr+ng m6ng )*# tham #h5Ou nh) sauY tenhmangn1 n l mt sZ nguyn #hC phQn
t_ #Qn truy #Dp'
TFNdZ ]^JF j bF`JP ]FhZ.
Thu# tinhY length th? h58n sZ phQn th_ #;a m6ng'
G!# ph)4ng thV#Y
o HiJ (ZFNHibFGJZGZFg Tr6 9R mt #hu\5 7sng #!#h l58t k thV t #!# thnh
phQn tr+ng #hu\5 9 #!# thnh phQn )*# phBn #!#h 9I5 nhau 735 #hu\5 phBn #!#h
(mK# nh l mt kh+6ng trrng)'
V d
9ar Er j neN Erray(M+n1 Tue1 >ed)
9ar s. j Er'spl5t (&) ll s. j M+n&Tue&>ed'
9ar sk j Er'spl5t () ll sk j M+n Tue >ed'
o ZHJZG] (AkkOu Tr6 9R mt m6ng M )*# nZ5 thm m6ng Errw7'
9ar Err. j neN Erray(M+n1 Tue1 >ed)
9ar Errk j neN Erray(Thu)
9ar Err j Err.'#+#at(Errk) ll Err j M+n1 Err. j Tue1 Errk j
>ed1 ErrTj Thu
o ]HS]kiJP(. A5On mt m6ng thnh mt #hu\5 )*# phBn #!#h 7sng d"u ph$y'
o kqRqkjqk(g T+ l5 76n sa+ #;a m6ng #ung 9I5 nhng phQn t_ 6+ ng)*#'
LA" .Y Thu# tinh length #;a m6ng t ng t-ng kh5 ta thm #!# phQn t_ 9+ m6ng'
mi d` sau #h+ ph=p ta nhDp 9+ #!# phQn t_ m6ng m khng 75Ot tr)I# sZ phQn t_ sc
nhDp'
fHTMLg
fHnE]g
fFGoHPT languagejea9aF#r5pteg
9ar E j neN Erray() lt+ mt 75On Z5 t)*ng m6ng #h)a #X phQn t_ n+ 9 l
75On t+n #`#l
dun#t5+n Hnput()
d+
9ar 5 j E'length
E5 j pr+mpt((hDp phQn t_ thV 5)
dun#t5+n wutPut()
flFGoHPTg
flHnE]g
Page 46.
fAw]xg
fE hredj +nGl5#kj Hnput()g Gl5#k By ? nhDp l58uflEgfAog
fE hredj +nGl5#kj wutput()g Gl5#k By ? xuBt l58uflEg
flAw]xg
flHTMLg
Ch- . Ph)4ng thV# alert() #X Z5 sZ l mt #hu\5' bh5 Z5 sZ l m6ng1 nX t ng U5 k5?u
m6ng thnh k5?u #hu\5 7sng #!#h thm 9+ #!# k2 t d"u ph$y 9+ g5a #!# phQn t_ m6ng
tr+ng #hu\5 (a9aF#r5pt M s_ d`ng ph)4ng thV# t+Ftr5ng())'
M6ng #hqng ta 9,a h[# #h+ ph=p l)u #!# g5! tr the+ 9 tri 7sng sZ' M6ng dung #hu\5 ? l)u
#!# g5! tr g[5 l m6ng l5n kOt'
V dY t+ 76ng l)u #!# danh m`# 58n th+5'
9ar ph+ne j neN Erray()
ph+ne75nh j 0T/k
ph+ne tuan j W0}k
Ha5 dLng l8nh trn M Kt #!# l5n kOt 9+ tr+ng m6ng ph+ne' <? l"y sZ 58n th+5 #;a tuan
tr+ng m6ng1 ta s_ d`ng l8nhY ph+netuan'
M6ng dng ny r"t thi#h h*p tr+ng 958# l)u tr nhng #Kp g5! tr s+ng s+ng' mi d` ta muZn
l)u mt danh s!#h #!# mKt hng m kh!#h hng M #h[n mua hng #ung sZ l)*ng m\5 mKt
hng'
<? truy #Dp t+n 7 m6ng ny1 ta s_ d`ng 9Lng lKp d+r (75en 5n mang) the+ #q ph!p nh) M
g5I5 th58u 3 phQn tr)I#'
V d
9ar ErrHndex j neN Erray(.1 a7#1 .kT)1 ErrMFFm j neN Erray()
ErrMFFmmu j .kTW}0 ErrMFFmLan j W.W}0
ErrMFFmH+ang j .kT0 ErrMFFmLan j .kT0.
d+r (5 5n ErrHndex)
alert(ErrHndex5)
d+r(5 5n ErrMFFm)
alert(ErrMFFm5)
V d T m5Ot k hm #h+ ph=p nhDp1 xu"t mt m6ng l5n kOt'
fHTMLg
fHnE]g
fz& &
fFGoHPT languagejea9aF#r5pteg
E j neN Erray()
ll (hDp k phQn t_ 9+ m6ng'
dun#t5+n 5nPut()
5j
d+
Nh5le(5fk)
dun#t5+n +utPut()
d+r (5 5n E)
alert(eEe 5 eY e E5)
& &g
flFGoHPTg
flHnE]g
fAw]xg
fE hredjee +nGl5#kje5nPut(E)eg (hDp flEgfAog
fE hredjee +nGl5#kje+utPut(E)eg u"t flEg
flAw]xg
flHTMLg
5.5 )Oi T`xJP BHHSqGJ
<Z5 t)*ng A++lean l mt Z5 t)*ng 7a+ ngLa5 (Nrapper) #h+ mt g5! tr 7++lean' <Z5 t)*ng
ny )*# dung ? #huy?n mt g5! tr khng ph65 7++lean (n+n&7++lean) thnh g5! tr 7++lean'
#q ph!p t+ mt Z5 t)*ng 7++leanY jGk varia<lena2e Jqs BHHSqGJ(<oolval"eR
(Ou mt Z5 t)*ng 7++lean khng #X g5! tr kh35 t+ (g5! tr 7an Qu) h+K# nX 7sng 1 null1
ee1 (a(((+t E (um7er) th: g5! tr kh35 t+ #;a nX sc )*# g!n l dalse' <Z5 t)*ng 7++lean
#hC nhDn g5! tr true kh5 g5! tr kh35 t+ l #hu\51 k? #6 #hu\5 edalsee
& mi d` 9R Z5 t)*ng 7++lean 9I5 g5! tr kh35 t+ l dalseY
9ar 9ar.jneN A++lean()
9ar 9arkjneN A++lean()
9ar 9arTjneN A++lean(null)
9ar 9arWjneN A++lean(ee)
9ar 9ar}jneN A++lean(dalse)
9ar 9ar0jneN A++lean((a()
& mi d` 9R Z5 t)*ng 7++lean 9I5 g5! tr kh35 t+ l trueY
9ar 9ar.jneN A++lean(true)
9ar 9arkjneN A++lean(etruee)
9ar 9arTjneN A++lean(edalsee)
9ar 9arWjneN A++lean(eo5#harde)
5.6 ?@i T8Ang To"n HBc
<Z5 t)*ng Math 7a+ g@m t"t #6 #!# hm 9 #!# hsng sZ t+!n h[# #X sn' Ta khng #Qn ph65
t+ Z5 t)*ng Math tr)I# kh5 dung'
Page 48.
<? s_ d`ng mt hm (ph)4ng thV#) hay hsng sZ (thu# tinh) #;a Z5 t)*ng ny1 ta s_ d`ng
#q ph!pY
MG]F.property 2ethod
G!# 9i d`Y
& L"y mt sZ rand+m nsm tr+ng kh+6ng 9 . tr+ng 75On erhnum7ere ta #X hm
rand+m()Y rhnum7erjMath'rand+m()
& <? lm trLn sZ 10 ta #X hm r+und()Y rhnum7erjMath'r+und('0)
& <? truy #Dp hsng sZ PHY rhnum7er j Math'PH
5.7 DOM (DHZNwqJ] OuqZ] MHTqS
Trn trang Ne7 #X nh5Ru Z5 t)*ng' <? #X th? Su6n l2 tZt #!# Z5 t)*ng ny1 #hqng ta ph65
75Ot #!#h tr:nh duy8t Su6n l2 #hqng nh) thO n+ 9 #!#h truy #Dp On t,ng Z5 t)*ng tr+ng
m h:nh' Fau By l tU #hV# phBn #"p #;a m h:nh ]wM (H:nh sau)'
Qu #;a ]wM l Z5 t)*ng N5nd+Ns l #_a sU #hVa trang Ne7 ang xem' <Z5 t)*ng
ny l5 #hVa #!# Z5 t)*ng #+nY na95gat+r1 l+#at5+n1 d+#ument'''M\5 Z5 t)*ng ny l5
#hVa nh5Ru thng t5n tr+ng nX nh) #!# thu# tinh1 #!# ph)4ng thV# 9 #!# Z5 t)*ng #+n
kh!#' <? truy #Dp On Z5 t)*ng h+K# #!# thnh phQn #;a Z5 t)*ng n+1 ta 7rt Qu t, Z5
t)*ng N5nd+Ns 5 xuZng' G!# Z5 t)*ng h+K# Z5 t)*ng 9I5 #!# ph)4ng thV#1 thu# tinh
#;a nX )*# phBn #!#h nhau 735 d"u #h"m (')'
V d
& <Z5 t)*ng na95gat+r #hVa #!# thng t5n 9R tr:nh duy8t' Ha5 thu# tinh app(ame l)u tn
#;a tr:nh duy8t 9 appmers5+n l)u thng t5n 9R ph5n 76n #;a tr:nh duy8t'
Page 49.
GBu l8nh N5nd+N'na95gat+r'app(ame 9 N5nd+N'na95gat+r'appmers5+n tr6 9R #hu\5 #hVa
tn 9 ph5n 76n #;a tr:nh duy8t m!y ang s_ d`ng'
& <Z5 t)*ng H5st+ry l)u thng t5n #!# trang >e7 m ng)^5 s_ d`ng M duy8t Sua tr+ng #;a
sU h58n hnh' <Z5 t)*ng ny #X ph)4ng thV# g+(n)1 tr+ng X n l mt sZ nguyn' (Ou ng
sc t)4ng )4ng 9I5 958# #l5#k 9+ nqt d+rNard n lQn1 nOu nf th: ng)*# l5' ]+ 9Dy muZn
Suay l5 k trang tr)I# ta #hC #Qn g[5 #Bu l8nhY N5nd+N'h5st+ry'g+(&k)'
Tuy nh5n nOu +n mM a9aF#r5pt truy #Dp On ngay #_a sU #hVa nX1 #X th? 7v t, N5nd+N
(N5nd+N mK# nh l #_a sU h58n hnh 9I5 trang #hVa a9aF#r5pt)'
Tr+ng m h:nh trn th: Z5 t)*ng d+#ument l Z5 t)*ng Suan tr[ng 9 hay s_ d`ng nh"t' (X
#hVa t+n 7 t5 l58u #;a trang Ne7 nh)Y h:nh 6nh1 l5n kOt1 75?u mtu ' ' '
Ta #yng th"y t"t #6 #!# thnh phQn #;a Z5 t)*ng ny )*# tU #hV# the+ dng m6ng' <? truy
#Dp On )*# #!# thnh phQn #;a Z5 t)*ng ny1 ta #X th? truy #Dp the+ #hC sZ m6ng h+K# the+
tn #;a Z5 t)*ng' L)u 2 l #hC sZ m6ng )*# tinh t, '
V d Gh+ mt d+rm nh) sauY
fHTMLg
fAw]xg
fwoM namejd+rm.g
fH(PT typejtext namejtengfAog
fH(PT typejtext namejd5a#h5gfAog
fH(PT typejtext namejd5a#h5gfAog
flwoMg
fwoMg
fH(PT typejtext g
flwoMg
flAw]xg
flHTMLg
Ch- . Trang 3 trn #X k d+rm' Tr+ng d+rm thV nh"t l5 #X k text7+x #X #ung tn d5a#h5'
L"y g5! tr #;a tr+ng text7+x #X tn l ten tr+ng d+rm thV nh"t ta s_ d`ng mt
tr+ng nhng #Bu l8nh sau'
N5nd+N'd+#ument'd+rms'ten'9alue
d+#ument'd+rms'ten'9alue
d+#ument'd+rm.'ten'9alue
L"y g5! tr phQn t_ a #hC thV k tr+ng d+rm.
d+#ument'd+rm.'d5a#h5.'9alue
h+K# d+#ument'd+rms'elementsk'9alue
<Om sZ d+rm tr+ng trangY
d+#ument'd+rms'length
Ghqng ta th)^ng s_ d`ng m h:nh ny ? k5?m tra tinh h*p l8 #;a mt 75?u mtu tr)I# kh5
thng t5n tr+ng 75?u mtu )*# g_5 ln ser9er h+K# k5?m tra tr:nh duy8t #;a ng)^5 s_ d`ng ?
h)Ing dtn ng)^5 s_ d`ng On nhng trang thi#h h*p'
Page 50.
V d
T+ d+rm nh) h:nh 9c'
(hDp g5! tr 1 x 9 #h[n ph=p t+!n 1 & 1 1 l'
Gl5#k nqt #al#ul sc k5?m tra #!# g5! tr tr+ng 1
9 x #X h*p l8 #h)a' (Ou h*p l81 kOt Su6 sc
)*# gh5 9+ text7+x result' Gl5#k delete sc x+!
#!# g5! tr tr+ng d+rm tr3 9R g5! tr mK# nh 7an
Qu' 1 x h*p l8 kh5Y l mt sZ' <Z5 9I5 ph=p
t+!n #h5a th: x ph65 kh!# '
fHTMLg
fHnE]g
fFGoHPT languagejea9aF#r5pteg
fz&&
ll b5?m tra g5! tr 9 x #X h*p l8 hay khng' (Ou g5! tr n+ khng h*p l81
ll #huy?n #+n trv 9R l5 X 9 tr6 9R g5! tr dalse1 ng)*# l5 tr6 9R true'
dun#t5+n #he#kx()
9ar j d+#ument'#al#ulat5+n'gtx'9alue
9ar xj d+#ument'#al#ulat5+n'gty'9alue
5d (5s(a(() ('lengthjj))
ll<)a #+n trv 9R text7+x kh5 khng h*p l8'
d+#ument'#al#ulat5+n'gtx'd+#us()
return dalse
5d (5s(a((x) (x'lengthjj))
d+#ument'#al#ulat5+n'gty'd+#us()
return dalse
return true ll Tr6 9R true nOu 9 x Ru l sZ'
l Hm k5?m tra xem ng)^5 s_ d`ng M #h[n ph=p t+!n n+ 9 tr6 9R ph=p t+!n M
#h[n' (Ou #h)a #h[n hm sc tr6 9R g5! tr e#hua#h+ne'l
dun#t5+n getwpe()
Page 51.
dun#t5+n #al()
5d (z#he#kx())
alert(e%5! tr ph65 nhDp l mt sZ e)
else
9ar pt j getwpe()
9ar j d+#ument'#al#ulat5+n'gtx'9alue
9ar x j d+#ument'#al#ulat5+n'gty'9alue
sN5t#h (pt)
#ase e#+ngeY
d+#ument'#al#ulat5+n'result'9alue j parsel+at() parsel+at(x)
7reak
#ase etrueY
d+#ument'#al#ulat5+n'result'9alue j & x
7reak
#ase enhaneY
d+#ument'#al#ulat5+n'result'9alue j x
7reak
#ase e#h5aeY
d+#ument'#al#ulat5+n'result'9alue j l x
7reak
#ase e#hua#h+neY
alert(ehay #h+n m+t phep t+ane)
&&g
flFGoHPTg
fHnE]g
fAw]xg
fwoM nameje#al#ulat5+neg
jfH(PT type jetexte namejegtxegfAog
xjfH(PT typejetexte namejegtyegfAog
wperat5+n
fH(PT typejerad5+e nameje+pee 9alueje#+ngeg
fH(PT typejerad5+e nameje+pee 9aluejetrueg &
fH(PT typejerad5+e nameje+pee 9aluejenhaneg
fH(PT typejerad5+e nameje+pee 9alueje#h5aeg lfAog
oesult fH(PT typejetexte namejeresultegfAog
fH(PT typeje7utt+ne 9alueje#al#ule +nGl5#kje#al()eg
fH(PT type jeresete 9aluejedeleteeg
flwoMg
flAw]xg
flHTMLg
Page 52.
Bi ? "fL TghNG ,i 1L[N
6.1 Gii Thiu
G!# s k58n l thu# tinh r"t Suan tr[ng h\ tr* s t)4ng t!# Z5 9I5 trang >e7' Ta #X th? t+ ra nhng
tr:nh x_ l2 #!# s k58n )*# th# h58n nhsm ph6n Vng l5 nhng s k58n ph!t s5nh d+ ng)^5 s_ d`ng
h+K# d+ h8 thZng' Tr+ng #h)4ng ny1 ta sc t:m h5?u 9R nhng s k58n h\ tr* l HTML <ng' ta sc #Ln
t:m h5?u #!#h thay U5 n5 dung 9 9 tri #;a #!# phQn t_ trn trang Ne7 the+ tinh ng'
6.2 "-i TIjng ,W 1in
M h:nh F k58n (n9ent M+del) l mt phQn Suan tr[ng thu# m h:nh Z5 t)*ng t5 l58u
(]+#ument w7e#t M+del)' <X l thnh phQn #hinh t+ nn mt trang ng 9 t)4ng t!#' M
h:nh F k58n x!# nh )*# nhng s k58n n+ ph!t s5nh #h+ mt phQn t_1 #!#h thV# s k58n
)*# g5a+ #h+ mt tr:nh x_ l2 s k58n 9 d l58u #X th? #ung #"p #h+ tr:nh x_ l2 s k58n
(e9ent handler)'
Mt s k58n (e9ent) l mt thng 7!+ x6y ra ? !p Vng l5 mt hnh ng' F k58n X #X th?
l ph!t s5nh t, h8 thZng nh) l mt s thay U5 9R trng th!5 h+K# ph!t s5nh d+ ng)^5 s_
d`ng& ki#h #hut h+K# "n phim tr+ng lq# xem t5 l58u' Mt 7 x_ l2 #!# s k58n l mt khZ5
#!# mM (#+de) l5n kOt 9I5 nhau ? nhDn 5Ru kh5?n kh5 mt s k58n t)*ng Vng x6y ra'
M\5 e9ent handler #X mt Zt t)*ng s k58n l5n kOt' <Z5 t)*ng s k58n #ung #"p thng t5n 9R s k58n
X & l+5 s k58n 9 9 tri #;a #+n trv t5 th^5 g5an #;a s k58n' bh5 mt s k58n ph!t s5nh1 th: s k58n
X )*# g35 5 nh) l mt Z5 sZ Z5 9I5 7 x_ l2 s k58n' ] nh5n1 #Qn ph65 #X mt tr:nh x_ l2 tr+ng
tr)^ng h*p thV nh"t'
mi d` kh5 ng)^5 s_ d`ng "n nqt #+n #hut1 mt s k58n t!# ng ln #hut )*# ph!t s5nh' <Z5 t)*ng
s k58n #X #hVa nhng thng t5n sauY
& L+5 s k58n tr+ng tr)^ng h*p ny l s t!# ng ln #hut'
& G!# 9 tri x 9 y #;a #+n trv kh5 ta "n nqt #+n #hut'
& G+n sZ #hC ra nqt #+n #hut )*# s_ d`ng'
& Mt tr)^ng #X #hVa nhng phim K# 758t (G+ntr+l1 Elt1 Meta1 h+K# Fh5dt) M )*# nh"n 9+
th^5 5?m #;a s k58n'
Mt sZ nhng s k58n )*# s_ d`ng thng th)^ng tr+ng ]HTML lY
NFJP R~ viVJ ZHJ ZFNd]
S~ viVJ M ]L
+n#l5#k (X )*# ph!t s5nh kh5 ng)^5 s_ d`ng ki#h 9+ mt phQn t_1 h+K# "n
9+ mt phim nnter ln phQn t_ X'
+nd7l#l5#k (X )*# ph!t s5nh kh5 ng)^5 s_ d`ng ki#h qp #hut ln mt phQn t_'
+nm+use+ut1
+nm+used+Nn1
+nm+useup1 (hng s k58n Ru )*# ph!t s5nh nhsm !p Vng l5 s #huy?n ng
Page 53.
+nm+usem+9e1
+nm+use+9er
#;a #+n #hut
CfZ R~ viVJ uJ bF^w
S~ viVJ M ]L
+nkeyd+Nn F k58n ny xu"t h58n kh5 mt phim )*# nh"n
+nkeyup F k58n ny xu"t h58n kh5 ng)^5 s_ d`ng 7ung th6 phim
CfZ R~ viVJ oHZNR j ZFJ S~Gg
S~ viVJ M ]L
+nd+#us u"t h58n kh5 mt phQn t_ nhDn )*# d+#us'
+n7lur u"t h58n kh5 mt 5Ru kh5?n khng #Ln d+#us'
CfZ R~ viVJ vFfZY
S~ viVJ M ]L
+nl+ad u"t h58n sau kh5 )*# np 9 #!# phQn t_ trn trang )*# np'
+nunl+ad u"t h58n ngay tr)I# kh5 t5 l58u khng )*# np 9 ng)^5 dung #huy?n Sua
trang kh!#
+nreset u"t h58n kh5 ng)^5 s_ d`ng #h[n nqt oeset trn mt d+rm
+nsu7m5t u"t h58n kh5 ng)^5 s_ d`ng #h[n nqt Fu7m5t trn mt d+rm
Fau By l mt 9i d` tr+ng X #!# s k58n #+n #hut kh!# nhau #;a #+n #hut )*# 7rt g5
l5 9 trang X )*# thay U5 the+ tinh ng ? !p l5 nhng s k58n X' HMy xem l5 +n
mM ny tr+ng Hnternet nxpl+re'
fHTMLg
fHnE]g
fTHTLng#aptur5ng M+use n9entflTHTLng
flHnE]g
fAw]x +nGl5#kjed+#ument'7gG+l+rjla9endereg
fP +nm+use+9erjestyle'#+l+r j 7luee
+nm+use+utjestyle'#+l+r j 7la#ke
+n#l5#kjestyle'd+ntF5ejk}egM+9e the m+use +9er th5s l5ne and see Nhat
happenflPg
flAw]xg
flHTMLg
6.3 ! L" S# $i%n Tr&ng 'nt(rn(t )*+,&r(
Mt tr:nh x_ l2 s k58n l mt tDp h*p nhng #Bu l8nh )*# th# h58n ? !p Vng l5 mt s
k58n' mi d`1 ta #X th? g!n mt hm 9+ s k58n +n#l5#k #;a mt phQn t_ nqt l8nh'
fH(PT type j 7utt+n +n#l5#k j es+medun#t5+n( )eg
)cJF JPFyG S R~ viVJ
Page 54.
GX nh5Ru #!#h ? nh ngha mt hm x_ l2 s k58nY
f5nput typeje7utt+ne nameje7utt+ne 9aluejeGl5#k Heree
+nGl5#kje#l5#kdun#()eg
fld+rmg
Ta #Ln #X th? nh ngha mt tr:nh x_ l2 s k58n kh5 s_ d`ng thJ fFGoHPTg' (gha l1 ta #X th? t+
ra mt s#r5pt !p d`ng )*# 9+ mt s k58n r5ng Z5 9I5 mt phQn t_ M )*# x!# nh' G!# thu#
tinh wo 9 nmn(T #;a thJ FGoHPT )*# dung tr+ng nh nghaY
fd+rm namejed+rm.eg
f5nput typeje7utt+ne nameje7utt+n.e 9alueje#l5#k hereeg
fld+rmg
fs#r5pt d+rje7utt+n.e e9entje+n#l5#ke languagejea9aF#r5pteg
''' the a9aF#r5pt #+de t+ handle the e9ent
fls#r5ptg
F thuDn l*5 #;a 958# s_ d`ng thJ fFGoHPTg nhsm nh ngha #!# hm x_ l2 s k58n l nX #X 9 tri
Vng tr)I# s+ 9I5 #hV# n-ng x_ l2 s kn )*# x!# nh tr+ng thJ (#X sn) 5nl5ne'
A6ng sau By lt k mt sZ thu# tinh #;a Z5 t4ng s k58nY
TFNdZ ]^JF M ]L
type <By l mt g5! tr #hu\5 x!# nh )*# tn #;a s k58n' mi d`Y eGl5#ke
sr#nlement (X #hC ra Z5 t)*ng m ki#h h+t s k58n'
altbey Trng th!5 #;a phim Elt kh5 s k58n xu"t h58n
#trlkey Trng th!5 #;a phim Gtrl kh5 s k58n xu"t h58n
sh5dtbey Trng th!5 #;a phim Fh5dt kh5 s k58n xu"t h58n
keyG+de <By l g5! tr #;a sZ nguyn ? nhDn dng )*# phim ki#h h+t s k58n
7utt+n (hDn dng )*# nqt #+n #hut )*# nh"n
x1y <By l nhng g5! tr sZ nguyn x!# nh )*# Z5 t)*ng p+5nter kh5 #h5Ou
On Z5 t)*ng 9Dt #hVa (#+nta5ner +7e#t)
s#reer1 s#reenx <By l nhng g5! tr sZ nguyn x!# nh 9 tri Z5 t)*ng p+5nter trn deskt+p
returnmalue !# nh g5! tr tr6 9R (return 9alue) #;a s k58n hay #;a #_a sU h5 th+5'
#an#elAu77le GhO #5 Kt nhsm ng-n ng,a s k58n h58n th^5 khng nU5 7[t s k58n'
6.4 Ni B] S~ .iVJ
Tr)I# By1 nOu muZn x!# nh )*# hnh 95 mK# nh #h+ mt s k58n1 9i d` nh) 7utt+n #l5#k th: ta
ph65 m t6 +n mM #h+ m\5 Z5 t)*ng' HTML <ng #ung #"p h8 thZng phBn #"p 9Dt #hVa Z5 9I5 #!#
t5 l58u HTML' (gha l1 ta #X th? 95Ot 7 x_ l2 s k58n #hung #ung nh5Ru Z5 t)*ng ' bh5 mt s k58n
ph!t s5nh tr+ng mt Z5 t)*ng #+n th: nX #X th? d^5 ln phBn #"p #!# phQn t_ trn trang tI5 kh5 nX
t:m th"y 7 x_ l2 s k58n' u! tr:nh ny )*# g[5 l ee9ent 7u77l5nge (u! tr:nh nU5 7[t s k58n)'
Page 55.
H:nh m5nh h[aY u! tr:nh nU5 7[t s k58n'
Tr+ng s4 @ trn By1 kh5 s k58n s5u l5n kOt ph!t s5nh (d5re)1 th: s k58n X t+ ng)*# l5 Su! tr:nh
phBn #"p #h+ On kh5 nX t:m ra mt tr:nh :u kh5?n ' Ghinh s phBn #"p ny )*# x!# nh 735 lu@ng
HTML 9 khng ph65 the+ thV t #!# hng m`# (5tem) )*# h5?n th ln mn h:nh' mi d` nh)1 ta #X
th? nh 9 head5ng 3 Qu trang #h+ du s k58n X sc nU5 7[t ng)*# ln phQn t_ Aw]x'
fHTMLg
fA+dy +n#l5#kje#l5#khere()eg
fH. styleje#+l+rY h+tp5nkeg>el#+me t+ EssetflH.g
fAog
fP style j e#+l+rYl5megreene
+n#l5#kjeEls+Gl5#ked()egTh5s 5s f+nt #+l+r j mar++n s5ej }gg++dflw(Tg dun'
fAog
fHkgTh5s 5s an+ther head5ngflHkg
fFGoHPT LE(%E%njea9aF#r5pteg
dun#t5+n #l5#khere()
alert(eTh5s element Nas #l5#ked e
N5nd+N'e9ent'sr#nlement'tag(ame)
dun#t5+n Els+Gl5#ked()
alert(ex+u #l5#ked mee
N5nd+N'e9ent'sr#nlement'tag(ame)
flFGoHPTg
flAw]xg
flHTMLg
Ghqng ta hMy h5?u mM trn Xng #hV# n-ng nh) thO n+' bh5 ng)^5 s_ d`ng ki#h 9+ t5u R
e>el#+me t+ Essete th: s k58n +n#l5#k )*# ph!t s5nh 9 H. tr3 thnh phQn t_ ngu@n' Tuy nh5n1
khng #X 7 x_ l2 s k58n n+ )*# )*# g!n #h+ H. 9: 9Dy s k58n +n#l5#k sc t+ ng)*# l5 s phBn
#"p Z5 9I5 phQn t_ Aw]x' PhQn t_ Aw]x #X mt 7 x_ l2 s k58n g[5 l #l5#khere ( ) Z5 9I5 s k58n
+n#l5#k dung ? lm h5?n th eTh5s element Nas #l5#ked H.e'
bh5 ng)^5 dung ki#h 9+ t, eg++de1 th: s k58n +n#l5#k Z5 phQn t_ w(T )*# ph!t s5nh' m1 khng
#X tr:nh x_ l2 s k58n Z5 9I5 phQn t_ w(T1 nn s k58n +n#l5#k t+ ng)*# l5 s phBn #"p Z5 9I5
phQn t_ P' PhQn t_ P #X mt 7 x_ l2 s k58n Els+Gl5#ked( ) dung ? h5?n th thng 7!+ ex+u #l5#ked
me w(Te1 tr:nh s k58n lq# X 9tn t5Op t`# )^ng dtn #;a nX ng)*# ln s phBn #"p ? #hm 9+
Page 56.
phQn t_ Aw]x' Tr:nh x_ l2 s k58n #l5#khere ( ) M grn #h+ phQn t_ Aw]x sc )*# ki#h h+t 9
thng 7!+ eTh5s element Nas #l5#ked w(Te )*# h5?n th'
(Ou khng muZn #!# s k58n gBy ng)*# l5 s phBn #"p1 th: ta Kt thu# tinh #an#elAu77le #;a Z5
t)*ng s k58n l True #h+ 7"t k 7 x_ l2 s k58n n+' Fau kh5 tr:nh x_ l2 tr6 9R1 th: s k58n X ng,ng
t+ ra #hu\5 s k58n 9 5 On kOt thq# ngay lDp tV#'
fHTMLg
fAw]x +n#l5#kjesetA+dyFtyle()eg
fH.g>el#+me t+ EssetflH.g
fP styleje#+l+rYaSuae +n#l5#kjesetParaFtyle()egTh5s 5s fw(T #+l+r j
mar++ngg++dflw(Tg dun'
fHkg Th5s 5s a Hk head5ngflHkg
fH.gTh5s 5s an+ther H. head5ngflH.g
fFGoHPT LE(%E%njea9aF#r5pteg
dun#t5+n setA+dyFtyle()
9ar head. j d+#ument'all'tags(eH.e)
d+r(5j 5fhead.'length5)
head.'5tem(5)'style'#+l+rjeh+tp5nke
dun#t5+n setParaFtyle()
9ar pstyle j N5nd+N'e9ent'sr#nlement
Nh5le ((pstyle zjnull) (pstyle'tag(ame zj ePe))
pstyle j pstyle'parentnlement
flFGoHPTg
flAw]xg
flHTMLg
<5?m thuDn l*5 tr+ng 958# s_ d`ng Su! tr:nh t+ thnh #hu\5 s k58n l ta khng #Ln ph65 95Ot +n mM
#h+ m\5 phQn t_' Ghng hn1 kh5 ng)^5 dung ki#h 9+ hp k5?m tra (#he#k 7+x)' <5?n h:nh l ta sc
ph65 95Ot mM #+de Z5 9I5 s k58n #l5#k #;a m\5 hp k5?m tra (#he#k 7+x)'Thay 9: thO ta #X th? 95Ot
th; t`# trn #hinh d+rm X' bh5 mt tr+ng nhng hp k5?m tra (#he#k 7+x) )*# #h[n1 th: s k58n X
sc t ng t+ ra #hu\5 s k58n #h+ mt d+rm m- 9 x_ l2 3 By'
bhng ph65 t"t #6 #!# phQn t_ Ru h\ tr* #h+ t"t #6 #!# s k58n' A6ng sau By l58t k ra mt sZ #!#
phQn t_ #;a m h:nh Z5 t)*ng t5 l58u 9 #!# s k58n l5n Suan #;a #hqng'
S~ viVJ &F}J ] M ]L
+na7+rt Hmage <)*# ki#h h+t kh5 ng)^5 s_ d`ng hu 7v
958# t65 mt h:nh 6nh 7sng #!#h ki#h 9+
mt kOt nZ5 h+K# nqt Ft+p
+n7lur >5nd+N1 drame1 all d+rm
element
bh5 ng)^5 s_ d`ng 7v 5 mt d+#us ra khv5
mt #_a sU1 khung hay mt phQn t_ d+rm
+n#l5#k Autt+n1 rad5+ 7utt+n1 #he#k
7+x1 su7m5t 7utt+n1 reset
7utt+n1 l5nk
)*# ki#h h+t kh5 ng)^5 s_ d`ng ki#h tr!5
9+ nqt #+n #hut '
+n#hange Text d5eld1 textarea1 sele#t l5st (X )*# ki#h h+t kh5 ng)^5 s_ d`ng thay
Page 57.
U5 g5! tr #;a phQn t_'
+nd+#us >5nd+N1 drame1 all d+rm
element
(X )*# ki#h h+t kh5 ng)^5 s_ d`ng Kt
d+#us 9+ mt #_a sU1 khung1 hay phQn t_
d+rm
+nl+ad ]+#ument1 applet1 drameset1
5mg1 l5nk1 +7e#t1 s#r5pt1
style1 N5nd+N
(X )*# ki#h h+t kh5 trang )*# np
tr:nh duy8t'
+nm+used+Nn Autt+n1 d+#ument1 l5nk (X )*# ki#h h+t kh5 ng)^5 s_ d`ng "n
nqt #+n #hut
+nm+use+ut Erea1 layer1 l5nk (X )*# ki#h h+t kh5 ng)^5 s_ d`ng d5
#huy?n #+n trv 5 t, mt phQn t_'
+nm+use+9er Erea1 layer1 l5nk (X )*# ki#h h+t kh5 ng)^5 s_ d`ng d5
#huy?n #+n trv khrp mt phQn t_'
+nm+useup Autt+n1 d+#ument1 l5nk (X )*# ki#h h+t kh5 ng)^5 s_ d`ng nh6
nqt #+n #hut M )*# "n'
+nreset +rm (g)^5 s_ d`ng Kt l5 d+rm
+nres5e >5nd+N1 drame (X )*# ph!t s5nh kh5 ng)^5 s_ d`ng Kt
l5 ki#h th)I# mt #_a sU h+K# mt khung'
+nsu7m5t +rm (X )*# ki#h h+t kh5 ng)^5 s_ d`ng 8
tr:nh mt d+rm'
+nunl+ad ]+#ument1 drameset1 5mage1
N5nd+N
(X )*# ki#h h+t kh5 ng)^5 s_ d`ng
#huy?n sang mt trang kh!#'
CfZ bF}J ] j ZfZ R~ viVJ Z Si[J NGJ ]kHJP IE (IJ]qkJq] EbSHkqk
6.5 C!c &k $8
G!# 9i d` sau sc m phvng #!# tha+ t!# hay )*# s_ d`ng'
& Uh?ng cho chJn v;n <=n trong trang Ie< v3 $h?ng cho s5 dng ch"#t ph=i Es5 dng
trVnh d"yQt IWR
fs#r5pt languagejea9aF#r5pteg
dun#t5+n #l5#k()
5d (e9ent'7utt+njjk)
d+#ument'+nm+used+Nnj#l5#k
d+#ument'+nsele#tstartjneN un#t5+n (ereturn dalsee)
fls#r5ptg
flheadg
f7+dyg
(5 dung ny sc khng th? dung #hut ? #h[n' f7rg
bhng th? #l5#k #hut ph65'
fl7+dyg
Page 58.
& UiX2 tra n-t ch"#t n3o *AFc Clic$Y
fs#r5pt languageja9as#r5ptg
dun#t5+n TestM+use()
d+#ument'drm'ledt'#he#ked j( N5nd+N'e9ent'7utt+njj.)
d+#ument'drm'm5d'#he#ked j(( N5nd+N'e9ent'7utt+njjT)
( N5nd+N'e9ent'7utt+njjW))
d+#ument'drm'r5ght'#he#ked j( N5nd+N'e9ent'7utt+njjk)
fls#r5ptg
flheadg
f7+dy +nm+used+NnjeTestM+use()eg
fd+rm namejdrmg
Ledt f5nput typej#he#k7+x namejledtgf7rg
M5dle f5nput typej#he#k7+x namejm5dgf7rg
o5ght f5nput typej#he#k7+x namejr5ghtg
fld+rmg
fl7+dyg
& L8y tJa *# c>a c"rsor'
f7+dy 7g#+l+rjNh5te +nm+used+Nnjed+#umenth+nM+use]+Nn()e
+nm+usem+9ejed+#umenth+nM+useMw9e()e g
f#enterg
f5nput 5djtext7+x typejtext s5ejkg
fl#enterg
fl7+dyg
fs#r5pt languageja9as#r5ptg
dun#t5+n d+#umenth+nM+usew9er()
dun#t5+n d+#umenth+nM+usewut()
fls#r5ptg
flheadg
f7+dyg
f5nput typejtext +nkeypressjeTestbey()egf7rg
fd59 5dj#+dehpressedgfld59g
fd59 5djsh5dtkeygfld59g
fl7+dyg
& Reset& s"<2it& thay *\i th"#c tnh action c>a 2#t For2
fheadg
fs#r5pt languageja9as#r5ptg
dun#t5+n Fu7m5t()
5d(d+#ument'drm'su7m5thx('#he#ked)
return true
else
alert(eGl5#k #h+n tr+ng #he#k7+x de su7m5tze)
return dalse
dun#t5+n T+F#r5pt(path)
d+#ument'drm'a#t5+njpath
d+#ument'drm'su7m5t()
fls#r5ptg
flheadg
f7+dyg
fd+rm namejdrm a#t5+njgetd+rm'php +nsu7m5tjereturn Fu7m5t()e
+nresetje alert(mua 7am reset)eg
f5nput typej#he#k7+x namejsu7m5thx(gFu7m5t
f5nput typejreset 9alueje+a dataeg
f5nput typejsu7m5t 9aluejegu5 dataeg
f5nput typej7utt+n +n#l5#kjeT+F#r5pt(getd+rm.'php)e 9aluejet+5 trang
getd+rm.'phpeg
Page 60.
f5nput typej7utt+n +n#l5#kjeT+F#r5pt(getd+rmk'php)e 9aluejet+5 trang
getd+rmk'phpeg
fld+rmg
fl7+dyg
flhtmlg
& L8y v;n <=n *Z chJn trong trang Ie<
fhtmlg
fheadg
fs#r5pt languageja9as#r5ptg
dun#t5+n d+#umenth+n#l5#k()
fls#r5ptg
flheadg
f7+dy 7g#+l+rjNh5te +n#l5#kjed+#umenth+n#l5#k()eg
nxample .Y Fele#t s+me text N5th the m+use''' f7rg
f5nput typejtext 5djtext7+x s5ejWg fpg '''+r m+9e
the m+use +9er a hyperl5nkY
fl7+dyg
flhtmlg
6.6 U/:_u: linS/mA
a9aF#r5pt #h+ ta kh6 n-ng m3 nh5Ru #_a sU tr+ng tr:nh duy8t 9 k5?m s+!t nhng g: #X tr+ng
#hqng' PhQn ny #hqng ta h[# #!#h m3 mt #_a sU mI5 tr+ng a9aF#r5pt1 t+ #h+ #_a sU th?
h58n the+ 2 muZn1 nh 9 #_a sU trn mn h:nh 9 Xng #_a sU'
G_a sU l mt Z5 t)*ng >5nd+N' <Z5 t)*ng ny #X ph)4ng thV# wpen() #h+ ph=p m3 ra mt
#_a sU mI5 the+ #q ph!p sauY
N5nd+N'+pen(oL1 (ame1 eatures)
tr+ng XY
KRL oL #;a trang #Qn h5?n th ra tr+ng #_a sU mI5'
7a2e Tn #;a #_a sU' Tham sZ ny #hC hu i#h kh5 s_ d`ng phQn t_ target #;a #!#
l5n kOt tr+ng HTML
Feat"res G!# K# 5?m #h+ ph=p k5?m s+!t #_ sU mI5' G!# K# tinh ny phBn #!#h
nhau 735 #!# d"u ph$y' (g+5 tr, 9I5 #!# K# 5?m l5n Suan On #!# p5xel nh)
#h5Ru rng1 #a+' ' ' nOu #Qn tham sZ n+1 ta #hC 958# l58t k nX tr+ng d"u ng+K#
#;a tham sZ thV T'
A6ng sau l58t k #!# K# 5?m #;a #!# #_a sU'
?c CiD7 Hi&2 :ng
Page 61.
he5ghtj <5Ru #hCnh #h5Ru #a+ #_a sU thnh p5xel
N5dth j <5Ru #hCnh #h5Ru rng #_a sU l p5xel'
Ledt j <Kt #nh tr!5 #;a #_a sU #!#h #nh tr!5 mn h:nh l p5xel'
(tr+ng Hn W')
t+p j <Kt #nh trn #;a #_a sU #!#h #nh trn mn h:nh l p5xel'
(tr+ng Hn W')
L+#at5+n Thm thanh a #hC ? #X th? nhDp oL'
Menu7ar Thm thanh menu
oes5a7le b5?m s+!t 958# thay U5 ki#h th)I# #_a sU
F#r++l7ars Thm thanh #un nOu n5 dung #;a trang lIn h4n ki#h th)I#
#_ sU
s#reen j <Kt #nh tr!5 #;a #_a sU #!#h #nh tr!5 mn h:nh l p5xel'
(tr+ng (F W')
s#reenx j <Kt #nh trn #;a #_a sU #!#h #nh trn mn h:nh l p5xel'
(tr+ng (F W')
Ftatus Thm thanh trng th!5
T++l7ar Thm thanh #ng #`
>5dth j <5Ru #hCnh #h5Ru rng #_a sU l p5xel'
IindoI]CloseER s_ d`ng ? Xng #_a sU h58n t5'
V dY T+ mt #_a sU mI5 tn l > #hVa trang #h5tet'htm' G_a sU ny rng W1 #a+ T}
p5xel1 #X thanh a #hC 9 thanh #ng #`'
fHTMLg
fAw]xg
fE hredjee
+nGl5#kjeN5nd+N'+pen(thu'htm1>1 he5ghtjT}1N5dthjW1 l+#at5+n1
t++l7ars)eg
wpenflEg
flAw]xg
flHTMLg
V dY T+ mt hm ? m3 h+K# Xng mt #_a sU'
fHTMLg
fHnE]g
fFGoHPT languagejea9aF#r5pteg
dun#t5+n neNN5nd+N()
flFGoHPTg
flHnE]g
fAw]xg
fE hredjee +n#l5#kjeneNN5nd+N()eg Gl5#k 9+ By ? t+ #_a sU mI5flEgfAog
fE hredjee +nGl5#kjeN5nd+N'#l+se()eg <Xng #_a sUflEg
flAw]xg
flHTMLg
V d T T0o v3 *i+" $hiXn c!c c5a s\
Page 62.
f7+dyg
fa hredj +nGl5#kje>. jN5nd+N'+pen(temp'html1 >.)eg wpen temp'html tr+ng #ua s+
>. flagf7rg
fa hredj +n#l5#kjeN5nd+N'#l+se()eg Gl+se Mez flagf7rg
fa hredj +n#l5#kje>.'d+#ument'Nr5te(hell+)eg >r5te Hell+ t+ Gua s+ >.flagf7rg
fa hredj +nGl5#kjeN5nd+N'+pen(tempk'html)eg wpen tempk'html tr+ng #ua s+
m+5flagf7rg
fa hredj +nGl5#kjeN5nd+N'+pen(tempk'html1 >.)eg wpen tempk'html tr+ng
>.flagf7rg
fa hredj +n#l5#kje>.'#l+se()eg Gl+se N5nd+N >.flagf7rgflag
Page 63.
Bi b LnU TFoNH UHU ` LnU TFoNH UHpB ,PF&PF
7.1 GiUi TFiVN
PHP (Hypertext Prepr+#ess+r) l ngn ng s#r5pt trn ser9er )*# th5Ot kO ? d{ dng xBy
dng #!# trang >e7 ng' MM PHP #X th? th# th5 trn >e7ser9er ? t+ ra mM HTML 9
xu"t ra tr:nh duy8t Ne7 the+ yu #Qu #;a ng)^5 s_ d`ng'
(gn ng PHP ra ^5 n-m .//W oasmus Lerd+rd sau X )*# ph!t tr5?n 735 nh5Ru ng)^5 tr65
Sua nh5Ru ph5n 76n' Ph5n 76n h58n t5 l PHP } M )*# #ng 7Z lkW'
7.2 )Z )iWw L{b Tk|JF &Fb
PHP l ngn ng )*# xBy dng 7an Qu 9I5 m`# t5u t+ #!# trang Ne7 #! nhBn d{ dng 9
nhanh #hXng 9 g5^ By M ph!t tr5?n thnh mt #ng ngh8 )*# dung rng rM5 ? xBy dng
#!# Vng d`ng Ne7' PHP #X #!# K# 5?m sauY
<)*# xBy dng 9I5 m`# t5u ph!t tr5?n Vng d`ng >e7' GX
nh5Ru hm1 th; t`# sn #huyn d`ng tr+ng lDp tr:nh >e7'
]{ h[#1 d{ s_ d`ng 9I5 #q ph!p kOt h*p g5a G 9 Perl'
L ngn ng F#r5pt'
L ngn ng lDp tr:nh h)Ing Z5 t)*ng gQn 9I5 G'
L ngn ng mM ngu@n m3'
PHP #X 76n #hy trn hQu hOt #!# h8 5Ru hnhY MF >5nd+Ns1
L5nux1 FunwF1 p u! tr:nh #5 Kt 4n g56n1 d{ dng'
Tr* g5qp mnh #h+ GF]L Sua #!# hm1 th; t`# sMn #X d+ 9Dy
d{ s_ d`ng 9 #X tZ# #a+' H58n t5 PHP h\ tr* #!# GF]L #;a wra#le1 MF FL1
P+stgreFL1 Hnter7ase'''mI5 #!# GF]L khng h\ tr*1 PHP #X th? kOt nZ5 Sua
w]AG'
Gh5 phi th"p 9: 76n thBn nX l mM ngu@n m3 nn khng tZn t5Rn
mua 76n SuyRn' PHP #Ln #hy r"t tZt trn #!# h8 Su6n tr GF]L m5{n phi khng
L5 hv5 76n SuyRn nh)Y MyFL1 P+stgreFL1 p
G!# Vng d`ng 95Ot 7sng PHP #X tZ# th# th5 #a+ 9 gBy t65 it
#h+ m!y #h;'
7.3 LEp TrFnh hp Trong GindoH#
F4 @ 9R lDp tr:nh ser9er s5de #;a PHP'
Page 64.
.Y Tr:nh duy8t g_5 yu #Qu tI5 trang PHP'
kY >e7 ser9er g_5 #!# yu #Qu X tI5 tr:nh thng d#h PHP'
T&WY Tr:nh thng d#h PHP th# th5 #!# [an mM PHP' u!
tr:nh ny #X th? l5n Suan On nh5Ru t5 nguyn nh) d5lesystem1 data7ase'''
}Y bOt Su6 #;a Su! tr:nh thng d#h l #!# mM HTML )*# tr6
9R #h+ Fer9er''
0Y Fer9er g_5 mM kOt Su6 HTML 9R l5 tr:nh duy8t'
7.4 )Z )iWw CG Md] TkGJP &Fb
V dY #h+ trang php Qu t5n'
Trang test'php
fhtmlg
f7+dyg
fphp
llHn ra #Bu EY #lass5#al exampleY Hell+1 N+rldz (#hq thi#h)
pr5ntd(eE #lass5#al exampleY Hell+1 N+rldze)
g
fl7+dyg
flhtmlg
bOt Su6 tr:nh duy8t nhDn )*# mM HTML tr6 9R t, ser9er l' (GX th? k5?m tra 7sng #!#h sau
kh5 tr:nh duy8t h5?n th kOt Su61 t, tr:nh duy8t #h[n m5eN ls+ur#e)'
fhtmlg
f7+dyg
E #lass5#al exampleY Hell+1 N+rldz
fl7+dyg
flhtmlg
9i d` trn1 #X mt #Bu l8nh PHP Kt xen kc 9I5 mM HTML' L8nh pr5ntd(eE #lass5#al
exampleY Hell+1 N+rldze) 4n g56n #hC 5n ra #hu\5Y eE #lass5#al exampleY Hell+1 N+rldze 9+
qng 9 tri ny' ]+ 9Dy1 kOt Su6 m Ne7ser9er nhDn )*# sau kh5 th5 hnh x+ng mM php 9
g_5 9R #h+ tr:nh duy8t nh) trn'
)Z iWw wd] ]kGJP bFb
& PhQn m3 rng #;a tn trang kOt thq# 7sng php (#X th? thay U5 kh5 #"u h:nh
Ne7ser9er)'
& G!# +n mM s#r5pt php )*# Kt tr+ng #Kp d"u fphp 9 g (h+K# #Kp d"u f 9 g)'
(Ou muZn s_ d`ng 3 dng thV k f MM php g1 ta ph65 6m 76+ d5le php'5n5 tr+ng th)
Page 65.
m`# >5n(T ph65 #X dLng mM sh+rth+penhtag j wn' (Ou #"m dung l+5 sh+rt ny1 ta
thay dLng trn 7sng sh+rth+penhtag j wdd'
& G!# #hq thi#h #;a mM php g5Zng ngn ng GY Fau k d"u ll #h+ #hq thi#h . dLng 9
nsm tr+ng #Kp d"u l 9 l tr+ng #hq thi#h nh5Ru dLng' (g+5 ra1 tr+ng php #Ln d"u
#hq thi#h #h+ mt dLng g5Zng PerlY
& MM php nsm xen kc 9I5 mM HTML 9 #X th? 3 7"t #V 9 tri n+ tr+ng t5 l58u php'
& %5Zng nh) ngn ng G' M\5 #Bu l8nh tr+ng php kOt thq# 7sng d"u #h"m ph$y ()' Mt
dLng #X th? #X nh5Ru #Bu l8nh' GX th? Kt nh5Ru kh+6ng trrng tr)I# #!# #Bu l8nh m
khng 6nh h)3ng tI5 958# h5?n th #;a kOt Su6 trn tr:nh duy8t'
mi d`Y
f
ajHell+e#h+ a
g
sc t)4ng )4ng 9I5
f
ajHell+
e#h+ a
g
MNl] T SiVN ]kL jn ]k|JF TN?V]Y
<? tr6 kOt Su6 tinh t+!n t, tr:nh thng d#h php 9 g_5 9R tr:nh duy8t dng mM html1 ta #X th?
s_ d`ng #!# hm hay #hC th sauY
& GhC th fj <iX"LthCc g sc tinh kOt Su6 #;a <iX"LthCc 9 thay kOt Su6 9+ qng 9 tri
75?u thV# tr+ng trang'
& n#h+ <iX"LthCc %5Zng #hC th trn' (X Hn ra #hu\5 <iX"LthCc sau kh5 M )*# tinh
t+!n 9 #huy?n sang dng #hu\5'
& pr5ntd(ch"^i *_nh d0ng1 d6 liQ") Hm ny g5Zng nh) tr+ng ngn ng G #h+ ph=p ta
xu"t ra d6 liQ" #X nh dng M )*# x!# nh tr+ng ch"^i *_nh d0ng'
V dY
f
ajW
7jT
e#h+ eal7je 'al7
e#h+ ef7rge
g
fhrg
fjaglfj7gjfjal7g
fhrg
f
ll u"t k sZ nguyn (d) 9 mt sZ th# (d) #X phQn thDp phBn g@m k #h sZ'
pr5ntd(ed l d j 'kde1 a1 71 al7)
g
bOt Su6 nhDn )*#
WlTj.'TTTTTTTTTTT
WlTj.'TTTTTTTTTTT
W l T j .'TT
Page 66.
Bi c THqM NrL $\NG "rNG &DE TFBNG HTML
8.1 Bi-n. H/ng 0 $iu D1 Li%u:
A5OnY
L 9ung nhI l)u tr d l58u tm th^5 9 g5! tr #X th? thay U5 )*#' A5On tr+ng PHP )*# 7rt
Qu 7sng ki h58u 3 tr)I# tn 75On (95Ot l5Rn) 9 phBn 758t #h h+a 9 #h th)^ng' Tn #;a
75On h*p l8 7rt Qu 7sng ki t hay d"u g#h d)I5 9 the+ sau l #!# k2 t1 sZ hay d"u g#h
d)I5' Tr+ng PHP m\5 75On kh5 s_ d`ng khng #Qn kha5 7!+ tr)I#' Tuy nh5n ta th)^ng s_
d`ng kha5 7!+ s+ng s+ng 9I5 l8nh g!n g5! tr kh35 ng #h+ 75On' Mt 75On tr+ng PHP #X th?
l)u g5 7"t #V k5?u d l58u n+ 9 #X th? thay U5 sang k5?u d l58u kh!# tu t,ng th^5 5?m'
Uhai <!o <i`n
Gq ph!pY tnh75On j g5! tr
mi d`Y
f
a j . ll A5On a #hVa mt sZ nguyn
a j Hell+z ll A5On a 7By g5^ #hVa mt #hu\5'
75enA j .k ll L\5' A5On lun ph65 #X d"u d+llas () 3 tr)I#'
.# j a7# llL\51 d+ phQn tn 75On 7rt Qu 7sng . sZ'
g
UiX2 tra tr0ng th!i c>a <i`n
bh5 truy #Dp On mt 75On #h)a )*# kha5 7!+1 #h)4ng tr:nh sc 7!+ l\5' <? tr!nh 5Ru ny ta
s_ d`ng hm 5sset(tn75On)' Hm sc tr6 9R true nOu 75On M t@n t51 ng)*# l51 tr6 9R g5! tr
dalse'
<? hu khng s_ d`ng 9 g565 phXng 9ung nhI #h+ mt 75On n+ X1 ta #X th? s_ d`ng hm
unset (tn75On)' bh5 X 75On ny #X trng th!5 t@n t5 l dalse'
Hm empty(tn75On)Y Tr6 9R true nOu 75On khng t@n t51 #X g5! tr 7sng hay g5! tr r\ng
(#X #h5Ru d5 j )' (g)*# l51 tr6 9R dalse'
V d
fphp
9ar j
5d (empty(9ar))
ll9aluates true' mars 9alue j
e#h+ ef7rg.' mar 5s e5ther +r n+t at all sete
5d (z5sset(9ar))
ll e9aluates dalse' 5sset(9ar) 5s true1 z5sset(9ar) 5s dalse'
e#h+ ef7rgk' The mar 5s n+t set at alle
9ar jee
5d (empty(9ar))
lle9aluates true' Length +d 9ars 9alue 5s '
e#h+ ef7rgT'mar 5s e5ther +r n+t at all sete
Page 67.
9ar je.kTe
5d (empty(9ar))
lle9aluates dalse
e#h+ ef7rgW' mar 5s e5ther +r n+t at all sete
unset(9ar)
5d (5sset(9ar)jjdalse) ll z5sset(9ar)
e#h+ ef7rg}' mar 5s n+t set +r unset()'e
else
e#h+ ef7rg}' mar9alue 5s 9are
5d (empty(9ar))
e#h+ ef7rg0' mar 5s e5ther +r n+t at all sete
g
U`t 9"= hiXn th_Y
.' mar 5s e5ther +r n+t at all set
T'mar 5s e5ther +r n+t at all set
}' mar 5s n+t set +r unset()'
0' mar 5s e5ther +r n+t at all set
C"c %iD2 dI li&2 trong H
%5Zng nh) #!# ngn ng lDp tr:nh1 tr+ng php #X #!# k5?u d l58u #4 76n nh) 5nteger (5nt)Y F_
d`ng hQu hOt #h+ #!# d l58u k5?u sZ nguyn1 d+u7le (dl+at) dung tr+ng l)u tr #!# sZ th#'
(g+a: #!# k5?u d l58u #4 76n ra1 php #yng #ung #"p #!# k5?u d l58u phV# tp h4n nh)
Ftr5ng1 ]ate1 Erray 9 w7e#t'
& FZ nguyn (Hnterger)Y F_ d`ng #h+ g5! tr #X k5?u d l58u l sZ nguyn
a j .kTW llFZ nguyn d)4ng
a j &.kT FZ Bm
ll FZ nguyn h8 +#tal (#4 sZ ) t)4ng )4ng sZ T #;a h8 #4 sZ .
a j .kT
ll T+ sZ hexade#5mal (t)4ng )4ng sZ . #4 sZ .)
a j x.k
& FZ th# (]+u7le)Y F_ d`ng #h+ #!# g5! tr #X k5?u l sZ th#'
mi d`Y
a j .'kTW a j .'keT
& M6ng (Erray)Y L)u tr mt tDp h*p #!# g5! tr'
& Ghu\5 (Ftr5ng)Y F_ d`ng #h+ #!# g5! tr l #hu\51 k2 t' Mt #hu\5 )*# 7a+ 735 #Kp
d"u nh!y 5 ( ) hay #Kp d"u nh!y 4n ( )'
mi d` k 75On F. 9 Fk #hVa k #hu\5Y
F. j Ftr5ng .
Fk j Ftr5ng k
& w7e#tY F_ d`ng #h+ #!# d l58u l Z5 t)*ng #;a lIp'
b5?u #;a 75On th)^ng khng )*# x!# nh 735 ng)^5 lDp tr:nh m nX )*# SuyOt nh t5
th^5 5?m #hy #h)4ng tr:nh 9 ph` thu# 9+ ng #6nh #;a 75On ang s_ d`ng'
<Z5 9I5 d l58u #hu\5 tr+ng ph=p t+!n sZ h[# th:Y
Page 68.
& bh5 #hu\5 l mt #hu\5 sZY Ghu\5 sc l mt sZ th# nOu #X #hVa k2 t '1 e1 hay n'
(Ou khng1 g5! tr l sZ nguyn'
& (Ou #hu\5 kh35 Qu 7sng d l58u sZ1 d l58u ny sc )*# s_ d`ng' (g)*# l51 g5! tr
)*# s_ d`ng l '
V d
d++ j . e.'}e ll d++ 5s d+u7le (..'})
d++ j . e&.'TeTe ll d++ 5s d+u7le (&.k//)
d++ j . e7+7&.'TeTe ll d++ 5s 5nteger (.)
d++ j . e7+7Te ll d++ 5s 5nteger (.)
d++ j . e. Fmall P5gse ll d++ 5s 5nteger (..)
d++ j . e. L5ttle P5gg5ese ll d++ 5s 5nteger (..)
d++ j e.' p5gs e . ll d++ 5s 5nteger (..)
d++ j e.' p5gs e .' ll d++ 5s d+u7le (..)
d++ j e.' p5gs e .' ll d++ 5s d+u7le (..)
C"c hJ7 %iD7 tra %iD2
<? k5?m tra k5?u #;a mt 75On1 #X th? s_ d`ng mt sZ hm 95Ot sn tr+ng ngn ng' G!# hm
ny tr6 9R #!# g5! tr 7++lean (true1 dalse)'
5sh5nt(s)Y b5?m tra 75On s #X ph65 l sZ nguyn hay khng'
5shdl+at(s)Y b5?m tra 75On s #X ph65 l 75On dl+at hay khng'
5shd+u7le(s)Y b5?m tra 75On s #X ph65 l 75On d+u7le hay
khng
5shstr5ng(s)Y b5?m tra 75On s #X ph65 l 75On str5ng hay khng
5sharray(s)Y b5?m tra 75On s #X ph65 l 75On array hay khng
Ch2KDn CLi %iD2
Tr+ng Su! tr:nh tinh t+!n 5 kh5 ta #Qn #huy?n U5 k5?u d l58u #h+ 75On' <? #huy?n U5 k5?u
d l58u #h+ mt 75On n+1 ta Kt tn k5?u d l58u tr)I# 75On X the+ #q ph!pY(tnk5?u)
tnh75On'
V dY
f
se#+nds j .}}
m5nutes j (5nt) (se#+nds l 0) ll Ghuy?n U5 sang sZ nguyn
e#h+ m5nutes llk
sjW ll s l k5?u nguyn
5d (5shdl+at(s)) e#h+ A5On s k5?u dl+at
else e#h+ A5On s khng ph65 k5?u dl+at
s j (dl+at)s
5d (5shdl+at(a)) e#h+ eA5On s k5?u dl+ate
g
HMng
Hsng sZ l 4n 9 l)u tr d l58u nh) 75On1 tuy nh5n g5! tr #;a hsng sc )*# g!n mt lQn 9
sc khng )*# thay U5' Hsng tr+ng PHP )*# nh ngha 735 hm ded5ne the+ #q ph!pY
ded5ne (str5ng tnhhsng1 g5!htrhhsng )'
<nh ngha mt hsng #yng nh) mt 75On' Tuy nh5n1 9I5 hsng th:Y
& bhng #X d"u 3 tr)I# tn hsng'
& Hsng #X th? truy #Dp 7"t #V 9 tri n+ m khng Suan tBm tI5 tQm 9# #;a nX'
Page 69.
& bhng th? g!n l5 g5! tr'
V d
fphp
l
<nh ngha mt hsng sZ #X tn l Gw(FTE(T 9 hsng ny )*# g!n
g5! tr l #hu\5 eHell+ N+rld'e
l
ded5ne (eGw(FTE(Te1 eHell+ N+rld'e)
e#h+ Gw(FTE(T ll +utputs eHell+ N+rld'e
ll<nh ngha hsng thV k tn PH 9 g!n g5! tr sZ th# l T'.W.0
ded5ne (ePHe1 T'.W.0)
e#h+ ef7rg]T h5nh tr+n 7an k5nh k laYe '(kkPH)
llwutputsY ]T h5nh tr+n 7an k5nh k laY.k'}00W
g
8.2 BiWN TFhZ &Fb THfJ
Gyng nh) #!# ngn ng lDp tr:nh kh!#1 tr+ng PHP #yng #X #!# ph=p t+!n #4 76n #h+ sZ h[#1
#!# ph=p t+!n l+g5#1 #!# ph=p t+!n tr+ng tha+ t!# #hu\51 m6ngp
c.2.1 CfZ &Fb THfJ SO HZ
Aa+ g@m #!# ph=p t+!n thng th)^ng tr+ng #!# ph=p t+!n m t+!n hng l #!# sZ' b2
h58u 9 2 ngha #!# ph=p t+!n )*# tr:nh 7y tr+ng 76ng d)I5Y
THfJ ] T[J Gif ]kc
ui\J
V^ TY .\] NL
Gng aj0
7j}
# j a 7 # j ..'
& Tr, # j a & 7 # j'.
(hBn # j a 7 # j T'
l Gh5a # j a l 7 # j .'k
L"y d) # j a 7 # j .
To!n t5 thao t!c tran ch"^iY T+!n t_ nZ5 #hu\5 (')Y ]ung ? nZ5 ha5 #hu\5'
mi d`Y
f
a j eHell+ e
7 j a ' e>+rldze ll n+N 7 j eHell+ >+rldze
g
HhMp to!n g!nY (j)Y ]ung ? g!n mt g5! tr1 mt 75?u thV# #h+ mt 75On
f
a j hell+z ll g!n #hu\5 Hell+z #h+ 75On a
Page 70.
a j (W }) l k ll %!n g5! tr 75?u thV# (W }) l k #h+ 75On a'
g
C!c phMp g!n $`t hFp
Ph=p t+!n mi d` L2 g565
a T)4ng )4ng a j a .
&& a&& T)4ng )4ng a j a & .
j a j 7 T)4ng )4ngY a j a 7
&j a &j 7 T)4ng )4ngY a j a & 7
j a j 7 T)4ng )4ngY a j a 7
lj a lj 7 T)4ng )4ngY a j a l 7
j a j 7 T)4ng )4ngY a j a 7
'j a 'j 7 T)4ng )4ngY a j a ' 7
V d
f
a j T
7 j a ll a j W1 7 j T
7 j 0
# j 7la ll # j .'}
# j (5nt ) # ll # j .
7 lj a ll 7 j .'}
# j a7# ' (a k) ll # j a7#0
g
c.2.2 CfZ &Fb THfJ LHPiZ
Ph=p t+!n tha+ t!# trn #!# t+!n hng k5?u 7++lean 9 tr6 9R mt g5! tr 7++lean (true hay
dalse)'
Ghq 2Y tr+ng #!# ph=p t+!n l+g5#1 s+ s!nh1 #!# g5! tr (9I5 sZ) 9 r\ng (& 9I5 #hu\5) t)4ng
Vng 9I5 gia tr dalse1 ng)*# l51 #hqng #X g5! tr true'
&Fb ]HfJT[J Gif ]kc V^ TY L PiLi .\] NL
and End ajtrue
7jdalse
a and 7 True nOu #6 k a 9 7 Ru
qng'
dalse
+r wr a +r 7 True nOu a h+K# 7 qng' true
x+r xwr a x+r 7 True nOu mt tr+ng k g5! tr a
h+K# 7 qng
true
Page 71.
z (+t z a True nOu a dalse' dalse
End a 7 True nOu #6 k a 9 7 Ru
qng
dalse
wr a 7 True nOu a h+K# 7 qng' true
c.2. &Fb THfJ SH SfJF
&Fb
]HfJ
T[J Gif ]kc V^ TY L PiLi .\] NL
j j F+ s!nh 7sng
a j true
7 j dalse
a jj . True nOu a 7sng 7 true
j j j F+ s!nh 7sng a jjj. %5Zng jjj nh)ng #hC s_
d`ng #h+ #ung k5?u d
l58u'
dalse
zj F+ s!nh kh!# a j }
7 j 0
a zj 7 True nOu a kh!# 7' true
f F+ s!nh nhv
h4n
af 7 True nOu a nhv h4n 7' true
g F+ s!nh lIn h4n a g 7 True nOu a lIn h4n 7' dalse
fj F+ s!nh nhv
h4n hay 7sng
a fj 7 True nOu a nhv h4n hay
7sng 7'
true
gj F+ s!nh lIn h4n
ha 7sng
a gj 7 True nOu a lIn h4n hay
7sng 7'
dalse
c.2.6 &Fb THfJ g
Gq ph!pY BiX" thCc logic BiX" thCc SY BiX" thCc Tb
Ta th)^ng s_ d`ng ph=p t+!n ny thay #h+ ph!t 75?u 5d1 else' Ph=p t+!n nhDn <iX" thCc logic'
(Ou 75?u thV# ny qng1 g5! tr #;a <iX" thCc S )*# tr6 9R1 ng)*# l51 g5! tr <iX" thCc T
)*# tr6 9R'
f
a j W 7j}
# j (ag7) (a 'e L+n h+n ' 7e)Y (a ' e kh+ng l+n h+n e' 7)
e#h+ # llu"t #BuY W kh+ng l+n h+n }
g
c.2.> &Fb THfJ EkkHkg
Php #ung #"p ph=p t+!n 5Ru kh5?n mt 75?u thV# kh5 l\5 x6y ra l ph=p t+!n ' bh5 Kt k2
h58u ny tr)I# 75?u thV#1 7"t #V l\5 n+ ph!t s5nh 735 75?u thV# sc 7 l^ 5 m khng h5?n th
#!# l\5 xu"t h58n #;a h8 thZng'
Ta x=t k 9i d` a 9 7 3 sau' 9i d` 71 ta s_ d`ng ph=p t+!n err+r ? tr!nh 5n l\5 h8 thZng
On ng)^5 s_ d`ng'
a 7'
Page 72.
fphp fphp
a j a j
7 j W 7 j W
# j 7 l a # j (7 l a)
e#h+ e%5a tr5 #ua # la Y #e e#h+ e%5a tr5 #ua # la Y #e
e#h+ ef7rgL+5 #h5a #h+ 'e e#h+ ef7rgL+5 #h5a #h+ 'e
g g
Ta #yng hay s_ d`ng ph=p t+!n ny tr+ng kOt nZ5 tI5 GF]L'
fphp
res j mysSlhSuery (esele#t name1 #+de dr+m namel5ste1 #+nn) +r
d5e (euery da5lede)
g
GBu truy 9"n 7 l\51 #h)4ng tr:nh sc h5?n th +n 9-n 76n tr+ng d5e l euery da5led'
8.3 CfZ &Ff] BiWN
c..1 &Ff] BiWN TN}J T~
G!# #Bu l8nh tr+ng php )*# th# th5 tuQn t t, trn xuZng d)I5' Mt tDp h*p #!# #Bu l8nh
Kt tr+ng #Kp d"u g[5 l mt khZ5 l8nh' bhZ5 l8nh #yng )*# xem nh) mt #Bu l8nh 4n'
c..2 &Ff] BiWN )inN .iVJ
Hh!t <iX" *i+" $iQn i1Y
L mt tr+ng nhng #"u trq# Suan tr[ng tr+ng #!# ngn ng lDp tr:nh' Tr+ng php1 #"u trq#
ny ta nh) ngn ng G'
Gq ph!p
i1 EBiX"LthCcLcUR
Sb
L8nh F sc )*# th5 hnh nOu BiX"LthCcLcU #X g5! tr true' BiX"LthCcLcU l mt 75?u thV#
5Ru k58n sc tr6 9R #!# g5! tr 7++lean' F l #!# #Bu l8nh 4n hay #!# #Bu l8nh k=p'
5d (a g 7) e#h+ ea 5s 75gger than 7e
sc 5n ra mn h:nh #Bu ea 5s 75gger than 7e nOu g5! tr #;a 75On a lIn h4n g5! tr #;a 75On 7'
BiX" thCc *i+" $iQn i1]]]else
i1 EBiX"LthCcLcUR
SSb
else
STb
Page 73.
(Ou BiX"LthCcLcU qng1 F. )*# th5 hnh1 ng)*# l5 (BiX"LthCcLcU sa5)1 Fk )*# th5 hnh'
F. 9 Fk l #!# #Bu l8nh 4n hay khZ5 l8nh'
BiX" thCc *i+" $iQn d
Wlsei1Y bOt h*p g5a 5d 9 else'
5d (BiX"LthCcLcULS)
F.
else5d (BiX"LthCcLcULT)
Fk
else FT
(Ou 75?u BiX"LthCcLcULS qng1 F. )*# th5 hnh1 ng)*# l5 nOu BiX"LthCcLcULT qng th:
Fk )*# th5 hnh1 ng)*# l5 FT )*# th5 hnh' <By #hinh l #!#h 95Ot kh!# #;a 75?u thV#
5d''else l@ng nhauY
5d (BiX"LthCcLcULS)
F.
else
5d (BiX"LthCcLcULT)
Fk
else FT
#ase g5!trh.Y F
.
7reak
#ase g5!trhkY F
k
7reak
#aseY g5! trhnY F
n
7reak
dedaulY F
n.
b5?m tra 75On1 nOu 75On 7sng g5! tr gi!tr_Li (5j. '' n) sc th5 hnh l8nh (hay khZ5 l8nh F
5
'
(g)*# l51 sc th5 hnh l8nh F
n.
' Fau m\5 #Bu l8nh F51 ta s_ d`ng ph!t 75?u 7reak ? th+!t
khv5 sN5t#h' (Ou khng #X 7reak sau l8nh F51 #h)4ng tr:nh sc th5 hnh l8nh F
5.
kh5 M th5
hnh F
5
'
V dY F_ d`ng #6 ha5 ph!t 75?u 5d 9 sN5t#h #h+ #ung mt 75 t+!n'
f
5 j k
5d (5 jj )
pr5nt e5 eSuals e
5d (5 jj .)
pr5nt e5 eSuals .e
5d (5 jj k)
pr5nt e5 eSuals ke
g
(Ou thay [an mM trn 7sng
f
5j.
sN5t#h (5)
#ase Y
pr5nt ef7rg5 eSuals e
#ase .Y
pr5nt ef7rg5 eSuals .e
#ase kY
pr5nt ef7rg5 eSuals ke
dedaultY pr5nt ef7rg5 5s n+t eSual t+ 1 . +r ke
g
bOt Su6 sc 5n ra T dLngY
Page 75.
5 eSuals .
5 eSuals k
5 5s n+t eSual t+ 1 . +r k
c.. CfZ &Ff] BiWN Lb
%5Zng nh) ngn ng #1 php #yng #ung #"p #!# ph!t 75?u lKp d+r1 Nh5le1 d+ '' Nh5le ? #h+
ph=p thV# th5 lKp l5 #!# #Bu l8nh'
VOng lPp 1or
Th)^ng s_ d`ng tr+ng #!# ph!t 75?u lKp 75Ot tr)I# sZ lQn lKp' GX #"u trq# #q ph!p nh) sauY
d+r (expr. exprk exprT) F
Tr+ng X expr. exprk exprT l #!# 75?u thV#'
FY l #!# #Bu l8nh'
Th# th5 9Lng lKp ny1 expr. )*# th# th5 tr)I# t5n 9 duy nh"t mt lQn' Th)^ng By l
75?u thV# ? g!n g5! tr #h+ 75On lKp' Art Qu 3 m\5 9Lng lKp1 exprk )*# th5 hnh' (Ou g5! tr
tr6 9R #;a 75?u thq# ny l dalse1 9Lng lKp d,ng' (Ou g5! tr tr6 9R l true1 l8nh F )*# th5
hnh' GuZ5 #ung th: exprT )*# th5 hnh' Thng th)^ng By l 75?u thV# thay U5 75On 5Ru
kh5?n tr+ng 9Lng lKp' G!# 75?u thV# 3 trn #X th? r\ng1 kh5 X ta #X th? s_ d`ng t+!n t_ 7reak
? th+!t khv5 9Lng lKp'
V dY Fau s_ d`ng 9Lng lKp d+r ? h5?n th 76ng #_u #h)4ng 0'
f
n j 0
F j efta7le 7+rderj.ge
F 'jeftrgftd #+lspanjTg A6ng #_u #h)4ng n fltdgfltrge
d+r(5j. 5fj. 5)
F 'j eflta7lege
e#h+ F
g
mLng lKp #yng #X th? l@ng nhau' mi d` sau sc 5n ra 76ng #_u #h)4ng t, k On }
f7+dyg
fta7le 7g#+l+rjedae7degftrg
f
d+r(nj k nfj} n)
g
ftdgf
F j efta7le 7+rderj.ge
F 'jeftrgftd #+lspanjTg A6ng #_u #h)4ng n fltdgfltrge
Page 76.
d+r(5j. 5fj. 5)
F 'jeftrgftdg e 'n 'efltdge
F 'jeftdg e '5 'efltdge
F 'jeftdg e '(n5) 'efltdge
F 'j eflta7lege
e#h+ F
gfltdg
f
gfltrgflta7leg
fl7+dyg
bOt Su6 nhDn )*# t, h5?n th #;a tr:nh duy8tY
A6ng #_u #h)4ng k
k . k
k k W
k T 0
k W
k } .
k 0 .k
k .W
k .0
k / .
k . k
A6ng #_u #h)4ng T
T . T
T k 0
T T /
T W .k
T } .}
T 0 .
T k.
T kW
T / k
T . T
A6ng #_u #h)4ng W
W . W
W k
W T .k
W W .0
W } k
W 0 kW
W k
W Tk
W / T0
W . W
A6ng #_u #h)4ng }
} . }
} k .
} T .}
} W k
} } k}
} 0 T
} T}
} W
} / W}
} . }
VOng lPp Ihile
Gq ph!pY
Nh5le (<iX"LthCcLcU)
F
Th5 hnh l8nh (hay khZ5 l8nh) F tr+ng kh5 <iX"LthCcLcU #Ln nhDn g5! tr true' Ta th)^ng
s_ d`ng 9Lng lKp ny tr+ng #!# 75?u thV# m #h)a x!# nh sZ lQn lKp l5 #;a F'
VOng lPp do ]]IhileY
Gq ph!pY
d+
F
Nh5le(<iX"LthCcLcU)
Page 77.
%5Zng nh) 9Lng lKp Nh5le1 tuy nh5n 9Lng lKp ny sc k5?m tra <iX"LthCcLcU sau kh5 M th#
th5 x+ng F' (h) 9Dy1 9I5 9Lng lKp ny1 F lun lun )*# th5 hnh'
Tr+ng #!# 9Lng lKp d+r1 Nh5le1 d+''Nh5le1 ta #yng #X th? s_ d`ng 7reak ? th+!t ra khv5 9Lng
lKp'
G!# 9Lng lKp #yng th)^ng )*# s_ d`ng tr+ng #!# 75 t+!n duy8t Sua #!# phQn t_ m6ng1
#hu\5 hay #!# truy 9"n sele#t tr+ng #4 s3 d l58u'
Page 78.
Bi s HDM &D ,t $uNG LvL Mw
9.1 TIH Hw TkHJP &Fb
Ta nn t+ #!# hm 9I5 l2 d+Y <? t-ng tinh nh"t Su!n1 t5n #Dy1 g56m th^5 g5an 95Ot mM 9
t-ng tinh mRm dJ+ #h+ #h)4ng tr:nh'
Tr+ng php1 hm (#X g5! tr tr6 9R) 9 th; t`# (khng #X g5! tr tr6 9R) Ru )*# g[5 #hung l
hm' <nh ngha mt hm )*# xBy dng 735 ng)^5 s_ d`ng nh) sauY
dun#t5+n tnhm(thamsZ .1 tham sZ k1 ''')
d+r(5jk 5fnum 5)
5d (num 5jj) return dalse
return true
5jk
nt+ j .
Nh5le (5fnum)
5d (num 5jj)
Page 79.
nt+ j
7reak llTh+!t khv5 Nh5le
5
5d (nt+) e#h+ e e 'num
9alue j .
e#h+ fpgTr+ng l+#al1 9alue #+ g5a tr5 la Y 9alue
dun#t5+n gl+7alun#()
gl+7al 9alue
e#h+ fpgTr+ng %l+7al1 9alue #+ g5a tr5 la Y 9alue
9alue j }
e#h+ fpg.'%tr5 75en 9alue j ' 9alue
l+#alun#()
e#h+ fpgk'%tr5 75en 9alue j ' 9alue
gl+7alun#()
e#h+ fpgT' %tr5 75en 9alue j ' 9alue
g
U`t 9"=Y
Page 81.
.' %tr5 75en 9alue j }
Tr+ng l+#al1 9alue #+ g5a tr5 laY .
k'%tr5 75en 9alue j}
%l+7al1 9alue #+ g5a tr5 la Y}
T' %tr5 75en 9alue j }
9.5 CFJ CfZ FiSq VH TkGJP tqu
<? s_ d`ng l5 mM tr+ng nh5Ru trang Ne7 (#!# s#r5pt)1 ta th)^ng 95Ot #!# hm1 nh
ngha #!# hsng hay #!# +n mM 9 l)u 9+ mt d5le r5ng' bh5 X1 mt trang php n+
#Qn s_ d`ng #!# +n mM M 95Ot1 #X th? #h~n 9+ 9 tri #Qn th5Ot' <? #h~n mt d5le #X
sn 9+ trang Ne71 ta s_ d`ng mt tr+ng 7Zn #Bu l8nh sauY 5n#lude (d5lename)1
reSu5re 1 5n#ludeh+n#e1 reSu5reh+n#e'
mi d`Y f Hn#lude (dun#t5+ns'php) g sc #h~n d5le dun#t5+ns'php t, #ung th) m`# 9I5
trang ang 95Ot 9+ ngay 9 tri Kt l8nh 5n#lude'
mi d`Y #X d5le 5n#luded5le'php #X n5 dung
fphp
e#h+ x+u ha9e 5n#luded a d5le
g
T+ d5le ma5nd5le'php #X n5 dung'
fphp
5n#lude 5n#luded5le'php
e#h+ H sh+uld ha9e 5n#luded a d5le'
g
5le mainfile.php t)4ng )4ng 9I5 d5le #X n5 dungY
fphp
e#h+ x+u ha9e 5n#luded a d5le
e#h+ H sh+uld ha9e 5n#luded a d5le'
g
bh!# 758t g5a 5n#lude1 5n#ludeh+n#e1 reSu5re1 reSu5reh+n#e
& 5n#ludeY <[# d5le 1ilena2e 9+ ngay t5 9 tri #Bu l8nh' Tr)^ng tr)^ng h*p khng t:m
th"y d5le d5lename1 Gh)4n tr:nh ph!t ra #6nh 7!+ nh)ng 9tn t5Op t`# th# th5 #!# #Bu
l8nh sau 5n#lude'
& oeSu5reY Th# th5 g5Zng 5n#lude1 tuy nh5n kh5 khng t:m th"y d5lename1
#h)4ng tr:nh sc khng t5Op t`# th# th5 #!# #Bu l8nh t5Op the+'
& reSu5reh+n#e 9 5n#ludeh+n#e: Lm vic ging nh require v include nhng
n ch! cho ph"p filename ch! #$c ch%n vo trang we& m't l(n.
Page 82.
Bi 1; LM VI#C V"I .I<$ D LI#$ M=NG
10.1 1hai B!/ & T%/ M(ng
Tr:nh 7y #!#h xBy dng mt m6ng d l58u1 tha+ t!# trn #!# phQn t_ #;a m6ng 9 x_ l2
m6ng' M6ng l 75On d l58u l)u tr tDp h*p d l58u g@m nh5Ru phQn t_1 m\5 phQn t_ #hVa #!#
g5! tr l text1 num7er hay mt m6ng kh!#' Tr+ng mt m6ng1 m\5 phQn t_ #X th? #hVa #!# d
l58u #X k5?u kh!# nhau' M\5 phQn t_ tr+ng m6ng #X mt #hC m`# (5ndex1 key) 9 g5! tr
(9alue) #;a phQn t_ X tr+ng m6ng'
<? kha5 7!+ m6ng1 ta #X th? s_ d`ng mt tr+ng #!# #q ph!p sauY
C!ch SY Errh9ar j array(g5! tr .1 g5! tr k1 p1 g5! tr n)
T+ mt m6ng Errh9ar #X n phQn t_' PhQn t_ 3 #hC sZ #X g5! tr l textY g5! tr . 9 phQn
t_ 3 #hC sZ n&. #X g5! tr l g5! tr n' mI5 m6ng ny1 #hC m`# Qu t5n l 9 g5! tr #;a phQn
t_ thV l g5! tr .'
C!ch TY Errh9ar j array(k jg %5! tr .1 a j g.k1 pt jg%5! tr T)
PhQn t_ Qu t5n #;a m6ng #X #hC m`# l k 9 g5! tr phQn t_ #hC m`# ny l g5! tr .1 phQn
t_ #hC m`# a #X g5! tr l sZ nguyn .k1 p' M6ng #X #!# $ey l #hu\5 #Ln g[5 l m6ng kOt
h*p'
C!ch dY AkkjGk GkkG?(J
T+ m6ng #X n phQn t_' Tr+ng X n l mt 75On hay hsng'
10.2 TkN? C{b MLJP
Truy #Dp On mt phQn t_ tr+ng m6ng1 ta s_ d`ng t+!n t_ ' mi d`1 truy #Dp On phQn t_ #X
#hC sZ l)u tr+ng 75On 5 tr+ng m6ng E l E5' <? duy8t Sua #!# g5! tr #;a mt m6ng M 75Ot
tr)I# sZ phQn t_ 9 #!# phQn t_ #;a m6ng #X #hC sZ the+ thV t t, 1 .1 p1 ta #X th? s_ d`ng
9Lng lKp d+r' mi d` sau sc s_ d`ng k 9Lng lKp d+r ? g!n d l58u #h+ m6ng 9 truy xu"t 5n d
l58u ln mn h:nh'
fphp
llT+ m6ng 9 g!n g5! tr #h+ m6ng'
n j .
Errh9ar j array(n)
d+r (5 j 5fn 5)
Errh9ar5 j (5 .) k
ll H5?n th #!# g5! tr #;a m6ng'
d+r (5 j 5fn 5)
e#h+ phQn t_ thV 5 Y 'Errh9ar5 ' f7rg
g
Page 83.
Ta #yng #X th? s_ d`ng #q ph!p d+rea#h hay 9Lng lKp Nh5le1 kOt h*p 9I5 hm ea#h()' Gq
ph!p truy #Dp nh) sauY
& F_ d`ng 9Lng lKp d+rea#hY
Gq ph!pY
1oreach EarrayLeGpression as eval"eR state2ent
1oreach EarrayLeGpression as e$ey fg eval"eR state2ent
mi d`Y
fphp
arr j array(e+nee1 etN+e1 ethreee)
d+rea#h(arr as 9alue)
e#h+ emalueY 9aluef7r lgne
g
fphp
arr j array(e+nee1 etN+e1 ethreee)
d+rea#h (arr as key jg 9alue)
e#h+ ebeyY key malueY 9aluef7r lgne
g
mI5 m\5 9Lng lKp sc duy8t Sua t,ng phQn t_ #;a m6ng' #q ph!p Qu1 #!# g5! tr #;a m6ng
)*# duy8t Sua 9 g!n #h+ 75On 9alue' 9Lng lKp sau1 #h)4ng tr:nh sc tr6 9R #6 ha5 g5! tr
tr+ng mt phQn t_ m6ngY #hC sZ (key1 5ndex) 9 g5! tr #;a phQn t_' GhC sZ sc g!n #h+ 75On
key 9 g5! tr g!n #h+ 75On 9alue'
& F_ d`ng 9Lng lKp Nh5leY
mi d`Y
fphp
arr j array(e+neejg.1 etN+ejgk1 ethreeejgT)
Nh5le (l5st(1 9alue) j ea#h (arr))
e#h+ emalueY 9aluef7r lgne
oeset(arr)
e#h+ efhrge
Nh5le (l5st(k1 9)jea#h(arr))
g
bOt Su6Y
Page 84.
malueY .
malueY k
malueY T
bey j +ne & 9aluej.
bey j tN+ & 9aluejk
bey j three & 9aluejT
Hw array eachEeArrR sc tr6 m6ng #hVa k phQn t_ l #Kp keyl9alue (kh+! &#hC sZlg5! tr)
#;a mt phQn t_ m6ng Err 9 #huy?n 9 tri #+n trv m6ng arr tI5 phQn t_ kO t5Op' Ta #X th?
truy #Dp #hC sZ 9 g5! tr Sua tn #;a 75On nhDn g5! tr tr6 9R markey 9 mar9alue'
Hm listEevS& evT& hRY <)*# g!n g5! tr l mt m6ng' bh5 X1 #!# 75On 9.1 9k lQn l)*t nhDn
#!# g5! tr #;a phQn t_ thV nh"t1 k1 p #;a m6ng )*# g!n the+ thV t'
V d
fphp
llT+ m6ng 9 g!n g5! tr #h+ m6ng'
n j .
Errh9ar j array(n)
d+r (5 j 5fn 5)
Errh9ar5 j (5 .) k
ll H5?n th #!# g5! tr #;a m6ng'
e#h+ beysY 9alues f7rg
Nh5le (5 j ea#h(Errh9ar)
e#h+ 5key
e#h+
e#h+ 59alue
e#h+ f7rg
g
mi d` d`ng hm l5st ? nhDn #!# g5! tr key 9 9alue t, hm ea#h()' l5st(9ar.1 9ark) j
ea#h(Errh9ar)1 kh5 X 9ar. sc nhDn g5! tr key 9 9ark sc nhDn 9alue' Ta 95Ot l5 9i d` trn
nh) sau'
fphp
d+r (5 j 5fn 5)
Errh9ar5 j (5 .) k
ll H5?n th #!# g5! tr #;a m6ng'
e#h+ beysY 9alues f7rg
Nh5le (l5st(keyh9ar1 9alueh9ar) j ea#h(Errh9ar)
e#h+ keyh9ar
e#h+
e#h+ 9alueh9ar
e#h+ f7rg
g
Page 85.
10.3 MLJP 2 CFinN
M\5 phQn t_ #;a m6ng l mt m6ng mt #h5Ru' Ta #X th? s_ d`ng #q ph!p kha5 7!+ m6ng k
#h5Ru nh) 9i d` sauY
Errh9ar j array( array(pt_ 1 pt_ .1 pt_ k)1
array(.1 ..1 pt_ .k)1
array(k1 k.1 kk) )
T+ m6ng k #h5Ru (T x T)' Truy #Dp On phQn t_ (51 ) #;a m6ng k #h5Ru Errh9ar l Errh9ar5
' mDy Errh9ar.k sc #X g5! tr l #hu\5 pt_ .k' <? truy #Dp On #!# phQn t_ #;a m6ng
tr+ng m6ng k #h5Ru1 ta #X th? s_ d`ng 9Lng lKp nh) 9d`Y
fphp
Errh9ar j array( array(ept e1 ept .e1 ept ke)1
array(.1 ..1 ept .ke)1 array(k1 k.1 kk) )
d+r (5j 5fT 5)
d+r (j fT )
e#h+ Errh9ar5 ' e & e
e#h+ ef7rge
e#h+ efhrge
d+r (5j 5fT 5)
d+r (j fT )
Errh9ar5 j emalues e ' 5 ' e1e '
d+r (j fT )
e#h+ Errh9ar5 ' e & e
e#h+ ef7rge
g
H+K# m6ng k #h5Ru l)u #!# mu ? 9c 7n #^
fphp
E j array()
d+r(5j 5f 5)
d+r(j f )
5d ((5)kjj) E5je7luee
else E5jerede
H j T
> j T
e#h+ efta7le 7+rderj.ge
Page 86.
d+r(5j 5f 5)
e#h+ eftrge
d+r(j f )
e#h+ eftd He5ghtjH >5dthj > 7g#+l+rje' E5
e#h+eg fltdge
e#h+ efltrge
e#h+ eflta7lege
g
Gyng g5Zng nh) m6ng . #h5Ru1 #!# phQn t_ m6ng k #h5Ru #yng #X th? t+ 9 truy #Dp the+ #hC
m`#'
V d
fphp
dru5ts j array( edru5tse jg rray(eaejge+rangee1e7ejge7ananae1e#ejgeapplee)1
enum7erse jg array(.1 k1 T1 W1 }1 0)1
eh+lese jg array(ed5rste1 } jg ese#+nde1 eth5rde))
Nh5le (5 j ea#h(dru5ts))
g
bOt Su6 h5?n th trn mn h:nh lY
1r"its
aforange <f<anana cfapple
n"2<ers
ifS SfT Tfd dfj jfk kfl
holes
if1irst kfsecond lfthird
10.4 $i2 Tra. H3 M4t Phn T! Tr&ng Mng
Mt phQn t_ #;a m6ng tr+ng php )*# xem g5Zng nh) mt 75On 9 d+ 9Dy ta #X th? s_ d`ng
hm k5?m tra s t@n t5 #;a mt 75On 9 hm h;y mt 75On tr+ng m6ng'
V d
f
#art j array(eae jg .1 e7e jg T1 e#e jg k)
llpr5nt array #art
pr5nthr(#art)
l
Page 87.
b5em tra neu phQn t_ d M #X tr+ng m6ng1 #ng d@n g5! tr ln .1 ng)*5 l51 g!n (#h)a #X1
t+ mI5 phQn t_ d) phQn t_ #artd 7sng .'
l
5d (5sset(#artede))
#artede j #artede .
else
#artede j .
pr5nthr(#art)
llH;y phQn t_ a
unset(#arteae)
pr5nthr(#art)
g
Ta th)^ng dung hm pr5nthr(9ar) hay 9arhdump(9ar) ? 5n ra #"u trq# #;a m6ng 9ar'
10.5 Sb M\b MLJP
1x.>.1 Sb M\b TFqH CF SOg
& Hm ks+rt 9 krs+rt
ks+rt ( array)Y Hm srp xOp m6ng array the+ #hC sZ t-ng dQn' (g)*# l51 hm krs+rt srp sOp
m6ng array the+ #hC sZ g56m dQn'
V d S]
fphp
dru5ts j array(edejgelem+ne1 eaejge+rangee1 e7ejge7ananae1 e#ejgeapplee)
ks+rt(dru5ts)
reset(dru5ts)
Nh5le (l5st(key1 9al) j ea#h(dru5ts))
e#h+ ekey j 9alne
g
bOt Su6 h5?n thY
a j +range
7 j 7anana
# j apple
d j lem+n
V d T
fphp
dru5ts j array(edejgelem+ne1 eaejge+rangee1 e7ejge7ananae1 e#ejgeapplee)
krs+rt(dru5ts)
Nh5le (l5st(key1 9al) j ea#h(dru5ts))
e#h+ ekey j 9alne
g
H5?n th
Page 88.
d j lem+n
# j apple
7 j 7anana
a j +range
1x.>.2 Sb M\b TFqH Gif Tkc V Gi NPN?[J CF SO
Hm as+rt(array)Y srp xOp m6ng t-ng the+ g5! tr nh)ng 9tn g5 nguyn #hC sZ t)4ng Vng #;a
m6ng 9I5 g5! tr X'
fphp
dru5ts j array(ede jg elem+ne1 eae jg e+rangee1 e7e jg e7ananae1 e#e jg eapplee)
as+rt(dru5ts)
Nh5le (l5st(key1 9al) j ea#h(dru5ts))
e#h+ ekey j 9alne
g
bOt Su6Y
# j apple
7 j 7anana
d j lem+n
a j +range
Hm ars+rt(array)Y %5Zng hm as+rt() nh)ng thV t_ srp xOp l g56m dQn'
1x.>. Sb M\b TFqH Gif Tkc V LHIi B CF SO
F_ d`ng hm s+rt(array) 9 rs+rt(array) ? srp xOp g5! tr #;a m6ng array nh)ng l+5 7v #!#
#hC sZ kOt h*p 9I5 phQn t_ X' M6ng t+ thnh X g5! tr #!# #hC sZ 7rt Qu t, 1 .1p
V d
fphp
dru5ts j array(edejgelem+ne1 eaejge+rangee1 e7ejge7ananae1 e#ejgeapplee)
s+rt(dru5ts)
Nh5le (l5st(key1 9al) j ea#h(dru5ts))
e#h+ ekey j 9alne
g
bOt Su6Y
j apple
. j 7anana
k j lem+n
T j +range
Page 89.
10.6 Md] SO Hw TFJP DYJP Tk[J MLJP
& iJ] RiqHo(GkkG? AY Tr6 9R sZ phQn t_ #;a m6ng E
& iJ] ZHNJ] (wiqT jGkY Tr6 9R sZ phQn t_ #;a 9ar' Hm ny sc tr6 9R g5! tr . nOu 9ar
khng ph65 l mt m6ng1 tr6 9R g5! tr nOu 9ar #h)a )*# kh35 t+ hay m6ng 9ar l
r\ng' ]+ 9Dy1 ? k5?m tra 9ar M kh35 t+ #h5a1 ta #X th? dung hm 5sset() ? k5?m tra'
& kqRq] (AkkG?jGkY Hm #huy?n #+n trv tr3 9R phQn t_ Qu t5n #;a 75On m6ng
Errayh9ar'
& bkqj (AkkG?jGkY Tr6 9R 9 tri #+n trv 3 phQn t_ tr)I# s+ 9I5 9 tri h58n t5 #;a 75On
#+n trv duy8t m6ng Errayh9ar 9 tr6 9R dalse nOu ang 3 9 tri Qu t5n'
& qJT (AkkG?jGkYGhuy?n On phQn t_ #+n trv #uZ5 #ung tr+ng m6ng Errayh9ar'
& Jq] (AkkG?jGkY Tr6 9R 9 tri #+n trv 3 phQn t_ sau s+ 9I5 9 tri h58n t5 #;a 75On
#+n trv duy8t m6ng Errayh9ar 9 tr6 9R dalse nOu ang 3 9 tri #uZ5 #ung h+K# m6ng
r\ng'
& GkkG?RNw(AkkG?jGkY Tr6 9? tUng #!# phQn t_ tr+ng m6ng
Page 90.
Bi 11 LDM &L[C &ZL CH\yL
11.1 GiUi TFiVN
%5Zng nh) #!# ngn ng s#r5pt kh!#1 #hu\5 l l+5 d l58u thng d`ng nh"t tr+ng PHP1 9 9:
9Dy PHP #yng #X r"t nh5Ru dun#t5+n x_ l2 #hu\5 r"t tZt' Ghu\5 tr+ng php l mt tDp h*p #!# k2
t1 m\5 k2 t l mt 7yte' Mt hsng #hu\5 tr+ng php )*# g!n tr# t5Op #h+ mt 75On 7sng
#!# #!#h sauY
& F_ d`ng #Kp d"u nh!y k=pY 9arstr5ng j ea7#de
& F_ d`ng #Kp d"u nh!y 4nY 9arstr5ng j a7#d
& F_ d`ng #q ph!p hered+#Y
fphp
str j fffnw]
nxample +d str5ng
spann5ng mult5ple l5nes
us5ng hered+# syntax'
nw]
g
11.2 N@i Ch2<i ,J C"c /5 T$ ?c Oi&t Trong Ch2<i
& Ph=p t+!n nZ5 #hu\5Y d"u #h"m (')Y (Z5 nh5Ru #hu\5 thnh #hu\5 lIn h4n'
mi d`Y
s. j a7#
sk j ed ' s. '.kT
Pr5nt sk
& G!# k2 t K# 758t tr+ng #hu\5Y
mI5 mt #hu\5 hsng )*# 7a+ tr+ng #Kp d"u nh!y k=p (d+u7le&Su+tes (e))1 php #ung #"p
k2 t ? x_ l2 #!# k2 t K# 758t' G` th? nh) sauY
n b2 t xuZng dLng
r Tr3 9R Qu dLng
t b2 t ta7
7a#kslash
d+llar s5gn
e d+u7le&Su+te
mI5 #hu\5 )*# t+ 7sng #Kp d"u nh!y k=p1 ta #Ln #X th? s_ d`ng n5 suy 75On tr+ng #hu\51
r"t thuDn l*5 tr+ng #!# truy 9"n sSl m khng #Qn m3 Xng #hu\5 nh5Ru'
mi d`Y
f
Page 91.
s. jeHe sa5dY eHts a 7++kee
pr5nt s.
sk j efa hredjetest'phpeg Test flagnf7rg e
pr5nt sk
sT j e%5a tr5 s.js. 9 skjske
pr5nt sT
g
11.3 So S"nh Ch2<i
GX th? dung t+!n t_ s+ s!nh j j (7sng)1 zj1 f1 fj1 g1 gj1 jjj? s+ s!nh #!# #hu\5' (g+5 ra1
ta #Ln #X mt sZ ph)4ng thV# s+ s!nh #hu\5 nh) sauY
& G!# hm R]kZwb( R]kZGRqZwb( R]kJG]Zwb( sc s+ s!nh #!# #hu\5 the+ ph=p s+
s!nh t 5?n'
& Hm iJ] R]kZwb(R]kiJP S1 R]kiJP S2Y F+ s!nh k #hu\5 F.1 Fk #X phBn 758t
h+alth)^ng' Hm ny tr6 9R g5! tr g nOu F.gFk1 nOu F.jFk 9 g5! tr f nOu
F.fFk' (X5 #hung hm ny #X th? s_ d`ng g5Zng t+!n t_ s+ s!nh tr+ng 75?u thV#'
& Hm iJ] R]kZGRqZwb(R]kiJP S1 R]kiJP S2Y %5Zng hm str#mp() nh)ng khng phBn
758t #h h+a 9 #h th)^ng'
V d
f
9ar. j eHell+e
9ark j ehell+e
e#h+ Length 9ar.Y ' strlen(9ar.)
5d (zstr#ase#mp (9ar.1 9ark))
e#h+ 9ar. j 9ark 5n a #ase&5nsens5t59e
5d (str#mp(9ar.1 9ark) g)
e#h+ 9ar. g 9ark
5d (str#mp(9ar.1 9ark) f)
e#h+ 9ar. f 9ark
5d (str#mp(9ar.1 9ark) jj)
e#h+ 9ar. j 9ark
g
U`t 9"= hiXn th_Y
Length 'ellok
'ello f hello in a caseminsensitive
'ello n hello
11.4 T*o Ch2<i ConP TF7 ,J ThaK Th0 Ch2<i Con O=n Trong Ch2<i Cha
Hm t+ #hu\5 #+nYHm R]kiJP RNuR]k (R]kiJP S iJ] R]Gk] iJ] SqJP]FY tr6 9R #hu\5 #+n
)*# thnh lDp t_ #hu\5 F 9I5 #!# tham sZ start 9 length' (Ou start gjY sc tr6 9R #hu\5 7rt
Qu t, 9 tri start tr+ng F'
V dY
Page 92.
f
rest j su7str (ea7#dede1 .) ll returns e7#dede
rest j su7str (ea7#dede1 .1 T) ll returns e7#de
g
(Ou start fY sc tr6 9R #hu\5 7rt Qu t, 9 tri start #;a F tinh t, #uZ5 #hu\5'
f
rest j su7str (ea7#dede1 &.) ll returns ede
rest j su7str (ea7#dede1 &k) ll returns eede
rest j su7str (ea7#dede1 &T1 .) ll returns ede
g
(Ou length gj (g5! tr mK# nh l )1 #hu\5 tr6 9R #X #h5Ru d5 length k2 t tinh t, 9
tri start'
(Ou length f Y Ghu\5 tr6 9R #hu\5 t, start tI5 9 tri kOt thq# #!#h #uZ5 #hu\5 length k2
t'
Tr+ng #!# tr)^ng h*p1 nOu 9 tri 7rt Qu #;a #hu\5 nhv h4n hay 7sng 9 tri #uZ5 #;a
#hu\5 #+n #Qn #h=p1 #hu\5 tr6 9R l r\ng'
fphp
F j ea7#dede llu"t t,ng phQn t_ #;a #hu\5'
d+r (5j 5f strlen(F) 5)
e#h+ su7str(F1 51 .)'e Ye
e#h+ efhrge
rest j su7str (ea7#dede1 .1 &.) ll
e#h+ e.'Ye 'rest' e lengthYe ' strlen(rest)' ef7rge
llpr5ntsY .'Y7#de lengthYW
rest j su7str (ea7#dede1 W1 &TY)
e#h+ ekYe 'rest' e lengthYe ' strlen(rest) 'ef7rge llpr5ntsY kY length
rest j su7str (ea7#dede1 &T1 &k)
e#h+ eTYe 'rest' e lengthYe ' strlen(rest)' ef7rge llTYd lengthY.
g
G!# hm t:m k5Om 9 thay thO trn #hu\5Y Aa+ g@m t:m k5Om mt #hu\5 #+n #X tr+ng mt
#hu\5 kh!# hay khng1 thay thO #hu\5 #+n 7sng mt #hu\5 kh!#'
Hm R]kiJP R]kR]k (R]kiJP S R]kiJP SNuY Tr6 9R #hu\5 #X g5! tr 3 #hu\5 F )*# tinh t, 9 tri
t:m th"y #hu\5 Fu7 tr+ng X #h+ On #uZ5 F' (Ou tr+ng F #X nh5Ru #hu\5 Fu71 hm #hC tinh
9I5 Fu7 Qu t5n t:m )*#' (Ou Fu7 khng #X tr+ng F1 tr6 9R dalse'
V dY
f
ema5l j sterl5ngdes5gnmult5med5a'#+m
d+ma5n j strstr (ema5l1 )
e#h+ d+ma5n ll pr5nts des5gnmult5med5a'#+m
g
Hm iJ] R]kbHR (R]kiJP S R]kiJP SNu iJ] HooRq]Y Hm tr6 9R mt sZ nguyn l 9 tri Qu
t5n #;a Fu7 tr+ng F' (Ou Fu7 khng #X tr+ng F1 hm tr6 9R g5! tr &.' (Ou #X nh5Ru Fu7 tr+ng
F1 hm #hC tr6 9R 9 tri Qu t5n' Tham sZ tu #h[n thV T l mt sZ nguyn #hC 9 tri 7rt Qu
Page 93.
#Qn t:m Fu7 tr+ng F' (Ou tham sZ ny khng #X1 tV# l t:m t, 9 tri (t:m t, Qu #hu\5 F)'
Mt 5Ru #Qn #hq 2 tr+ng hm nyY (Ou 9 tri t:m )*# #;a Fu7 tr+ng F l 1 strp+s() sc tr6 9R
g5! tr ' %5! tr ny t)4ng Vng 9I5 75On 7++l dalse1 d+ 9Dy kOt Su6 #X th? 7 h5?u sa5' <? s+
s!nh k tr)^ng h*p ny1 ta ph65 s_ d`ng t+!n t_ s+ s!nh jjj (T d"u 7sng) h+K# t+!n t_ s+ s!nh
kh!# zjj (k d"u 7sng)'
V dY T:m t"t #6 #!# 9 tri #;a Fu7 tr+ng F'
f
F j ea7# a7dea7e
Fu7 jea7e
p+s j &.
e#h+ eG!# 9 tri f5gFu7 fl5gtr+ng f5g F fl5g lYe
d+
5d (strlen(5e9aluee)g)
fhtmlg
fheadgft5tlegnxample G++k5eflt5tlegflheadg
f7+dyg%5! tr #;a #++k5e M )*# g!n g5! tr bFb e#h+ t ' Gl5#k fa
hredjepagek'phpeg9+ Byflag ? k5?m tra'fl7+dyg
flhtmlg
Trang pageT]php
fhtmlg
fheadgft5tlegFh+N #++k5eflt5tlegflheadg
f7+dyg
%5! tr #;a G++k5e )*# g!n tr+ng fa hredjepage.'phpegpage.'phpflagY
fphp
e#h+ hGwwbHna7#
g'
fl7+dyg
flhtmlg
<Qu t5n1 dung 7r+Nser truy #Dp 9+ d5le page.'php1 #++k5e t ng )*# l)u 9+ a #;a
ng)^5 s_ d`ng (nOu )*# ph=p)' bh5 l5nk trang pagek'php1 g5! tr ny )*# g_5 ln ser9er1
trang pagek'php #X th? truy #Dp 9 h5?n th'
Tn #;a #++k5e #yng #X th? x!# lDp thnh tn m6ng 9 ta #X th? s_ d`ng 9Lng lKp ? duy8t
Sua'
Page 99.
Tuy nh5n1 9: #++k5e th)^ng t5Rm $n nh5Ru r;5 r+1 9: 9Dy mt sZ ng)^5 s_ d`ng th)^ng trt
khng #h+ #!# Ne7s5te l)u #!# thng t5n ny trn a' ]+ X 958# s_ d`ng #++k5e 7 hn #hO'
12.3 Se##ion
Mt #!#h kh!# Su6n l2 ng)^5 s_ d`ng l sess5+n' Fess5+n )*# h5?u l kh+6ng th^5 g5an
ng)^5 s_ d`ng g5a+ t5Op 9I5 . Vng d`ng' Mt sess5+n )*# 7rt Qu kh5 ng)^5 s_ d`ng truy
#Dp 9+ Vng d`ng lQn Qu t5n1 9 kOt thq# kh5 ng)^5 s_ d`ng th+!t khv5 Vng d`ng' M\5
sess5+n sc #X )*# #"p mt nh danh (H]) kh!# nhau 9 n5 dung )*# l)u tr+ng th) m`#
th5Ot lDp tr+ng d5le php'5n5 (tham sZ sess5+n'sa9ehpath)'
Tr+ng PHP1 sess5+n )*# xem nh) mt 5Ru kh5?n phia ser9er ? l)u tr 9 Su6n l2 ph5n
lm 958#' <? lm )*# 5Ru ny1 kh5 mt ng)^5 s_ d`ng truy #Dp 9+ mt Ne7s5te1 Ne7ser9er
#ung #"p #h+ ng)^5 s_ d`ng mt xBu g5! tr l Fess5+nH] g[5 l xBu nh danh& 9i d`
/7kW}WTWTTd0d/0#d7..ed./a0' %ia tr xBu ny mt g5! tr ngtu nh5n 9 nX )*#
g_5 tI5 m!y ng)^5 s_ d`ng thng Sua #++k5e #X tn PHPFnFFH]' %5! tr ny t@n t5 #h+ On
kh5 n+ #hu k sZng #;a sess5+n kOt thq# h+K# ng)^5 s_ d`ng d5 #huy?n tI5 Ne7s5te kh!#' Ghu
k sZng #;a sess5+n d+ Ne7ser9er Su5 nh' Ta #X th? 5Ru #hCnh #hu k ny kh5 #"u h:nh
Ne7ser9er'
An phia ser9er1 mt tDp t5n #X tn t)4ng Vng PHPFnFFH] #yng )*# t+ ra' G!# 75On
sess5+n sc )*# l)u tr+ng mt tDp t5n 9-n 76n ny 9 3 t5 9 tri )*# Su5 nh tr+ng d5le
php'5n5 3 dLng sess5+n'sa9ehpath' mi d` n5 dung dLng tr+ng d5le php'5n5 lYsess5+n'sa9ehpath
j ]YPHPsess5+ndata1 kh5 X #!# d5le l)u tr 75On sess5+n sc 3 th) m`# ]YPHPsess5+ndata'
Ta #X th? s_ d`ng n+tepad ? m3 d5le 9 k5?m tra 5Ru ny'
mi d`Y d5le sess5+n.'php #X n5 dungY
nY
ooUhpi t0o session
sessionLstartERb
oo7hqn gi! tr_ H'HSWSSID 23 server c"ng c8p
e1ilena2e f sessionLidERb
ooLA" gi! tr_ cho T <i`n session Kser7a2e v3 W2ail
eLSWSSIr7stKser7a2etu f tThanhtb
eLSWSSIr7stW2ailtu f tthanhvyahoo]co2tb
echo tFile session l"" trong t ]sessionLsaveLpathER ]t co ten la t ] e1ilena2eb
echo tn<rg7oi d"ngn<rgKser7a2et ]eLSWSSIr7stKser7a2etu b
echo tn<rgW2ailt ]eLSWSSIr7stW2ailtub
Yg
bh5 duy8t1 ta #X th? th"y n5 dung )*# h5?n th trn tr:nh duy8t nh) sauY
5le sess5+n luu tr+ng ]YPHPsess5+ndata #+ ten la
7}dd.aTW/Wee}0aa07./Wk/W
(+5 dungY
ser(ameYThanh
nma5lYthanhyah++'#+m
Page 100.
m+ th) m`# ]YPHPsess5+ndata 9 m3 d5le 7}dd.aTW/Wee}0aa07./Wk/W 7sng
n+tepad1 ta th"y n5 dung #;a nX nh) sauY
ser(amesY}YeThanhe
nma5lsY.}Yethanhyah++'#+me
<By #hinh l tn (ser(ame)1 k5?u (F&str5ng)1 d5 (}) 9 n5 dung #;a #!# 75On sess5+n l)u
tr trn ser9er' G!# 75On phBn #!#h nhau 7sng d"u #h"m ph$y'
<? s_ d`ng Fess5+n tr+ng PHP1 Qu t5n #Qn kh35 t+ Fess5+n' Fess5+n )*# kh35 t+ 7sng
#!#h g[5 hm sess5+nhstart() h+K# t ng' Tr+ng d5le php'5n51 nOu g5! tr sess5+n'aut+hstart j
. (g5! tr mK# nh kh5 #5 Kt l sess5+n'aut+hstart j )1 sess5+n sc )*# kh35 ng t ng'
]+ 9Dy ta khng #Qn th5Ot dung hm sess5+nhstart()' Tr+ng tr)^ng h*p #Qn g[5 hm
sess5+nhstart()1 hm ny ph65 )*# g[5 tr)I# 7"t #V hm n+ #;a sess5+n 9 tr)I# X #h)a #X
thng t5n n+ )*# g_5 9R 7 8m )a thng t5n 9R tr:nh duy8t'
m58# truy #Dp thng t5n (nhDn1 g!n) sess5+n r"t 4n g56nY <Kt g5! tr #h+ sess5+n #hC l l8nh
g!n hFnFFHw(tnhsess5+n j g5!htr 9 ? [# sess5+n1 #hC #Qn [# g5! tr #;a 75On
hFnFFHw(tnhsess5+n' G!# 75On sess5+n ny sc #X g5! tr t+n #`# 9I5 t"t #6 #!# trang
tr+ng #ung sess5+n' Ta #yng #X th? l"y g5! tr duy nh"t #"p #h+ mt sess5+n 7sng hm
sess5+nh5d() nh) tr+ng 9i d` trn'
bh5 khng s_ d`ng mt 75On sess5+n n+ na1 ta hu #hqng 5 7sng hm
unset(hFnFFHw(75On)' bh5 X s_ d`ng hm 5sset ? k5?m tra 75On ny sc nhDn )*# kOt
Su6 l dalse' Gyng #X th? s_ d`ng hm sess5+nhunset() ? hu t+n 7 #!# 75On sess5+n M t+'
]+ t"t #6 #!# 75On sess5+n )*# l)u tr+ng m6ng hFnFFHw(1 d+ 9Dy ta #X th? s_ d`ng 9Lng
lKp ? duy8t Sua t"t #6 #!# 75On sess5+n nh) tr+ng 9i d` sau'
mi d` g@m T trang sess5+nk'php1 sess5+nT'php1 sess5+nW'php' M\5 trang #X #!# #hV# n-ng
kh35 t+1 hu 7v 9 h5?n th mt sZ 75On sess5+n' M\5 trang #yng #X nhng l5n kOt tI5 trang
k5a ? #hy th_'
Trang sessionT]php
nY
sessionLstartERb
i1 EwissetEeLSWSSIr7stsessStuRR
eLSWSSIr7stsessStu fSb
else
eLSWSSIr7stsessStuNNb
i1 EwissetEeLSWSSIr7st"serIDtuRR
x
eLSWSSIr7st"serIDtu ftthanhtb
eLSWSSIr7stW2ailtu ftthanhvco2pany]co2tb
y
echo tDanh sach cac <ien da taotb
Ihile Eesvar f each EeLSWSSIr7RR
x
echo tn<rg t] esvarst$eytu ]tft ] esvarstval"etub
y
Page 101.
Yg
n<odyg
nhrg
na hre1ftsessiond]phptg Trang session d E'"y <ien sessSRnoagn<rg
na hre1ftsessionj]phptg Trang session j E'"yRnoagn<rg
no<odyg
Trang sessiond]php
nY
sessionLstartERb
"nsetEeLSWSSIr7stsessStuRb
echo tDanh sach cac <ien da taotb
Ihile Eesvar f each EeLSWSSIr7RR
x
echo tn<rg t] esvarst$eytu ]tft ] esvarstval"etub
y
Yg
n<odyg
nhrg
na hre1ftsessionT]phptg Trang session T E'ien thiRnoagn<rg
na hre1ftsessionj]phptg Trang session j E'"y tat caRnoagn<rg
no<odyg
Trang sessionj]php
nY
sessionLstartERb
sessionL"nsetERb
echo tDanh sach cac <ien da taotb
Ihile Eesvar f each EeLSWSSIr7RR
x
echo tn<rg t] esvarst$eytu ]tft ] esvarstval"etub
y
Yg
n<odyg
nhrg
na hre1ftsessionT]phptg Trang session T Ehien thiRnoagn<rg
na hre1ftsessiond]phptg Trang session d E'"y <ien sessSRnoagn<rg
no<odyg
12.4 S+ R.ng Se##ion Nh8 C9 Ch0 Ch:ng Th$c Ng8Si RTng
Tr+ng hQu hOt #!# Vng d`ng Ne71 Ru )*# #h5a lm ha5 phQn #hinhY
& PhQn dnh #h+ ng)^5 s_ d`ng l kh!#h hngY Gh+ ph=p ng)^5 s_ d`ng Hnternet #X th?
l58t k t:m k5Om1 srp xOp thng t5n1 p
Page 102.
& PhQn dnh #h+ ng)^5 s_ d`ng l ng)^5 Su6n trY #h+ ph=p ng)^5 Su6n tr1 x_ l2 5Ru
kh5?n hay Su6n l2 #!# ngh58p 9` #yng nh) #hV# n-ng kh!# #;a Vng d`ng'
PhQn ny sc m t6 #!# #hV# n-ng th)^ng hay s_ d`ng tr+ng #!# Ne7s5te th)4ng m5 58n t_'
PhQn dnh #h+ ng)^5 Su6n tr l phQn Su6n l2 #;a #!# d+anh ngh58p Su6n l2 Vng d`ng1 nX
th)^ng 7a+ g@m #!# #hV# n-ng #hinh nh) sauY
z"=n l. danh 2cY Gh+ ph=p #Dp nhDt #!# danh m`# tr+ng GF]LY
thm1 s_a1 x+! #!# m$u t5n #;a #!# 76ng d l58u dng danh m`# nh)Y l+a5hang1
mathang1 p
z"=n tr_ "serY Gh+ ph=p phBn SuyRn 9I5 ng)^5 dung tr+ng Vng d`ng'
G!# SuyRn #;a ng)^5 dung th)^ng l oead1 >5te hay ull' mI5 SuyRn oead1 ng)^5
dung #hC )*# ph=p xem m khng )*# #Dp nhDt d l58u' mI5 SuyRn >r5te1 ng)^5
dung #X thR #Dp nhDt d l58u' mI5 SuyRn ull1 ng)^5 dung #X th? xem1 #Dp nhDt d l58u
9 thay U5 #!# SuyRn s_ d`ng #;a #!# ng)^5 s_ d`ng kh!#'
z"=n l. $h!ch h3ngY Gh+ ph=p the+ d5 Su! tr:nh Kt hng #;a kh!#h
hng #h+ On kh5 kOt thq# h*p @ng'
7h:n vian $inh doanhY u6n l2 #!# h*p @ng1 thanh t+!n1 phBn #ng
g5a+ hng #h+ nhBn 95n g5a+ nhDn' u6n l2 #!# h*p @ng mI5 Kt hng1 h*p @ng M
thanh t+!n1 h*p @ng #h)a thanh t+!n1 h*p @ng M g5a+ hng1 h*p @ng #Qn hu 7v1
p
B!o c!oY ThZng k 7!+ #!+ #!# d+anh sZ 7!n hng1 thanh t+!n1 75?u @
d+anh thu 9 #!# 7!+ #!+ ph`# 9` #h+ Su! tr:nh k5nh d+anh kh!#p
<? phBn 758t )*# #!# Z5 t)*ng Su6n tr ny1 m\5 ng)^5 Su6n tr sc th)^ng )*# #ung #"p
mt thng t5n ? k5?m s+!t' Thng t5n ny )*# l)u tr+ng mt 76ng (9i d` 76ng adm5n)
Edm5n(user5d1 pass1 perm5ss5+n)' bh5 -ng nhDp 9+ nhng trang #;a Su6n tr1 #h)4ng tr:nh
sc #hy mt +n mM L5 hv5 nhDp 9 k5?m tra thng t5n xem By #X ph65 l mt ng)^5 Su6n
tr hay khng1 9 ng)^5 Su6n tr ny #X )*# SuyRn tha+ t!# 9I5 trang ny hay khng' (Ou
khng qng1 #h)4ng tr:nh sc #huy?n tI5 trang ? #X th? -ng nhDp l5 hay tI5 trang 7!+ l\5'
Tr+ng phQn ny sc g5I5 th58u #hung #!# #ng 958# Su6n l2 #;a ng)^5 #X SuyRn ull' (gha l
ta khng phBn #h5a #!# SuyRn r5ng 758t' M\5 ng)^5 s_ d`ng tr+ng 76ng adm5n Ru #X SuyRn
nh) nhau' bh5 xBy dng mt Vng d`ng #` th?1 ta #hC #Qn k5?m tra thm xem user ny #X
SuyRn g: uyRn ny #X )*# ph=p tha+ t!# tr+ng trang ny hay khng1 ? #X th? #h+ ph=p
th# th5 #!# +n mM #;a trang hay #huy?n tI5 trang 7!+ l\5'
12.6.1 Nui Tr3nh "'ng NhK:
Mt ng)^5 kh5 9+ #!# trang adm5n #;a Vng d`ng Ne71 Ru ph65 Sua Su! tr:nh k5?m tra g[5 l
-ng nhDp' Fau kh5 M -ng nhDp1 #h)4ng tr:nh sc l)u thng t5n ? #hVng th# s -ng nhDp
ny kh5 ng)^5 s_ d`ng d5 #huy?n sang #!# trang kh!# nhau tr+ng Ne7s5te' <? x!# nh )*#
ng)^5 s_ d`ng M -ng nhDp hay #h)a1 ta #X th? s_ d`ng Z5 t)*ng Fess5+n M g5I5 th58u 3
phQn tr)I#'
F4 @ #h+ Su! tr:nh -ng nhDp nh) sauY
Page 103.
& bh5 9+ mt trang #;a phQn Su6n tr1 ng)^5 dung ph65 -ng nhDp thng t5n Sua mt
d+rm #X ha5 d5eld nhDpY user 9 passN+rd 9 )*# g_5 On trang k5?m tra'
& Thng t5n ny )*# k5?m tra ? s+ s!nh 9I5 d l58u tr+ng 76ng adm5n' (Ou qng1 Su!
tr:nh -ng nhDp )*# gh5 nhDn 9 sc #huy?n tI5 mt trang Su6n tr mK# nh hay mt
trang n+ )*# yu #Qu'
& Tr+ng m\5 trang phQn Su6n tr1 Ru #X #hV# n-ng th+!t ra ng+5' (Ou ng)^5 s_ d`ng
#h[n #hV# n-ng ny1 #h)4ng tr:nh sc hu hOt #!# thng t5n #;a ng)^5 Su6n tr ny
(trang l+g+ut'php) 9 #huy?n tI5 trang l+g5n ? -ng nhDp l5'
& Tr)^ng h*p nOu ng)^5 s_ d`ng g tr# t5Op 9+ trang #;a ng)^5 Su6n tr m khng
-ng nhDp Sua trang l+g5n1 #!# trang ny sc #X #!# +n mM ? k5?m tra l ng)^5 dung
M Sua trang l+g5n #h)a1 nOu #h)a1 sc #huy?n trang Suay l5 trang l+g5n ? nhDp user
9 passN+rd 9 -ng nhDp l5'
12.6.2 Bi^n Nu(n LX & Mz "'ng NhK:
<? #X th? Su6n l2 tZt phQn adm5n1 ta sc s_ d`ng #!# 75On sess5+n ? l)u tr 9 #Dp nhDt thng
t5n ng)^5 s_ d`ng' G!# 75On sess5+n s_ d`ng tr+ng phQn ny lY
& sserH]Y u6n l2 9 k5?m s+!t ng)^5 s_ d`ng'
& sMessY u6n l2 #!# thng 7!+ thi#h h*p #h+ ng)^5 s_ d`ng'
& s5lePathY u6n l2 )^ng dtn tI5 d5le m ng)^5 s_ d`ng #Qn'
& sL+g5nY u6n l2 xem ng)^5 s_ d`ng M 9+ mt trang Sua d+rm l+g5n hay #h)a'
<? Su6n l21 ta xBy dng #!# trang sauY
& Trang login]php #hVa mt d+rm g@m ha5 phQn nhDp l58u userH] 9 PassN+rd' G!#
thng t5n ny kh5 d+rm su7m5t sc )*# )a tI5 trang loginLa"thentication]php'
& Trang loginLa"thentication]php sc t+ #!# #Bu truy 9"n 9 k5?m tra tr+ng GF]L' (Ou
qng1 sc )a ng)^5 s_ d`ng tI5 #!# trang thi#h h*p' MK# nh l trang adm5n'php (By
l trang #hVa #!# l5n kOt On #!# danh m`# #;a ng)^5 Su6n tr)' (Ou sa51 Suay l5
trang l+g5n'php 9 h5Rn th #!# #Bu thng 7!+ thi#h h*p' (h) 9Dy1 kh5 n+ 9+ #!#
trang #;a adm5n1 ng)^5 s_ d`ng Ru ph65 Sua 7)I# k5?m tra ? #hVng m5nh m:nh
)*# ph=p 9+ #!# trang x!# nh' Fau By l mM #h+ ha5 trang ny'
& <? #huy?n ng)^5 s_ d`ng tI5 mt trang kh!#1 ta s_ d`ng hm header(eL+#at5+nY
urle)' Tr+ng X url l a #hC trang #Qn #huy?n On' Hm ny #yng nh)
Page 104.
sess5+nhstart()1 nX khng gBy l\5 kh5 )*# g[5 tr)I# 7"t #V thng t5n xu"t d l58u 9R
tr:nh duy8t'
Trang login]php
nYphp
sessionLstartERb
i1 EwissetEeLSWSSIr7sts(esstuRR
x
es(ess ft 7hap vao day d" Kser va HassIord]tb
etGtKID f ttb
y
else
x
es(ess f eLSWSSIr7sts(esstub
etGtKID f eLSWSSIr7stsKserIDtub
y
i1 EwissetEeLSWSSIr7stsFileHathtuRR
x
eLSWSSIr7stsFileHathtu f tad2in]phptb
y
Yg
ncenterg
Ban se toi 1ilenYfeLSWSSIr7stsFileHathtuYg sa" $hi login nhrg
'ay nhap vao day d" thong tin de vao cac trang ad2in]nhrg
n1or2 na2eft1r2Logint 2ethodftHrSTt actionftloginLa"thentication]phptg
nta<le <orderfSg
ntrg
ntd alignftcentert colspanfTgn<gnYfes(essYgno<gnotdgnotrg
ntrgntd alignftle1ttgKsernotdg
ntd alignftle1ttg
ninp"t typeftteGtt na2efttGtKsert sizeftTkt 2aGlengthftSiit val"eftnY
fetGtKIDYgt g
notdgnotrg
ntrgntd alignftle1tt gHassIordnotdg
ntd alignftle1ttg
ninp"t typeftpassIordt na2efttGtH%Dt sizeftTkt 2aGlengthft{t Val"efttg
notdg notrg
ntrgntd alignftle1tt colspanfTg
ninp"t typefts"<2itt na2eftSignint val"eftSign 2e inwt g
ninp"t typeftresett na2eftResett val"eftResettg
notdg
notrg
nota<leg
no1or2g
nocenterg
no<odyg
noht2lg
Page 105.
H:nh sau h5?n th d+rm 9 thng 7!+ (sMess) kh5 ng)^5 s_ d`ng nhDp 9+ thng t5n ser 7
sa5'
Trang loginLa"thentication]php
nYphp
o|
Inp"t Kser v3 passIord E*AFc g5i t} login]phpR] r"tp"t Ret"rn
m S Uh?ng cB "ser n3y trong csdl
m T CB "ser n3y nhAng passIord sai]
m d Th?ng tin nhqp v3o *-ng Etr~ng "ser and passIord
|o
1"nction Chec$KserEeKserID& eHassIordR
x
incl"de EtIncl"desoconn]inctRb
es9l f tSelect | 1ro2 ad2in Ihere "serIDf eKserID tb
eres"lt f 2ys9lL9"eryEes9l& econnRb
ooRet"rn S i1 have no this "serID
i1 E2ys9lLn"2LroIsEeres"ltR ff iR
ret"rn Sb
else
x
eroI f 2ys9lL1etchLarrayEeres"ltRb
ooRet"rn T i1 have "serID <"t passIord is Irong]
ooRet"rn d i1 "serID& passIord inp"t are the sa2e "serID& passIord in the ta<le ad2in
i1 EeHassIord wff eroIstpasstuR
ret"rn Tb
else
ret"rn db
y
y
Page 106.
sessionLstartERb
o|
UiX2 tra *X tr!nh trA[ng hFp ngA[i s5 dng gJi ngay trang loginLa"thentication]php 23
$h?ng th?ng 9"a trang login]php
|o
i1 EwissetEeLHrSTsttGtKsertuRR
headerEtLocationlogin]phptRb
oo4hi nhqn th?ng tin c>a "ser
eLSWSSIr7stsKserIDtu f eLHrSTsttGtKsertub
oo!c lqp *A[ng dn s ch"yXn *`n $hi *;ng nhqp th3nh c?ng]
i1 EwissetEeLSWSSIr7stsFileHathtuRR
x
eLSWSSIr7stsFileHathtuf tad2in]phptb
y
etGtKser f eLHrSTsttGtKsertub
etGtH%D f eLHrSTsttGtH%Dtub
erer"lt f Chec$KserEetGtKser& etGtH%DRb
i1 Eerer"ltffSR
x
eLSWSSIr7sts(esstu f tKserID <i sai] 7hap laitb
headerEtLocationlogin]phptRb
y
]
i1 Eerer"ltffTR
x
eLSWSSIr7sts(esstu f tHassIord <i sai] 7hap laitb
headerEtLocationlogin]phptRb
y
]
i1 Eerer"ltffdR
x
"nsetEeLSWSSIr7sts(esstuRb
eLSWSSIr7stsLogintu f tr"eb
ete2p f eLSWSSIr7stsFileHathtub
headerEtLocationete2ptRb
y
Yg
bh5 k5?m tra x+ng tr+ng trang l+g5nhauthent5#at5+n'php x+ng1 #h)4ng tr:nh sc #huy?n tI5 #!#
trang the+ yu #Qu #;a ng)^5 Su6n tr (mK# nh l trang adm5n'php)' Tr+ng m\5 trang ny1
Ru #X #!# +n mM ? k5?m tra ng)^5 s_ d`ng M -ng nhDp Sua d+rm #;a trang l+g5n'php
#h)a' (Ou #h)a1 #h)4ng tr:nh sc Suay l5 trang l+g5n'php' <+n mM ny ta lun lun Kt 3
Qu trang'
<? thuDn t58n1 ng+5 #!# trang #X #!# #hV# n-ng #` th?1 ta xBy dng trang adm5n'php' Trang
ny sc l58t k danh s!#h #!# m`# m ng)^5 Su6n tr #Qn th5 hnh' M\5 m`#1 4n g56n l mt
l5nk On #!# trang thi#h h*p' <By #yng #X th? xem l trang #h; #;a ng)^5 Su6n tr'
Page 107.
7#i d"ng trang ad2in]php
nY
sessionLstartERb
eLSWSSIr7stsFileHathtu f eLSWRVWRstSCRIHTL7A(Wtub ooeH'HLSWLFb
oo UiX2 tra tr0ng th!i Kser *Z *;ng nhqp 9"a 1ile login]php hay chAa]
i1EwissetEeLSWSSIr7stsLogintuRR
x
eLSWSSIr7sts(esstu f tHhai dang nhap tr"ocwtb
eLSWSSIr7stsKserIDtu f ttb
headerEtLocationlogin]phptRb
y
Yg
n<odyg
na hre1ftlogo"t]phptg Tho!t noAg
7g"oi dang s" d"ng co KserId la nYfeLSWSSIr7stsKserIDtu Yg
nta<le <orderfS cellspacingfi alignfcenterg
ntrgntdg S notdgntdgn<gDanh 2"c can 9"an ly no<gnotdgnotrg
ntrgntdg T notdgntdgna hre1ftinsert2athang]phptg The2 2at hang noagnotdgnotrg
ntrgntdg d notdgntdgna hre1fttg S"amGoa 2at hang noagnotdgnotrg
ntrgntdg j notdgntdgna hre1ftlisthoadon]phptg Liet $e 'oa don noagnotdgnotrg
ntrgntdg k notdgntdgna hre1fttg Cap 9"yen s" d"ng noagnotdgnotrg
ntrgntdg l notdgntdgna hre1fttg cac tinh nang $hac noagnotdgnotrg
ntrgntdg notdgntdgLiet $e the2 vao daynotdgnotrg
nota<leg
no<odyg
m: 958# k5?m tra ng)^5 s_ d`ng M -ng nhDp hay #h)a x6y ra 9I5 t"t #6 #!# trang phQn Su6n
tr1 d+ 9Dy ta 95Ot +n mM k5?m tra ny ra d5le r5ng 9 #h~n 9+ #!# trang kh5 #Qn' Trang
r5ng #X tn chec$Llogin]inc )*# l)u tr+ng th) m`# Hn#ludes'
7#i d"ng trang chec$Llogin]inc
nY
sessionLstartERb
ooL8y tan trang chn hiQn h3nh v3 g!n chi session sFileHath]
eLSWSSIr7stsFileHathtu f eLSWRVWRstSCRIHTL7A(Wtub ooeH'HLSWLFb
i1EwissetEeLSWSSIr7stsLogintuRR
x
eLSWSSIr7sts(esstu f tHhai dang nhap tr"ocwtb
eLSWSSIr7stsKserIDtu f ttb
headerEtLocationlogin]phptRb
y
Yg
T)4ng t1 m\5 trang Su6n tr1 ta lun #X mt l5n kOt ? th+!t ra khv5 Vng d`ng' ]+ 9Dy1 ta
#yng l)u +n mM ny 9+ th) m`# Hn#ludes 9I5 tn r5ng lY l5nkhl+g+ut'5n#' MM #;a trang
ny #hC 4n g56n g@m mt l5n kOt #h+ ph=p ta #huy?n tI5 trang l+g+ut'php ? hu #!# thng
t5n -ng nhDp'
(Z trang lin$Llogo"t]inc
Page 108.
na hre1ftlogo"t]phptg Tho!t noAg
mDy trang adm5n'php sc )*# 95Ot l5 nh) sauY
nY
incl"de EtIncl"desochec$Llogin]inctRb
Yg
n<odyg
nY
incl"de EtIncl"desolin$Llogo"t]inctRb
Yg
7g"oi dang s" d"ng co KserId la nYfe'TTHLSWSSIr7LVARSstsKserIDtu Yg
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
no<odyg
M\5 trang #;a ng)^5 Su6n tr #X mt l5n kOt On trang l+g+ut'php' Trang ny #hC lm nh58m
9` l hu #!# 75On sess5+n m ng)^5 s_ d`ng M t+1 th5Ot lDp l5 75On sMess #h+ phu h*p'
7#i d"ng trang logo"t]php
nY
sessionLstartERb
oo"nsetEeLSWSSIr7stsLogintuRb
sessionLdestroyERb
eLSWSSIr7sts(esstuf tDa logo"t] Can nhap Kser m Hass de Loginwtb
eLSWSSIr7stsKserIDtuf ttb
headerEtLocationlogin]phptRb
Yg
Page 109.
Bi 1 M9,NL
13.1 GiUi TFiVN
MyFL l #sdl )*# s_ d`ng #h+ #!# Vng d`ng >e7 s_ d`ng php (9 #!# ngn ng kh!#)'
GX nh5Ru #ng #` h\ tr* ng)^5 s_ d`ng Su6n tr mysSl ? #X th? tha+ t!# #!# hnh ng l5n
Suan On #sdl ny mt #!#h tr# Suan d{ dng h4n nh)Y mysSl dr+nt1 phpmyadm5n1 nMF
wo MxFL1 na95#ate1 p
Gyng g5Zng nh) #!# #sdl kh!#1 kh5 lm 958# 9I5 #sdl MyFL1 ta ph65 -ng k2 kOt nZ51 t+
#sdl1 Su6n l2 ng)^5 dung1 phBn SuyRn s_ d`ng1 th5Ot kO Z5 t)*ng ta7le #;a #sdl 9 x_ l2 d
l58u'
<? s_ d`ng #!# ph!t 75?u hay #!# tha+ t!# trn #sdl1 ta #X th? s_ d`ng #!# #ng #` h\ tr* Su6n
l2 dng @ h[a hay dung dLng l8nh (#Ln g[5 l #+mmand l5ne)'
13.2 .\] NOi V TIH CSDL BJP CHwwGJT LiJq
(Ou s_ d`ng #+mmand l5ne1 ta On th) m`# mysSl75n' Fau X g d)I5 d"u nhr# mysSl'exe'
(Ou ang 3 #hO >5nd+Ns1 ta #X th? 7rt Qu t, Ftart oun #YmysSl75nmysSl'exe kOt Su6
g5Zng nh) h:nh sauY
Art Qu t, d"u nhr# mysSlg #X th? 7rt Qu th# h58n #!# ph!t 75?u FL #;a MyFL'
L)u 2Y (Ou #h)a 75Ot #!# l8nh #4 76n lm 958# 9I5 MyFL1 t, d"u nhr# mysSlg1 g ? l58t
k #!# ph!t 75?u nh)Y #+nne#t1 ex5t1 Su5t1 s+ur#ep'
Tr)I# t5n1 ? t+ #sdl1 7rt Qu 9I5 ph!t 75?u
MysSlg #reate data7ase data7asename
mi d` t+ GF]L #X tn l d7 nh) ph!t 75?u sauY
MysSlg #reate data7ase d7
Page 110.
13.3 /0t N@i ,J T*o CSRL OMng Uiao Ri&n ?V Ho*
Tr+ng tr)^ng h*p s_ d`ng g5a+ d58n @ h+1 phQn ny m5nh h[a #!#h s_ d`ng #h)4ng tr:nh
mysSl dr+nt 9ers5+n .'k (76n #y #hy kh! nh-1 khng #Qn #5 Kt)' <? kh35 ng mysSldr+nt1
#X th? #hy tDp t5n mysSldr+nt'exe'
(Ou lQn Qu t5n t+ kOt n5 On #sdl1 #Qn ph65 t+ mt kOt nZ5 G+nne#t5+n1 #ung #"p #sdl tn
Fer9er hay HP #sdl #;a m!y #hVa MyFL'
Tr+ng tr)^ng h*p m!y #hV# #sdl MyFL l m!y ang s_ d`ng1 #X th? s_ d`ng tn
l+#alh+st' sername mK# nh #;a #sdl l r++t 9 PassN+rd l r\ng'
(Ou M #X #sdl ang t@n t51 #X th? g tn #sdl tr+ng phQn ]ata7ases (nOu muZn m3 nh5Ru #X
th? dung d"u ? phBn #!#h)'
Tr+ng tr)^ng h*p lQn Qu t5n1 khng #Qn #ung #"p tn #sdl1 #X th? t+ #hqng sau kh5 kOt nZ5'
Fau kh5 kOt nZ5 #sdl thnh #ng1 tr:nh 5Ru kh5?n #sdl MyFL #X g5a+ d58n nh) h:nh d)I5'
Gng 958# Qu t5n ph65 th# h58n l t+ #sdl '
T+ GF]LY T, menu T++ls Greate ]ata7ase hay o&Gl5#k 9+ r++tl+#alh+st Greate
]ata7ase'
Page 111.
Gung #"p tn #sdl1 tr)^ng h*p ny #hqng ta nhDp tn GF]L1 nh"p wb'
13.4 @NLJ L NP`zi DJP TkHJP M?RS
<? -ng nhDp 9+ #sdl MyFL1 #X th? s_ d`ng k #!#h nh) tr:nh 7y 3 trn h+K# sau kh5 M
t+ ra #!# username kh!#1 #X th? s_ d`ng nhng username 9 passN+rd ny ? -ng nhDp'
(Ou s_ d`ng #+mmand l5ne1 #hC #Qn g gmysSl h h+stname u username p t, d"u nhr#'
(Ou s_ d`ng g5a+ d58n @ h[a #Qn g thng t5n -ng nhDp 9+ #!# text7+x'
T, kh+! h #hC tn(#+mputer name)1 HP1 hay l+#alh+st #;a m!y #X s_ d`ng #sdl MyFL1 &u l
tn username1 &p )*# #hC nh kh5 username ny #X passN+rd' Tr+ng tr)^ng h*p passN+rd l
r\ng1 #X th? khng #ung #"p tham sZ &p'
1.6.1 T%/ & C: Nu9+n Ch/ NgIJi ,7 $8ng
GX th? s_ d`ng k #!#h trn' MuZn t+ username 7sng #+mmand l5ne1 #+ th? g t, d"u nhr#
ph!t 75?u sauY
%oE(T
Fele#t1 Hnsert1 pdate1 ]elete1 Hndex1 Elter1 Greate1 ]r+p1 oederen#es
wn ' T+ my5s
H(]n(THHn] Ax .kTW}0
Ph!t 75?u trn 9,a t+ ra username #+ tn l my5s1 9I5 h+stname l #sdl h58n hnh1 passN+rd l
.kTW}0 9 4# #!# SuyRn lY Fele#t1 Hnsert1 pdate1 ]elete1Hndex1Elter1Greate1]r+p1oederen#es trn #sdl
h58n hnh'
Tr+ng tr)^ng h*p t+ ra mt username khng #ung #"p #!# SuyRn trn #sdl1 #+ th? th# h58n
nh) ph!t 75?u t+ nh) sauY
%oE(T
usage
wn ' T+ user5s
H(]n(THHn] Ax .kTW}0
Page 112.
(Ou s_ d`ng g5a+ d58n @ h+1 #X th? t+ username 9 g!n SuyRn nh) trn 7sng #!#h s_ d`ng
menu lY T++ls ser&Manager'
G!# SuyRn trn #sdl
LHIi b TYJP DiJ PiLi
Fele#t
Hnsert
pdate
]elete
Hndex
Elter
Greate
]r+p
Ta7les1 #+lumns
Ta7les1 #+lumns
Ta7les1 #+lumns
Ta7les
Ta7les
Ta7les
]ata7ase1 Ta7les
]ata7ase1 Ta7les
Gh+ ph=p user truy 9"n mtu t5n t, ta7le'
Gh+ ph=p user thm mI5 mtu t5n t, ta7le'
Gh+ ph=p user thay U5 g5! tr #;a mtu t5n t@n t5
tr+ng ta7le'
Gh+ ph=p user xXa mtu t5n t@n t5 tr+ng ta7le'
Gh+ ph=p user thm mI5 hay xXa #hC m`# #;a ta7le'
Gh+ ph=p user thay Z5 #"u trq# #;a Z5 t)*ng ta7le
hay data7ase t@n t51 nh) thm #t1 thay U5 k5?u d
l58u #tp'
Gh+ ph=p user t+ mI5 Z5 t)*ng ta7le h+K#
data7ase'
Gh+ ph=p user xXa Z5 t)*ng ta7le h+K# data7ase'
(g+5 #!# SuyRn trn1 tr+ng MyFL #Ln #X mt sZ SuyRn khng g!n mK# nh nh) 76ng
trn1 #Qn #X th? xem x=t #!# SuyRn kh5 #ung #"p #h+ ng)^5 dung'
LHIi @N?nJ
oel+ad Gh+ ph=p ng)^5 Su6n tr np l5 #!# ta7le1 SuyRn h+st1 l+gs 9 ta7le'
Page 113.
Fhutd+Nn
Pr+#ess
5le
Gh+ ph=p ng)^5 Su6n tr #h"m dVt #!# h+t ng MyFL
Gh+ ph=p ng)^5 Su6n tr xem #!# Su! tr:nh th# h58n #;a tr:nh #h; 9 #X
th? #h"m dVt mt sZ Su! tr:nh ang th# th5'
Gh+ ph=p d l58u gh5 9+ ta7le t, tDp t5n
G!# username 7:nh th)^ng khng nn #"p SuyRn nh) 76ng trn #h+ h[' Tr+ng tr)^ng h*p
muZn #"p t"t #6 SuyRn #h+ username #X th? dung t, khXa all thay 9: all Pr595leges tr+ng ph!t
75?u t+ user sauY
%oE(T
ELL
w( ' Tw user5s
H(]n(THHn] Ax .kTW}0
T)4ng t nh) 9Dy1 tr+ng tr)^ng h*p khng muZn #"p 7"t k SuyRn n+ trn #4 s3 h58n hnh1
#X th? ph!t 75?u #"p SuyRn nh) sauY
%oE(T
FE%n
w( ' Tw user5s
H(]n(THHn] Ax .kTW}0
1.6.2 {/! Nu9+n Ca \A;r
<? xXa #!# SuyRn user t, #sdl h58n hnh1 #X th? s_ d`ng ph!t 75?u FL nh) sauY
oe9+ke pr5n95leges (#+lumn)
wn 5tem
r+m username
Page 114.
Tr+ng tr)^ng h*p xXa t"t #6 SuyRn #;a user1 ta #X th? s_ d`ng ph!t 75?u sauY
oe9+ke all
wn 5tem
r+m username
V dY Gh5 t5Ot Su! tr:nh #"p 9 x+! SuyRn mt userY %!n SuyRn Edm5n5strat+r #h+ user #X tn
l s9 trn m[5 #sdl MyFL1 passN+rd l .kTY
%rant all
wn
T+ s9 5ndent5d5ed 7y .kT
+! user #X tn l s9 tr+ng h8 thZngY
oe9+ke all
wn
r+m s9
T+ mt user #X tn l s9 9I5 passN+rd l .kTW}1 )*# lm 958# trn #sdl d71 khng #"p
SuyRn #h+ user nyY
%rant usage
wn d7'
T+ s9 5ndent5d5ed 7y .kTW}
T)4ng t nh) trn nh)ng #"p mt sZ SuyRn #h+ userY
%rant sele#t1 5nsert1delete1update15ndex1dr+p
wn d7'
T+ s9
(Ou muZn xXa 7It mt sZ SuyRn #;a user trnY
oe9+ke update1delete1dr+p
wn d7'
r+m s9
13.5 C!c 1iHu $) Liu Tr/ng M9A|<
Tr)I# kh5 th5Ot kO #sdl trn MyFL1 #hqng ta #Qn t:m h5?u mt sZ k5?u d l58u th)^ng dung
nh)Y numer5#1 date and t5me 9 str5ng'
b5?u d l58u numer5#
CHSNwJ ]?bq S]HkGPq kqNikqT
TH(xH(T . 7yte
FMELLH(T k 7ytes
Mn]HMH(T T 7ytes
Page 115.
H(T W 7ytes
H(Tn%no W 7ytes
AH%H(T 7ytes
LwET() W 5d fj kW +r 5d k} fj fj }T
LwET W 7ytes
]wALn 7ytes
]wALn PonGHFHw( 7ytes
onEL 7ytes
]nGHMEL(M1]) Mk 7ytes 5d ] g 1 M. 7ytes 5d ] j (]k1 5d M f ])
(MnoHG(M1]) Mk 7ytes 5d ] g 1 M. 7ytes 5d ] j (]k1 5d M f ])
b5?u d l58u date and t5me
CHSNwJ ]?bq S]HkGPq kqNikqT
]ETn T 7ytes
]ETnTHMn 7ytes
THMnFTEMP W 7ytes
THMn T 7ytes
xnEo . 7yte
CHSNwJ ]?bq qkH jGSNq
]ETnTHMn && YY
]ETn &&
THMnFTEMP (length depends +n d5splay s5e)
THMn YY
xnEo
b5?u d l58u str5ng
CHSNwJ ]?bq S]HkGPq kqNikqT
GHEo(M) M 7ytes1 . fj M fj k}}
mEoGHEo(M) L. 7ytes1 Nhere L fj M and . fj M fj k}}
TH(xALwA1 TH(xTnT L. 7ytes1 Nhere L f k
ALwA1 TnT Lk 7ytes1 Nhere L f k.0
Mn]HMALwA1
Mn]HMTnT
LT 7ytes1 Nhere L f kkW
Lw(%ALwA1 Lw(%TnT LW 7ytes1 Nhere L f kTk
n(M(9alue.19aluek1''') . +r k 7ytes1 depend5ng +n the num7er +d enumerat5+n 9alues
Page 116.
(0}}T} 9alues max5mum)
FnT(9alue.19aluek1''')
.1 k1 T1 W +r 7ytes1 depend5ng +n the num7er +d set
mem7ers (0W mem7ers max5mum)
b5?u d l58u nh phBn #h5a lm T l+51 l+5 thV nh"t l #har (#h5Ru d5 #Z nh) 9 9ar#har
(#h5Ru d5 75On th5n)' Ghar #h+ ph=p nhDp l58u d)I5 dng #hu\5 9I5 #h5Ru d5 lIn nh"t 7sng
#h5Ru d5 nh ngha1 nh)ng kh5 truy #Dp d l58u trn d5eld #X kha5 7!+ dng ny #Qn ph65 x_
l2 kh+6ng trrng' <5Ru ny #X ngha nOu ta kha5 7!+ #h5Ru d5 l .1 nh)ng #hC nhDp #hu\5 W ki
t MyFL l)u tr #hu\5 tr+ng 7 nhI 9I5 #h5Ru d5 .'
(g)*# l5 9I5 k5?u #har l 9ar#har1 7 nhI #hC l)u tr #h5Ru d5 qng 7sng 9I5 #h5Ru d5 ta M
nhDp'
VGSNq CHAR(! S]HkGPq kqNikqT VARCHAR(! S]HkGPq kqNikqT
W 7ytes . 7yte
a7 a7 W 7ytes a7 T 7ytes
a7#d a7#d W 7ytes a7#d } 7ytes
a7#dedgh a7#d W 7ytes a7#d } 7ytes
L+5 thV ha5 l text 9 7l+71 text #h+ ph=p l)u tr r"t lIn1 7l+7 #h+ ph=p l)u Z5 t)*ng nh
phBn'
L+5 thV T l enum 9 set'
13.6 T%/ & LIu B(ng Tr/ng C,$L
C!ch t0o <=ngY
G!#h .Y F_ d`ng mysSldr+nt' T, menu T++l #h[n #reate ta7le1 nhDp tn1 k5?u d l58u#h+ #!#
d5eld'
G!#h kY (Ou #X d5le 9-n 76n K# t6 sSl t+ 76ng1 #X th? np ? th# th5 ngay' Gh[n ta7
Sueryll+ad FL ? np d5le #"u trq# sSl #X sn' A"m run (hay /) ? th# th5 #"u trq# sSl1
LA" <=ng ra 1ile teGt (T+ k#h 76n FL FL s#r5pt)Y <By l #!#h thng th)^ng kh5 xBy
dng #sdl kh5 #Qn #huy?n #sdl t, m!y ny sang m!y kh!#' GX nh5Ru #!#h lm 5Ru ny1 3 By
s_ d`ng #ng #` t!5 t+ l5 #sdl t, k#h 76n #;a #sdl gZ#'
T, #_a sZ #ng #` ny tr+ng MyFL&r+nt1 7sng #!#h #h[n tn #sdl1 sau X #h[n Toolso I2m
WGporto WGport' GX th? l)u #"u trq# hau d l58u #;a 76ng 7sng #!#h !nh d"u 9+ #he#k 7+xY
str"ct"re hay Data tr+ng 9ung %hat to eGport' 5le )*# l)u 9I5 phQn m3 rng l sSl'
Page 117.
13.7 C!c Uh!t BiHu Tru9 &n Tr/ng M9A|<
Ph!t 75?u FL 7a+ g@m #!# l+5 sauY
- FnLnGTY Truy 9"n mtu t5n'
- H(FnoTY Thm mtu t5n'
- P]ETnY GDp nhDt d l58u'
- ]nLnTnY +! mtu t5n'
1.b.1 Uh!t BiHu ,;<;ct
Ph!t 75?u sele#t dung ? truy 9"n d l58u t, mt hay nh5Ru 76ng kh!# nhau1 kOt Su6 tr6 9R mt
tDp mtu t5n thva #!# 5Ru k58n #h+ tr)I#1 #q ph!p #;a FL th)^ng #X dng nh) sauY
FnLnGT fdanh s!#h #!# #tg
owM fdanh s!#h #!# 76ngg
>Hnon f#!# 5Ru k58n rng 7utg
%owP Ax ftn #t l 75?u thV# tr+ng FnLnGTg
HEmH(% f5Ru k58n 7rt 7ut #;a %owP Axg
wo]no Ax fdanh s!#h #tg
LHMHT r+m(um7erT+(um7er
a] Hh!t <iX" SWLWCT v@i 2Qnh *+ FRr(
M8nh R owM #hC ra tn mt 76ng hay nhng 76ng #X Suan h8 #Qn truy 9"n thng
t5n'
mi d`Y L58t k danh s!#h t"t #6 kh!#h hng
Fele#t
r+m kha#hhang
<] Hh!t <iX" SzL d0ng SWLWCT v@i 2Qnh *+ %'WRW
Page 118.
F_ d`ng m8nh R >Hnon ? t+ 5Ru k58n l[# mtu t5n the+ t5u #hu$n )*# nh
ngha' Thng th)^ng >Hnon dung #t ? s+ s!nh 9I5 g5! tr1 #t kh!# h+K# 75?u thV#
#hVa #t 7"t k #X tr+ng 76ng'
Gq ph!pY
Fele#t
dr+m ta7lename
Nhere #+nd5t5+ns
H+K#
Fele#t d5eld.1d5eldk1p1d5eldn
r+m ta7lenmame
>here #+nd5t5+ns
mi d`Y Fele#t msmh1tenmh1g5a
r+m mathang
Nhere g5afj
m s mh tenmh g5a
.T b+n7u 0
kW %uaran! ant!st5#a W
TT %e5t+st k
}k 5l+ M5x
}W T+urt5~re
} ohn7ru bl+ster75er
- G!# ph=p t+!n s+ s!nh tr+ng #+nd5t5+ns 7a+ g@mY
g1 f1 gj1 fj1 j1 fg (h+K# zj)
- G!# ph=p t+!n l+g5# #X th? s_ d`ng tr+ng #+nd5t5+nsY
End1 +r1 n+t1 n+t 5n1 7etNeen1 l5ke1 n+t l5ke1 5n
V d`. Y Fele#t msmh1tenmh1g5a
r+m mathang
Nhere g5a 7etNeen and .}
m s mh T enmh g 5a
T En5seed Fyrup .
./ Teat5me Gh+#+late A5s#u5ts /
k. F5r o+dneys F#+nes .
kT Tunn7rd /
W. a#ks (eN nngland Glam Gh+Nder /
W} o+gede s5ld /
W aanse k+eken /
}k 5l+ M5x
}W T+urt5~re
W L+ngl5de T+du .
} ohn7ru bl+ster75er
Page 119.
mi d` kY FnLnGT
owM kha#hhang
>here tenkh l5ke E
mskh tenkh ]5a#h5 ph+ne
. ELbH w7ere Ftr' } T&WTk.
k E(ETo E9da' de la G+nst5tu#5Xn kkkk (}) }}}&Wk/
T E(Tw( Matader+s kT.k (}) }}}&T/Tk
W EowT .k Han+9er FS' (..) }}}&
c] Hh!t <iX" SWLWCT v@i 2Qnh *+ rRDWR B
Thng th)^ng1 tr+ng kh5 truy 9"n mtu t5n t, 76ng d l58u1 kOt Su6 h5?n th #Qn srp xOp
the+ #h5Ru t-ng hay g56m da trn k2 t' (h)ng #yng #X th? srp xOp the+ mt t5u
#hu$n 7"t k1 #hng hn nh) 75?u thV#'
Gq ph!p #h+ m8nh R wo]no Ax #ung 9I5 trng th!5 t-ng h+K# g56m1 Vng 9I5 EFGY
t-ng dQn 9 ]nFGY %56m dQn'
Th)^ng #X dng sauY
wrder 7y #+lumnname ]nFG EFG
wrder 7y #+lumnname. #+lumnnamek ]nFG EFG
wrder 7y #+lumnname. EFG1 #+lumnnamek ]nFG
V d SY Fele#t msmh1tenmh1g5a
r+m mathang
Nhere g5a 5n (1.1.k)
wrder 7y g5a ]nFG
msmh tenmh g5a
T. %+rg+n+la Tel5n+ .k
W0 Fpeges5ld .k
W Gh+#+lade .k
0 F#+tt5sh L+ng7reads .k
T En5seed Fyrup .
k. F5r o+dneys F#+nes .
W L+ngl5de T+du .
}k 5l+ M5x
}W T+urt5~re
} ohn7ru bl+ster75er
d] Hh!t <iX" SWLWCT v@i 2Qnh *+ 4RrKH B
Tr+ng th# tO 9i d` nh) #hqng ta #Qn 75Ot g5a tr trung 7:nh #;a mt l+5 mKt hng l
7a+ nh5u1 tUng sZ t5Rn #;a mt kh!#h hng M tr6 l 7a+ nh5up <? lm )*# 5Ru
ny ta dung m8nh R %owP Ax'
V dY Fele#t msl+a51 a9g(g5a)
Page 120.
r+m mathang
%r+up 7y msl+a5
msl+a5 a9g(g5a)
. T'TTT
k kk'TTT
T kW'W0k
W k'}
} k'.Wk/
0 }T'000
Tk'k
k'W.0
G!# hm tr+ng ph!t 75?u %owP AxY
Em%Y Hm tr6 9R g5! tr 7:nh SuBn tr+ng #Bu truy 9"n'
MH(Y Hm tr6 9R g5! tr nhv nh"t #;a #t tr+ng #Bu truy 9"n'
MEY Hm tr6 9R g5! tr lIn nh"t #;a #t tr+ng #Bu truy 9"n'
Gw(TY Hm tr6 9R sZ lu*ng mtu t5n tr+ng #Bu truy 9"n'
MY Hm tr6 9R tUng #!# g5! tr #t tr+ng #Bu truy 9"n
G!# hm tr+ng %owP Ax thva mt 5Ru k58n n+ X ta s_ d`ng m8nh R
HEmH(%'
V dYFele#t msl+a51 a9g(g5a)
r+m mathang
%r+up 7y msl+a5
Ha95ng a9g(g5a)gjT
msl+a5 a9g(g5a)
. T'TTT
0 }T'000
Tk'k
Ph!t 75?u FL dng FnLnGT 9I5 EF
bh5 #Qn th5O ph65 U5 tn tr)^ng n+ X tr+ng #Bu truy 9"n nh) #!# #t t+ ra t, ph!t
#!# hm sum1 #+unt1p ta s_ d`ng ph!t 75?u EF'
mi d`Y
sele#t msl+a51 a9g(sSrt(g5a)) as TAGanAa#k%5a
dr+m mathang
gr+up 7y msl+a5
ha95ng TAGanAa#k%5a gjT
msl+a5 TAGanAa#k%5a
. }'k}/k/k
W }'/WkT/
0 0'T//0kk}}
}'WWk/.0.
e] Hh!t <iX" SzL d0ng SWLWCT v@i LI(IT 7& (ySzL
Page 121.
Ph!t 75?u FL dng FnLnGT #h+ ph=p truy 9"n #hC mt sZ mtu t5n tinh t, 9 tri n1
l"y ra m mtu t5n tr+ng ta7le (the+ mt t5u #hu$n hay srp xOp n+ X)'
GX th? s_ d`ng kOt h*p LHMHT 9I5 #!# m8nh R >Hnon1 wo]no Ax nhsm t+
)*# kOt Su6 nh) 2 muZn'
V dY sele#t
r+m kha#hhang
L5m5t }1W
mskh tenkh d5a#h5
0 ALEF +rsterstr' }
ALw(P kW1 pla#e bl=7er
AwLH] Gl EraSu5l1 0
/ Aw(EP .k1 rue des A+u#hers
1] Hh!t <iX" SzL d0ng SWLWCT v@i DISTI7CT
(Ou #X mt hay nh5Ru mtu t5n trung lKp nhau tr+ng #Bu sele#t (th)^ng x6y ra 3 dng
sele#t kOt h*p 9I5 nh5Ru 76ng)1 nh)ng ta #hC #Qn l"y ra mt mtu t5n tr+ng #!# mtu t5n
trung lKp1 #hqng ta s_ d`ng ph!t 75?u FL 9I5 #hC nh ]HFTH(GT'
V dY T:m #!# sZ l+5 hng m #X l+5 mKt hng khng 7!n na'
Fele#t msl+a51d5s#+nt5nued as het7an
r+m mathang
Nhere d5s#+nt5nuedjx
+rder 7y msl+a5
msl+a5 het7an
. x
k x
} x
0 x
0 x
0 x
0 x
x
Gyng ph!t 75?u trn nh)ng 9I5 ]HFTH(GT ? l+5 7v #!# #t th,a'
Fele#t d5st5n#t msl+a51d5s#+nt5nued as het7an
r+m mathang
Nhere d5s#+nt5nuedjx
+rder 7y msl+a5
msl+a5 het7an
. x
k x
} x
0 x
Page 122.
x
1.b.2 Th*0 $) Liu B}ng ,|< LnA;rt
bh5 #Qn thm mtu t5n 9+ 76ng tr+ng #sdl MyFL #X nh5Ru #!#h ? th# h58n #ng 958# ny'
Tuy nh5n1 ? s_ d`ng #!# ph!t 75?u FL mang tinh #huyn ngh58p tr+ng MyFL #Qn s_
d`ng ph!t 75?u H(FnoT'
bh5 thm d l58u1 #Qn #hq 2 k5?u d l58u g5Zng h+K# t)4ng Vng k5?u d l58u M kha5 7!+ #;a
#t X1 nOu khng phu h*p sc 7 l\5' (g+5 ra #Qn Suan tBm On SuyRn ser ang truy #Dp
#sdl' ser ph65 )*# #"p SuyRn Hnsert d l58u 9+ t,ng 76ng #` th?'
V d
H(FnoT H(Tw h+ad+n(mskh1ngay) 9alues(.1n+N())
H(FnoT H(Tw #h5t5eth+ad+n (mshd1 msmh1 s+lu+ng1 g5a7an)
mELnF (.1.1W1)
H(FnoT H(Tw #h5t5eth+ad+n (mshd1 msmh1 s+lu+ng1 g5a7an)
mELnF (.1.1T1})
1.b. CK: NhKt $) Liu B}ng ,|< \:Sat;
]ung ? #Dp nhDt l5 d l58u #X tr+ng 76ng
V dY pdate #h5t5eth+ad+n
Fet g5atr5hhj(.&khuyenma5)s+lu+ngg5a7an
1.b.6 {/! $) Liu B}ng ,|< $;<;t;
mI5 FL dng ]nLnTn th: 4n g56n h4n' bh5 th# h58n xXa mtu t5n tr+ng 76ng #hqng ta #hC
Suan tBm On tn 76ng 9 m8nh R >Hnon ? xXa nhng mtu t5n #h[n l[# nOu #X'
C- ph!pY ]elete dr+m fta7lenameg
>here f#+nd5t5+nsg
V dY ]elete dr+m #h5t5eth+ad+n
Nhere mshdj.
]elete dr+m h+ad+n Nhere mshdj.
Page 123.
Bi 16 TF\Y CnU C~ , $ LL[\ MY,NL T UHU
14.1 Gii Thiu ng $8ng
Ta sc xBy dng mt Vng d`ng Ne7 th)4ng m5 g5I5 th58u1 Su6ng #!+ 9 mua 7!n hng trn
mng' >e7s5te #X #!# #hV# n-ng #hinhY
& (g)^5 s_ d`ngY
em1 t:m k5Om #!# mKt hng
<-ng k2 kh!#h hng
Gh[n mua #!# mKt hng'
& (g)^5 Su6n trY
GDp nhDt #!# thng t5n 9R mKt hng
u6n l2 #!# #hV# n-ng 7!n hngY La #h[n1 t:m k5Om1 thZng k #!# thng
t5n 9R 4n hng
<? th# hnh phQn ny1 #hqng ta sc t+ mt #sdl #h+ ph=p g5I5 th58u Su6ng #!+ 9 mua 7!n
#!# mKt hng trn mng' GF]L )*# Kt tn l data 9 #X #"u trq# #!# 76ng nh) sauY
A6ng SHGiFGJP
Tn d5eld l+5 d l58u M t6
Msl+a5 (um7er MM sZ #;a l+5 hng (kh+!)
Tenl+a5 Text Tn l+5 hng
A6ng wG]FGJP
Tn
d5eld
l+5 d l58u M t6
Msmh (um7er MM sZ mKt hng
Tenmh Text Tn mKt hng
Msl+a5 (um7er MM sZ l+5
%5a (um7er %5! mKt hng
H5nhanh Text Tn d5le h:nh #;a mKt hng
M+ta Text M t6 s4 #!# tinh n-ng #;a mKt hng
A6ng vFGZFFGJP
Tn d5eld L+5 d l58u M t6
Mskh (um7er MM sZ kh!#h hng
Tenkh Text Tn kh!#h hng
]5a#h5 Text <a #hC bH
Ph+ne Text <58n th+5 bH
nma5l Text nma5l
A6ng FHGTHJ
Tn d5eld L+5 d l58u M t6
Mshd (um7er MM sZ h+! 4n
Mskh Text MM sZ kh!#h hng
(gay ]ate (gy lDp h+! 4n
Page 124.
T+ngt5en (um7er TUng sZ t5Rn tr+ng h+! 4n
A6ng ZFi]iq]FHGTHJ
Tn d5eld L+5 d l58u M t6
Mshd (um7er MM sZ h+! 4n
Msmh Text MM sZ mKt hng
%5a7an (um7er %5! 7!n t5 th^5 5?m h58n t5 #;a MH
F+lu+ng (um7er FZ l)*ng
<? d{ Su6n l2 #!# >e7s5te1 ta t+ mt Vng d`ng Ne7 tr+ng mt th) m`# (9i d` nxamples) 9
#X #!# th) m`# #+n' Ta Su5 )I# m\5 th) m`# #+n #hVa mt nhXm #!# Z5 t)*ng (d5le) g5Zng
nhau' G` th?Y
& Hn#ludesY GhVa t"t #6 #!# d5le mM dung #hung #X phQn m3 rng l 5n#'
& HmagesY GhVa t"t #6 h:nh 6nh #h+ #!# mKt hng tr+ng GF]L'
& T"t #6 #!# trang php )*# l)u tr+ng th) m`# gZ# #;a Vng d`ng Ne7 (th) m`#
nxamples)'
14.2 Tha/ T!c &i C,$L M9A|<
<? tha+ t!# 9I5 GF]L tr+ng php1 ta #Qn lm #!# #ng 958# sauY
& T+ #!# kOt nZ5 tI5 h8 Su6n tr GF]L mysSl'
& Gh[n mt GF]L tr+ng MysSl'
& T+ #!# #Bu truy 9"n'
& Th5 hnh #!# #Bu truy 9"n ny'
& H5?n th kOt Su6'
16.2.1 1^t N-i Ti M9A|<
Tr+ng PHP1 ? kOt nZ5 tI5 MysSl ta #X th? dung hm mysSlh#+nne#t() #X #q ph!p nh) sauY
5nt mysSlh#+nne#t(ser9ername1 username1 passN+rd)'
%5! tr #;a hm sc )*# tr6 9R #h+ mt 75On kOt nZ51 75On ny )*# s_ d`ng tr+ng #!# tha+ t!#
truy 9"n sele#t #yng nh) #Dp nhDt d l58u' Hm nhDn T tham sZY Tn ser9er #hVa mysSl
(ser9ername)1 tn 9 mDt kh$u ng)^5 s_ d`ng )*# ph=p kOt nZ5 tI5 GF]L' Hm ny tr6 9R
dalse nOu kOt nZ5 7 l\5'
V d
f
#+nn j mysSlh#+nne#t(ser9erpk1 user1 mypassN+rd)
5d (z#+nn)
Page 125.
e#h+ G+uld n+t #+nne#t t+ MysSl data
ex5t
g
Tr+ng X ser9erpk l tn m!y ser9er #X #5 Kt mysSl' (Ou m!y #5 HHF #yng l m!y #h;
MysSl1 ta #X th? thay tn ser9er 7sng l+#alh+st'
#+nn j mysSlh#+nne#t(l+#alh+st1 user1 mypassN+rd)
mi d` trn #h+ ph=p kOt nZ5 tI5 GF]L MyFSl' (Ou kOt nZ5 7 l\51 ta thng 7!+ l\5 9 kOt thq#
#h)4ng tr:nh'
m: #X r"t nh5Ru trang #Qn truy #Dp tI5 GF]L s_ d`ng #hung mt kOt nZ5 ny1 ta nn l)u +n
mM kOt nZ5 ny ra d5le r5ng tr+ng th) m`# Hn#ludes1 Kt tn l #+nn'5n# ? s_ d`ng #hung'
Ta #yng #X th? s_ d`ng ph!t 75?u sauY
#+nn j mysSlh#+nne#t(ser9ername1 username1 passN+rd)
+r d5e (G+uld n+t #+nne#t t+ MysSl data)
L8nh d5e sc )*# th5 hnh kh5 kOt nZ5 7 l\5' L8nh ny #h+ ph=p kOt thq# kOt nZ5 9 g565 phXng
t+n 7 #!# 75On kh35 t+ M kOt nZ5 tI5 #sdl tr)I# X nOu kOt nZ5 khng thnh #ng'
16.2.2 ChOn C,$L
Fau kh5 kOt nZ5 tI5 MysSl1 ta #Qn #h[n mt GF]L )*# )*# SuyRn truy #Dp 735 username M
-ng nhDp ? s_ d`ng' <? #h[n GF]L #Qn tha+ t!# tr+ng ser9er MysSl 9,a kOt nZ51 ta s_
d`ng hm MysSlhsele#thd7 #X #q ph!p nh) sauY
MysSlhsele#thd7(data7asename1 #+nn)'
Hm nhDn 9+ k tham sZY
& ]ata7asenameY Tn GF]L #Qn tha+ t!#
& G+nnY A5On kOt nZ5 9,a )*# t+ ra t, hm mysSlh#+nne#t()'
Tr+ng kh5 ang tha+ t!# 9I5 Mt Gsdl1 Ta GX Th? Ghuy?n Fang Gsdl bh!# Tr+ng Gung
Fer9er MysSl Asng bha5 A!+Y se ]ata7asename
16.2. "ng 1^t N-i
bh5 khng #Ln tha+ t!# 9I5 GF]L1 ta nn Xng #!# kOt nZ5 l5 ? g565 phXng t5 nguyn #h+
ser9er 7sng hmY
mysSlh#l+se(data7aseh#+nne#t5+n)'
Tr+ng XY data7aseh#+nne#t5+n l 75On kOt nZ5 M m3 7sng hm mysSlh#+nne#t()'
Page 126.
16.2.6 ThWc Thi Cdu Tru9 &n
bh5 kOt nZ5 tI5 d5le GF]L1 ta 7rt Qu s_ d`ng #!# #Bu truy 9"n ? l"y hay #Dp nhDt thng t5n
tr+ng GF]L' <? lm )*# 5Ru ny1 ta t+ #hu\5 truy 9"n sSl 9 s_ d`ng hm mysSlhSuery()
#X #q ph!p nh) sauY
res+ur#e mysSlhSuery(str5ng sSl1 data7seh#+nne#t5+n)'
Hm tr6 9R res+ur#e tu thu# 9+ #Bu truy 9"nY
& Fele#tY A5On l)u tr #!# re#+rdset nOu truy 9"n th# th5 tZt (9i d`Y #Bu truy 9"n khng
#X l\5)1 ng)*# l5 tr6 9R dalse nOu truy 9Qn th"t 75'
& FL #Dp nhDt dataY Tr6 9R true hay dalse nOu 958# th5 hnh #Bu truy 9"n ny thnh
#ng hay th"t 75'
16.2.> HiHn Th# 1^t Nu( &i Tru9 &n ,;<;ct
mI5 #!# truy 9"n sele#t1 kOt Su6 tr6 9R sc l tDp re#+rdset 9 )*# tU #hV# duy8t Sua 7sng
#!#h d5 #huy?n Sua t,ng re#+rd1 9I5 m\5 re#+rd1 ta sc truy #Dp thng t5n #;a t,ng #t ? l"y
d l58u' Gh5 t5Ot 9R th# th5 truy 9"n ny sc )*# m t6 ka h4n 3 phQn sau'
mi d`Y H5?n th thng t5n t"t #6 d l58u tr+ng 76ng l+5 hng
f
ll.' bOt nZ5 tI5 mysSl
#+nn j mysSlh#+nne#t(el+#alh+ste1 er++te1 ee)
+r d5e(eL+5 ket n+5 t+5 mysSle)
ll k' Gh[n GF]L
mysSlhsele#thd7(edatae1 #+nn) +r d5e(ebh+ng the ket n+5 t+5 data'e)
llT+ #hu\5 truy 9"n
sSl j esele#t dr+m l+a5hange
llT' Th# th5 truy 9"n
result j mysSlhSuery(sSl)
llW' b5?m tra xem kOt Su6 tr6 9R #;a truy 9"n #X l\5 khng
5d (zresult)
ll }' L"y . dLng kOt Su6 (m\5 lQn #hy 9Lng lKp)
Nh5le(r+N j mysSlhdet#hharray(result))
ll0' Hn ra #t mas+l+a5 9 #t tenl+a5
pr5nt r+Nemas+l+a5e
pr5nt r+Netenl+a5e
l UiX2 tra Ge2 s) 2" tin tr= v+ cB $h!c r^ng hay $h?ng& n`" cB thV d"yQt 9"a
t}ng record trong tqp recoredset Eeres"ltR <3ng h32 2ys9lL1etchLarray
l
5d (mysSlhnumhr+Ns(result) g)
llT+ 76ng g@m k #t
F j fta7le 7+rderj. #ellspa#5ngjgftrgftdg Ma mat hang fltdg
F 'j ftdg Ten mat hang fltdgfltrg
Nh5le (r+N j mysSlhdet#hharray(result))
F 'j eftrgftdge 'r+Nemsmhe 'efltdg
F 'jftdge ' r+Netenmhe 'fltdgfltrg
F 'j flta7leg
e#h+ F
mysSlh#l+se(#+nn)
g
bOt Su6 h5?n th #;a trang nh) h:nh sauY
Page 128.
Tr+ng 9i d` trn1 ta #X k mKt hng' mDy tDp re#+redset nhDn )*# t, kOt Su6 #;a truy 9"n
result j mysSlhSuery(sSl1 #+nn) l k' bh5 X result #hC tI5 re#+rd Qu t5n' Hm
mysSlhnumhr+Ns(result) sc tr6 9R sZ re#+rd l k (g)1 tV# l #X d l58u1 d+ 9Dy ta #hu$n 7
xu"t d l58u tr+ng 9Lng lKp Nh5le' Tr+ng 9Lng lKp ny ta M s_ d`ng hm
mysSlhdet#hharray(result)' Hm ny tr6 kOt Su6 l m6ng #hinh l re#+rd h58n t5 m result
ang #hC tI5' (h) 9Dy1 9I5 lQn th# h58n Qu t5n tr+ng Nh5le1 75On r+N #X d l58u l (.1 e
May1 p)' Fau m\5 lQn th# h58n hm mysSlhdet#hharray()1 75On result sc #hC tI5 dLng kO
t5Op' bh5 duy8t hOt1 kOt Su6 tr6 9R #;a hm l dalse1 5Ru k58n ? 9Lng lKp Nh5le d,ng'
mI5 kOt Su6 #;a mt dLng1 ta #X th? s_ d`ng #!# tinh #h"t 9R m6ng ? l"y thng t5n #!# #tY
r+Ntnd5eld (nh) tr+ng 9i d`) hay r+N#hC sZ' GhC sZ )*# 7rt Qu t, '
Ch- .Y bh5 s_ d`ng tn d5eld th: tn ny #hinh l tn #t re#+rdset 9 #X phBn 758t #h h+a 9
th)^ng'
Ta 95Ot l5 9i d` trn s_ d`ng #hC sZ ? duy8t Sua mt dLng (th# #h"t l mt m6ng) nh) 9i d`
sauY
f
5n#lude(e5n#ludesl#+nn'5n#e)
sSl j esele#t dr+m mathange
result j mysSlhSuery(sSl1 #+nn)
5d (mysSlhnumhr+Ns(result) g)
mysSlh#l+se(#+nn)
Page 129.
g
Ta #yng #X th? s_ d`ng hm mysSlhnumhd5elds() ? 75Ot sZ d5eld )*# tr6 9R #h+ 75On kOt Su6
result' ]+ 9Dy 9Lng d+r 3 9i d` trn )*# 95Ot l5 nh) sauY
Nh5le (r+N j mysSlhdet#hharray(result))
F 'j eftrge
d+r (5j 5f 2ys9lLn"2L1ieldsEeres"ltR 5)
F 'j eftdge 'r+N5 'efltdge
F 'je fltrge
m: d l58u tr+ng d5eld 2ota #X th? #X nh5Ru dLng ()*# nhDp 9+ t, textarea)' G!# dLng )*#
l)u 7sng k2 t xuZng hng (neN l5ne) tr+ng data7ase' bh5 muZn h5?n th d5eld ny nh) kh5
nhDp1 ta ph65 s_ d`ng hm nlk7r() ? #huy?n #!# k2 t neN l5ne thnh fAog nh) sauY
m+ta j nlk7r(r+Nem+tae )
Ta #yng #X th? duy8t Sua t,ng dLng #;a tDp re#+rdset 7sng hm mysSlhdet#hh+7e#t() thay
9: hm mysSlhdet#hharray()' (Ou s_ d`ng hm mysSlhdet#hh+7e#t()1 ? duy8t Sua t,ng dLng
kOt Su61 kh5 X ? truy #Dp On d l58u #;a d5eld n+1 ta dung t+!n t_ tan 1ield nh) +n mM
sauY
Nh5le (r+N j mysSlhdet#hh+7e#t(result))
e#h+ r+Nmamh
sc truy #Dp d5eld mM mKt hng'
15.2 Uhdn Trang
1>.2.1 Gii Thiu
Tr+ng php1 tDp re#+rdset khng #X thu# tinh phBn trang (pag5ng) nh) asp' Tuy nh5n ta #X
th? lDp tr:nh r5ng #h+ phQn ny 7sng #!#h s_ d`ng thnh phQn l5m5t #;a #Bu truy 9"n'Gq
ph!p #Bu truy 9"n sele#t tr+ng mysSlY select | 1ro2 ta<le h li2it 1ro2& n"2 sc l"y ra n"2
re#+rd 7rt Qu t, re#+rd 1ro2'
mi d`Y
& l"y danh s!#h . mKt hng Qu t5nY sele#t | 1ro2 2athang li2it i& Si
& L"y ra . mKt hng tinh t, mKt hng thV kY select | 1ro2 2athang li2it Ti& Si
& L"y ra . mKt hng #X g5! #a+ nh"tY select | 1ro2 2athang order <y gia desc li2it i&
Si'
]+ 9Dy #ng 958# kh5 phBn trang l #Qn x!# nh #!# g5! trY sZ re#+rd tr+ng mt trang
(pages5e)1 trang h58n hnh m kh!#h hng #Qn xem (#urrpage)1 t, X t+ ra #Bu truy 9"n 9I5
#!# g5! tr tr+ng thu# tinh l5m5t l dr+m 9 num )*# x!# nh'
Tr+ng phBn trang1 ta #yng #Qn x!# nh mt sZ #!# tham sZ kh!# nh)Y tUng sZ trang #X )*#1
tUng sZ re#+rd1 p
Page 130.
1>.2.2 CfZF MfZ )cJF CfZ TFGw SO .Fi Ti\J HJF &FrJ TkGJP
& FZ m$u t5n h5?n th tr+ng mt trang pagesize' %5! tr ny l mt sZ nguyn
d)4ng 9 th)^ng )*# x!# nh tr)I# (735 ng)^5 lDp tr:nh hay ng)^5 s_ d`ng)'
& TUng sZ m$u t5n nhDn )*# t, #Bu truy 9"n khng s_ d`ng l5m5tY n"2roIs' %5! tr
ny #X th? x!# nh 7sng hm #+unt tr+ng #Bu truy 9"nY select co"ntE|R 1ro2 p
%5! tr ny it (khng) thay U51 d+ 9Dy #yng #X th? th# th5 truy 9"n mt lQn duy
nh"t 9 sau X l)u g5! tr ny tr+ng 75On sess5+n ? s_ d`ng #h+ lQn sau'
& FZ trang #X )*# & pageco"ntY Tham sZ ny )*# tinh da trn pagesize 9
n"2roIs nh) sauY
(Ou n"2roIs #h5a hOt #h+ pages5e th: pageco"nt f n"2roIsopagesize'
(Ou n"2roIs khng #h5a hOt #h+ pagesize th: pageco"nt f n"2roIsopagesizeNS'
bh5 X trang #uZ5 #ung sc #X sZ m$u t5n it h4n pages5e'
(Gyng #X th? tinh 4n g56n 7sng hm #e5lY pageco"nt f ceilEn"2roIsopagesizeRR]
& Trang h58n t5 #Qn xem c"rrpageY Tham sZ ny d+ ng)^5 s_ d`ng )a tI5' Tuy
nh5n1 lQn Qu t5n trang )*# g[5 (ng)^5 s_ d`ng #h)a #h[n sZ trang)1 ta #h[n
trang mK# nh #Qn xem sc l trang Qu t5n' Ta #X th? k5?m tra 5Ru ny 7sng hm
5sset()' Ghqng ta sc #h+ ng)^5 s_ d`ng #h[n trang Sua #!# l5nk' ]+ 9Dy nOu ng)^5
s_ d`ng #Z 2 nhDp 9+ c"rrpage trn thanh a #hC khng h*p l81 (Su! lIn & 9)*t
Su! sZ trang h58n #X & pageco"nt1 Su! nhv & sZ khng d)4ng1 h+K# khng ph65 l
mt sZ) ta sc 5Ru #hCnh l5 g5! tr ny' G` th?Y u! lIn1 c"rrpage sc l trang #uZ5'
Tr)^ng h*p #Ln l51 c"rrpage sc l trang Qu t5n'
bh5 x!# nh #hinh x!# #!# tham sZ ny1 g5! tr 1ro2 9 n"2 tr+ng thu# tinh li2it sc lY
1ro2fEc"rrpagemSR | pagesize1 n"2fpagesize]
1>.2. &k $8
H5?n th danh s!#h #!# mKt hng the+ trang' Trang h5?n th )*# Kt tn l
pagingL2athang]php]
f
5n#lude(e5n#ludesl#+nn'5n#e)
llTinh sZ re#+rd'
sSl je sele#t #+unt() dr+m mathange
result j mysSlhSuery(sSl)
r j mysSlhdet#hharray(result)
numr+Ns j r
llbi#h th)I# #;a mt trang'
pages5e j k
llTinh sZ trang
page#+unt j #e5l(numr+Ns l pages5e)
lbh35 t+ trang h58n hnh' LQn Qu 9+ trang1 75On #urrpage #h)a )*# kh35 ng1 trang
)*# h5?n th l trang Qu' Trang h58n hnh ph65 nsm t, . On page#+unt'
l
5d (z5sset(h%nTe#urrpagee))
#urrpage j .
else
#urrpage jh%nTe#urrpagee
dr+m j (#urrpage .) pages5e
Page 131.
sSl j esele#t dr+m mathang l5m5t dr+m1 pages5ee
result j mysSlhSuery(sSl1 #+nn)
ll b5?m tra1 thng 7!+ 9 d,ng nOu Suery l\5'
5d (zresult)