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

PHP & My SQL

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

 GVHD: 



 !"#$%



TRNG I HC S PHM NG THÁP
&"'(()'(

















(* +(, "/0&
 (-12&
 !"#$%
%345!!67!!8



9$6:!!8

 GVHD: 



 !"#$%




 !"#
$$$$



hng mi in t ngay nay phát trin
nh v bo trên th gii nói chung và
ngay cã  Vit Nam nói riêng! Lp trình
Web ang là mt cuc chi y ha hn hin nay và
ngay cã trong tng lai! S ra i ca các ngôn ng
lp trình giúp chúng ta xây dng nhng ng dng
thng mi in t di nhiu hình thc khác nhau!
Bên cnh s h tr ca các h qun tr c s
d liu, chúng ta có th kt hp chúng vi mt
trong nhng kch bn trên trình ch nh ASP, JSP,
Perl,… hay PHP, chúng ta có th xây dng và trin
khai các ng dng mt cách d dàng vi nhiu nhiu
hình thc và mc ích khác nhau!

PHP và MySQL không nm ngoài mc ích trên!
Bt k chúng ta có mt kin thc c s v lp trình
vi các ngôn ng nh Visual Basic, Cobol, hay ch
bit mt chút ít vê HTML hay JavaScript, thì chng
áng là gì cã, chúng ta v n có c hi n!m b!t kinh
nghim mi m" vi lp trình nhng trang Web ng và
làm ch nhng ng dng thng mi in t! PHP và
MySQL nh là mt “c#p bài trùng”! Rt nhiu ngi
ã ngh$ rng, không có s kt hp nào t%t hn s
kt hp gia PHP và MySQL! Th PHP và MySQL là gì?
Ti sao chúng ta ch&n và xem chúng nh là c#p bài
trùng không th tách ri? Chúng ta s" ln lt n
vi t'ng th mt!
SVTH: Nguyn Anh Khoa
Lp 27K10A – Khoa công ngh Thông tin
ng Tháp, tháng 3 nm 2006
T

 GVHD: 



 !"#$%









%&'( 
$$$$


rong thi gian qua, c s giúp
 ca các thy cô trong khoa Công
ngh Thông tin nói chung, và thy
(#ng Qu%c Bo nói riêng, bn thân em có s
tin trin lên t'ng ngày! Kin thc v Công
ngh Thông tin tht rng ln, em không th
nào t mình nghiên cu mt cách c lp mà
phi ph thuc rt nhiu vào nhng kin thc
mà thy cô ã hng d n và truyn t cho em!
Bên cnh ó vi s giúp ) tn tình ca thy
trong quá trình h&c tp, em ã tích cc thc
hin * án ca mình mt cách nghiêm túc! Vì
th cho nên, vi s giúp  tht ln lao ca
y ã giúp em hoàn thành * án ca mình mt
cách y  và không quá thi gian quy nh!
Tuy * án hoàn thành không hoàn toàn
nh mong mu%n, bên cnh ó còn nhiu khuyt
im tht ln mà em cha th nào kh!c phc
c, em mong rng, * án s" nhn c nhiu
ý kin óng góp ca thy, cô và bn bè, #c
bit là thy (#ng Qu%c Bo – Ngi ã hng
d n cho em trong su%t quá trình h&c tp – Em
chân thành cm n!



9;6$<:!!8

)#*+ , - /,

 !"#$%
T
 GVHD: 



 !"#$%






01/%-2 34
$$$$


567689:;8<5=>9?5
5  @7 9> @  8 A << <B
CDEF@G<H7%I;J
K=;>LMN@@8O5568P
O;QB<BGP9;Q<DR9STU;>=
9VW=7X<@Y<I9?56KZ;[O
8<BG=\F:6X<H7X<D
%I@G@@G55
5@79>O59]V57<J<BG^@7D>

<<UO^@O_O;Q@79>9G9YV<_V<H7
<<O^@@8D`-`O5A@=UU
O^@?aI76<b8<<UO^@
<DR8U;V9G<H7B<X`-`O5AF
OF7<X9c9d<e<H7@5<:UO^@
YI@8f
;9:8IV`-`5'6EgO5h<C5@bi
G<@>7VD%K7<b9;Q<<<5@GZ
j<aK8D%K797O8OZ56AD
h=>?@%$>$A4%B$$%@% C%3iO5A<H 9]
;[9PaMk9P8@59P8U78;8<
5=8O^@Dj6<BOlO5AMF9HO89P8
U7685=]O^@97<^<UZ;8<
9@==7X<I9?D
 > V <_V mVK On 56 76 9P 8 a <K <<
5O5<_@=?A@;>9?X<I<mVKOn
a<KKO5A9]V9[KfV69j6O5
AV<_VF<o<_9;Q<MN9P8Kj
9j6O5<H9]59:mV69\O5FOF7<X<H7f



 GVHD: 



 !"#$%




'p%p%
$$$$

Trang
LI NÓI U 1
LI CM N 2
LÝ DO CHN  TÀI 3
MC LC 4
MÔ HÌNH CLIENT – SERVER 12
Client 13
Server 13
CU TRÚC VÀ CÁC TH HTML 14
I. Khái nim c bn v Web 14
II. Cu trúc ca mt trang Web 14
III. Các th HTML thông dng 15
IV. Các th HTML c bit 20
CLIENT SCRIPT VÀ JAVASCRIPT 23
I. Gii thiu v JavaScript 23
II. Tham chiu n th HTML 24
III. Mt s bin c thng gp trong JavaScript 25
IV. Mt s phng thc thng gp trong JavaScript 26
V. Bin trong JavaScript 26
VI. Phát biu có iu kin 27
VII. Các phng thc kim tra d liu 29
VIII. Javascript Object Model 30
IX. i tng MATH và các phng thc 32
X. i tng DATE và các phng thc 32
XI. Các s kin trong JavaScript 34
H QUN TR CSDL MySQL 37
I. Gii thiu v CSDL MySQL 37

II. To CSDL và ngi dùng 38
III. Các kiu d liu trong MySQL 42
IV. Phát biu SQL 47
V. Phát biu dng JOIN 51
LP TRÌNH PHP 55
I. Gii thiu v PHP 55
II. Nhúng PHP vào trang HTML 57
III. Bin trong PHP 58
IV. Bin ca Apache 67
 GVHD: 



 !"#$%



V. Kim tra bin 68
VI. Cu trúc iu khin 68
VII. Hng i tng trong PHP 74
NI DUNG  ÁN 76
I. Gii thiu 76
II. Ni dung 76
III. S dng 77
III.1. Giao din vi ngi dùng 77
III.2. Chc nng ca Website 79
III.3. Cp nht thông tin ca sinh viên 83
III.4. Qun lý ngi dùng 86
IV. Vn  trong vic vit chng trình 88
IV.1. Tr ngi vi Session 88

IV.2. Gii quyt vn  phân trang 88
IV.3. Vn  ng nhp và nút Back trên trình duyt 89
V. K thut trong lp trình 89
V.1. Phong cách trong lp trình 90
V.2. Trình bày mã lnh 91
V.3. Vn  vi bin 92
KT QU T C VÀ HNG PHÁT TRIN 93
I. Kt qu t c 93
II. Nhng hn ch 93
III. Hng phát trin 93
TÀI LIU THAM KHO 94
NHN XÉT CA GIÁO VIÊN HNG DN 95





 GVHD: 



 !"#$%


'q-r -%s tEsuRsu
$$$$

in trúc cn bn nht  mt trang Web ng (Dynamic Web) hot
ng c là nó phi làm vic trên m hình Client – Server (Xem
hình), hay nói mt cách khác là Client – Server là nhng i tng

riêng bit, chúng phi m ng nhng công vic riêng, nhng cùng hng v mt
kt qu chung nht là cho ra mt trang Web ng.
Khác hn vi nhng công vic son tho vn bn hng ngày, ni mà chúng ta
chng cn quan tâm n các khái nim nh Client hay Server! Nhng khi bc vào th
gii Internet, có vô vàng nhng Website ra i,  tip cn và to ra nhng trang
Dynamic nh th, khái nim Client – Server là mt trong nhng khái nim rt quan
trng mà nhng ai mun chinh phc nh cao ca th gii thông tin cn phi bit!

ng dng Web là th! Phi có mt mô hình Server, có th ch là mt máy ch
thôi, nhm tp trung hóa  x lý d liu, còn Client, hay hiu mt cách khác ó là
máy tính ca ngi s dng ni mng vi Server, giã s chúng ta ngi trên mi máy
tính khác nhau, nhng cùng truy cp vào mt Website, iu ó có ngh a là chúng ta
ang truy cp n Server  ly d liu và hin th! v máy tính ca mình! Nói rng
hn, có hàng trm, hàng ngàn ngi cùng truy cp vào mt Website c x lý tp
trung trên Server!
Chúng ta hãy b"t u vi nhng khái nim này!
K

 GVHD: 



 !"#$%


CLIENT (Trình khách)
Nh chúng ta ã bit, HTML là ngôn ng kh#i thy cho trình duyt Web,
HTML cung cp hàng ngàn th$ lnh <TAB> cho phép hin th! ni dung ca trang
Web theo nhiu kiu khác nhau, theo nhiu !nh dng khác nhau! %ây chính là nhng
gì mà trình duyt gi v phía User t& Server! Tuy nhiên, chúng ta không nên mt

nhiu thi gian  hiu sâu v HTML.
SERVER (Trình ch)
Hu ht các 'ng dng Web u hot ng trên trình ch Server, 'ng dng (c
trng gi là Web Server s) m nhn nhim v giao tip vi các Browser (trình
duyt). Mt c s# d liu trên Server s) lu toàn b nhng thông tin áp 'ng yêu cu
cho công vic ca 'ng dng Web. Tuy nhiên, chúng ta cn có mt ngôn ng lp trình
vi vai trò là cu ni liên lc gia Web Server và c s# d liu. Ngôn ng này c*ng có
nhim v là x lý thông tin gia Server và Client.

 GVHD: 



 !"#$%


%v#uw%R4%x%-y-'
$$$$


DE)F"GH=I/
Trên Internet, Web luôn tn ti di hai dng là Web tnh và Web ng. Trang
Web tnh là trang HTML bình thng không thao tác n c s# d liu, còn trang Web
ng thì ngc li, ó là trang Web có thao tác n c s# d liu. %iu này có ngh a
là khi trang Web c Refresh (làm ti), ni dung trình bày trên trang Web c
c t& c s# d liu.
Nói mt cách khác, dù là trang Web tnh hay ng, nu bn mun ngi dùng
s dng chúng trình bày d liu trên trình duyt Web, bn cn phi khai báo các th$
HTML bên trong theo mt quy lut nht !nh.
% trang Web trình bày d liu theo nh ý ca bn trên Brower, bn cn phi

khai báo các th$ HTML và các k!ch bn trình khách (Client Script) phù hp vi chu+n
HTML và Client Script. Ngoài ra, mi trình duyt h, tr thêm các th$ khác, nhm cho
phép ngi dùng phong phú hóa giao din ca trang Web.
Hai trình duyt ph, bin nht hin nay là Internet Explorer (IE) và Netscape
(NC).
% xây d-ng mt 'ng dng Web hoàn chnh và mang tính cht thng mi,
bn cn phi kt hp cã Client Script và Server Script (Kch bn trên trình khách và
kck bn trên trình ch) vi mt loi c s# d liu nào ó, chng hn nh: Microsoft
Access, SQL Server, MySQL,…
Cho dù bn có s dng Server Script nào i na, thì v.n không ph thuc vào
Client Script.
D"J-KL""MFNK(=I/
Nh ã nói trên, trang Web trình bày d liu trên trình duyt di dng
HTML.
HTML (Hyper Text Markup Language) là mt ngôn ng ánh du siêu vn
bn c dùng trong d!ch v Web ca Internet cho phép !nh dng các khuôn dng
ca thông tin và cách mà trình duyt Web hin th! thông tin cho các ngi dùng.
Các thông tin trên Web c t, ch'c theo dng có cu trúc. HTML !nh ngh a
các cu trúc này thông qua các th$ (Tag). Mi cu trúc c !nh ngh a thông qua mt
th$ hay mt c(p th$.
Cu trúc ca mt tài liu HTML c b"t u bng th$ m# <HTML> và kt
thúc bng th$ óng </HTML>. Trang HTML thng có phn m# rng là .htm, .html,
.jhtm, .phtm, nhng ph, bin và hay dùng hn cã là .htm hay .html.
C(p th$ này s) bao tt cã các th$ khác có trong trang Web.
 GVHD: 



 !"#$%



HTML không phân bit ch hoa hay thng, ví d nu th$ m# là <HTML>,
thì các th$ </Html> hay </HTML> u là th$ óng. Nên chú ý là không có khong
tr"ng bên trong !nh ngh a th$!
HTML có hai loi th$, loi th$ m# phi có th$ óng, và loi th$ m# không có
th$ óng (th n).
Ví du:
<HTML>…</HTML> Là loi th$ m# phi có th$ óng.
<BR> hay <HR> Là loi th$ n.
Cu trúc ca mt tài liu HTML:
<HTML>
<HEAD>
<TITLE>Tieu de trang Web</TITLE>
<META…>
<LINK…>…</LINK>
<SCRIPT….>…</SCRIPT>
</HEAD>
<BODY>
Than trang Web
</BODY>
</HTML>
D"E"OF'(*P(

1.Th <HEAD>…</HEAD>:
Tt cã thông tin ch'a trong th$ này u không xut hin trên trang Web,
iu này có ngh a là bn có th khai báo các th$ khác bên trong c(p th$ này
nh <TITLE>, <META>, <SCRIPT>,…
2.Th <TITLE>…</TITLE>:
Th$ này giúp bn trình bày tiêu  trên trang Web, c hin th! tiêu 
trên thanh tiêu  ca trình duyt, thí d:

<TITLE>Do an mon hoc II</TITLE>
3.Th <BODY>…</BODY>:
Phn thân ch'a thông tin chính ca trang Web c (t bên trong c(p
th <BODY> và </BODY>. Tt cã thông tin c trình bày trong th này u
xut hin trên trang Web. Vì th, bn có th trình bày ni dung và các th !nh
dng khác trong c(p th này.
<BODY BACKGROUND=“ULR” BGCOLOR=#XXYYZZ TEXT=
“#XXYYZZ”>
Noi dung phan than cua trang Web
</BODY>
%!nh ngh a phn phân ca trang Web.
 GVHD: 



 !"#$%


- Thuc tính BACKGROUND nh ngha nn ca trang hin th.
ULR thng ch n mt file hình nh.
- Thuc tính BGCOLOR thng nh ngha màu nn, trong ó XX
ch cng  màu , YY ch cng  màu xanh lá cây và ZZ ch
cng  màu xanh bin, các giá tr t 000000 n FFFFFF.
- Thuc tính TEXT ch nh màu ca vn bn.
Ngoài ra, i vi màu, bn có th dùng t& ting Anh nh RED, BLUE,
GREEN  !nh ngh a màu trong các th trên.
4. Các th nh dng
4.1.Th <DIV>…</DIV>
%!nh dng mt on vn bn bng các thuc tính ca chúng. Chng hn
canh gia mt on vn bn, trong th m# !nh ngh a nh sau <DIV

ALIGN=Center>
Ví d :
<DIV ALIGN=Center>
Day la doan van duoc canh giua.
Tat ca nhung gi trong the nay duoc canh giua tren cua so trinh
duyet!
</DIV>
4.2. Th <P>…</P>:
Tng t nh th <DIV>, nhng th này dành  !nh dng mt câu vn bn,
sau th </P>, d liu t- ng xung dòng.
4.3. Th <FONT>…</FONT>:
Cho phép !nh dng text, vi các thuc tính c !nh ngh a trong th
<FONT>.
Ví d:
<FONT FACE=”Courier New” SIZE=3>
Dong text nay duoc dinh dang voi font chu la Courier New, kich
co la 3
</FONT>
4.4. Th <B>…</B>, <I>…</I>, <U>…</U>:
<B>…</B> : %!nh dng ch! "m.
<I>…</I> : %!nh dng ch nghiên.
<U>…</U> : %!nh dng ch dng có gch di.
4.5. Th nh dng bng <TABLE>…</TABLE>:
<TABLE BORDER=number CELLPADING=number
CELLSPADING=number WIDTH=number/percent
HEIGHT=number/percent ALIGN=LEFT/RIGHT>…<TABLE>
• Khai báo mt bng theo hàng và ct.
 GVHD: 




 !"#$%


• Number trong thuc tính BORDER ch !nh  dày ng biên ca
bng. Nu không dùng thuc tính này, mi ô s) c bao quanh mt
khong trng. Dùng BORDER=0  b/ khong trng.
• Number trong CELLPADING  xác !nh s khong trng gia biên
và ni dung ca mt ô.
• Number trong CELLSPACING  xác !nh s khong trng bao
quanh các ô trong mt bng.
• Number/percent trong WIDTH (ho(c HEIGHT) xác !nh  rng
(hay chiu cao) ca bng theo pixel hay theo phn trm  rng (hay
chiu cao) ca tài liu.
• LEFT/RIGHT trong ALIGN dùng canh bng v bên trái/phi ca
trang.
Khi thit k bng, chúng ta cn quan tâm n ng viên (BORDER), và
màu nn ca bng <BGCOLOR>, và khong cách gia các hàng và các ct
(Cellspacing, Cellpadding).
Tng t-, i vi th <TD> bn cn quan tâm n  rng, và vi th
</TD>, bn cn quan tâm n chiu cao.
4.6. Th hình nh <IMG>:
% chèn mt hình nh vào trang Web, chúng ta s dng th <IMG>. %ây
là loi th n. Ngoài ra, bn có th cung cp các thuc tính nh chiu dài và
chiu rng ca hình, có ng viên bao quanh hình hay không.
<IMG SCR = “ULR” ALT= “Text” USEMAP = ”#map_name”
ALIGN = LEFT/RIGHT/MIDDLE/BOTTOM BORDER = number
WIDHT = number/percent HEIGHT=number/percent
HSPACE = number VSCACE = number>
• %a hình nh vào mt tài liu.

• SRC xác !nh ULR ch v! trí ca file nh.
• ALT c dùng d trù cho các trình duyt Web không h tr  ha,
 thay th nh bng mt dòng vn bn.
• ALIGN ch !nh cách các vn bn s) trãi ra xung quanh nh.
• BORDER ch !nh  dày ng vin xung quanh nh.
• USEMAP xác !nh tên ca mt ánh x cn phi n  tìm thông tin.
Thông tin này ch'a các !nh ngh a các vùng có th kích hot trong
hình. Thuc tính này c dùng  kt hp vi các th <MAP> và
<AREA> bên di.
• HSPACE !nh s khong tr"ng gia nh và các vn bn bên trái và bên
phi ca nó.
• VSPACE !nh s khong tr"ng gia nh và các vn bn bên trên và
bên di ca nó.
4.8.Th <MAP NAME= “map_name”>…</MAP>
 GVHD: 



 !"#$%


• %!nh ngh a tên mô tã các vùng có th kích hot trên nh. Khi nhn vào
các vùng này, mt liên kt ngoài s) c kích hot ch n mt tài liu
khác ch !nh b#i URL trong th <AREA>
<AREA SHAPE=value COORDS= “…” HREF= “URL” ALT= “”>
• %!nh ngh a mt vùng trên hình nh mà khi nhn vào ó s) kích hot
mt liên kt ngoài n mt tài liu khác c ch !nh b#i URL thuc
tính HREF.
• SHAPE ch !nh hình dng ca vùng, value có th là POLYGON,
RECT, ho(c CIRCLE, m(c !nh là RECT.

• COORDS ch !nh ta  ca vùng, tng 'ng nh sau:
- POLYGON: Ta  là “P1
x
, P1
y
, P2
x
, P2
y
,,…”.
- RECT : Ta  là “P1
x
, P1
y
, P2
x
, P2
y
”.
- CIRCLE : Ta  là “X, Y, RADIUS”
4.9. Th liên kt <A>…</A>:
% to ra mt liên kt n các trang Web khác ho(c liên kt n các
bookmark ngay trên trang, bn s dng th <A>…</A> vi thuc tính HREF
bên trong th m# <A> nh sau:
<A HREF= “”>Link</A>
Bn có th to liên kt cho mt hình nh nh sau:
<A HREF= “”>
<IMG SRC= “D:/WWW/images/mypicture.jpg”>
</A>
Bookmark là mt im ánh du trên trang Web. T& trên cùng mt

trang, ta có th n bookmark này ho(c t- các trang Web khác thông qua các
th siêu liên kt.
% to ra mt bookmark, ta !nh ngh a nh sau:
z, ,'s{h==7@i|17V@7z},|
4.9. Phân cách các ph n ca tài liu
- Th <Hn ALIGN=CENTER/LEFT/RIGHT>Text</Hn>
 Ch'a các tiêu  ca các phn theo nhiu cp trong tài liu, trong ó
n là s t& 1 n 6.
 Thuc tính ALIGN xác !nh hin th! các tiêu  dng canh gia, canh
trái, canh phi.
- Th <BR>:
 Ch !nh xung dòng.
- Th <CENTER>Text</CENTER>
 Ch !nh phn vn bn c canh gia/ canh trái/ canh phi
- <HR SIZE=number WIDTH=number/percent COLOR=color> :
 K) ng ngang phân cách các phn ca trang Web
 Number thuc tính ca SIZE ch  dày ca ng k).
 GVHD: 



 !"#$%


 Number thuc tính ca WIDTH dùng khai báo  rng tuyt i (Tc
s pixel), và khai báo percent khai báo s phn trm so vi  rng
ca trang. M(c !nh ng k) s) có  rng là toàn b  rng ca
trang.
 %ng k) này có th c canh trái, phi, hay canh gia d-a vào
thuc tính ALIGN=LEFT/RIGHT/CENTER.

4.10. Th <PREV>Text</PREV>
 Ch !nh Text hin th! khi nó c son.
4.11. Th <ADDRESS>Text<ADDRESS>
 Ch !nh phn vn bn s) dng nghiên thng c dùng  ch !nh
các !a ch Email, thng (t # cui trang.
4.12. Các th to danh sách
• Th <OL>…</OL>:
o Khai báo danh sách có ánh s th t các mc
o M!i mc trong danh sách c ánh du b"ng th <LI>
• Th <UL>…</UL>:
o Khai báo danh sách không ánh s th t các mc.
o M!i mc trong danh sách c ánh du b"ng du tròn (Bullet).
o M!i mc trong danh sách c ánh du b"ng th <LI>.
• Th <MENU>…</MENU>:
o Khai báo menu.
o M!i mc trong menu c ánh du b"ng th <LI>
• Th <DIR>…</DIR>:
o Khai báo danh sách các th mc.
• Th <LI>…</LI>:
o nh ngha mt mc trong danh sách.
• Th <DL>…</DL>:
o Khai báo danh sách các nh ngha hoc bng chú gii các thut
ng (Definition List/Glossary).
o M!i thut ng c ánh du b"ng th <DT>.
• Th <DT>Text:
o nh ngha mt thut ng (Definition Term).
• Th <DD>Text:
o Xác nh ngha nh ngha tng ng cho mt thut ng
 GVHD: 




 !"#$%


D"E"OF+"/)
IV.1. Chú thích và mt s ký t c bit
HTML c*ng cho phép a vào các chú thích trong tài liu ca nó. Ngoài ra
HTML c*ng a vào mt s ký t- khóa, do ó phi dùng mt s quy c khi s dng
các ký t- này nh các vn bn trong tài liu HTML.
<!- - Nhung gi trong cap the nay la chu thich - ->
&lt Dùng thay cho ký t- <
&gt Dùng thay cho ký t- >
&amp Dùng thay cho ký t- &
$quot Dùng thay cho ký t- “”
IV.2. Khung (Frame)
Khung c xem nh là mt trang Web c lp c chen vào bên trong mt
trang Web khác. Mi khung con s) có mt Scrollbar riêng khác vi thanh cun ca
trình duyt Web cung cp cho trang Web chính.
Trong các trang Web thông thng phn thân ca tài liu c (t gia hai th
<BODY></BODY>. Trong trng hp các khung, phn thân ca tài liu c (t
gia hai th <FRAMSET> và </FRAMSET>.
Các th sau ây s) to ra các khung ch'a thông tin khác nhau trên mt trang
Web khác.
<FRAMESET ROW=“h_zone1”,“h_zone2”, h_zone3,…”>…</FRAMESET>
• Cho phép phân chia mt vùng thành nhiu vùng con theo chiu ngang.
• Mi mc h_zone xác !nh chiu cao ca vùng con, và có th c a
vào theo 3 dng:
o n: Mt s ch nh chiu cao theo s pixel.
o N%: Ch nh chiu cao theo ph n trm ca kích thc vùng cha.

o *: Ch nh cho trình duyt cung cp cho vùng con tt cã không gian
có th.
<FRAMESET COLS=“w_zone_1,w_zone_2, w_zone_3…”>…</FRAMESET>
• Cho phép phân chia mt vùng thành nhiu vùng con theo chiu dc.
• Mi mc w_zone_n xác !nh  rng ca vùng con, và có th c a
vào theo 3 dng tng t- nh ROWS.
<FRAMESET SRC=”URL” NAME=”zone_name” MARGINWIDTH=”n”
MARGINHIEGTH=”N” FRAMEEBORDER=number SCROLLING=
“yes/no”/auto NORESIZE>
• Cho phép !nh dng các vùng con ã c !nh ngh a b#i
<FRAMESET>.
• SRC: Ch !nh URL ca tài liu s) c hin th! trên min con này.
• NAME: Dùng (t tên cho vùng.
• MARGINWIDTH: Cho phép các ch !nh s pixel trng n gia l trái và
phi ca khung vi tài liu hin th! trong khung.
 GVHD: 



 !"#$%


• MARGINHEIGTH: Cho phép các ch !nh s pixel trng n gia l trên
và di ca khung vi tài liu hin th! trong khung.
• FRAMEBORDER: Quy !nh ng vin quanh khung theo s pixel.
M(c !nh là 0, t'c là không có ng vin.
• SCROLLING: Ch !nh khung có thanh cun (Yes) hay không có thanh
cun (No), ho(c tùy vào trình duyt (Auto).
• NORESIZE: Ch !nh không th thay ,i kích thc ca khung.
<NOFRAME>Text</NOFRAME>

Ch !nh v! trí s) hin th! Text ti v! trí ca khung trong trng hp trình duyt
không h, tr cho các trang khung.
IV.3. Biu mu (FORM)
Biu m+u là ni cho phép ngi dùng nhp vào các thông tin. Các thông tin có
th c a vào di dng: Nhp vào các dòng ký t-, ánh du vào các tùy chn…
<FORM METHOD= “POST/GET” NAME= “name” ACATION= “URL”
[TARGET= “FRAME”]>
</FORM>
• Khai báo mt biu m+u.
• METHOD ch !nh phng pháp biu m.u chuyn thông tin cho các
tp tin th-c thi x lý thông tin nhp.
• ACTION ch !nh URL ca tp tin th-c thi.
• TARGET ch !nh tên khung, ni mà thông tin s) hin th!.
<TEXTAREA NAME= “name” ROWS= “n” COLS= “n”></TEXTAREA>
• Khai báo mt vùng text nhiu dòng, cho phép nhp liu kiu d liu
kiu vn bn có s dòng cha xác !nh trc. Tag này (t gia
<FORM> và </FORM>, và có th dùng nhiu tag này  nhp nhiu
thuc tính thông tin.
• NAME ch !nh tên ca thuc tính thông tin.
• TYPE ch !nh kiu ca thuc tính thông tin., có th là:
- Text: Dùng nhp vào thông tin cho mt trng d liu.
- Radio: Dùng  chn các phng án loi tr& nhau (Radio button).
- Checkbox: Cho phép chn các phng án không loi tr nhau
(Checkbox).
- Submit: Dùng thit lp các nút nhn (Push button) cho mnh lnh
kt thúc vic nhp thông tin cho biu m.u, gi thông tin v Server.
- Reset: Dùng thit lp các nút nhn (Push button) cho mnh lnh xóa
các thông tin ã nhp  nhp li t& u.
<SELECT NAME= “name” SIZE= “number” MULTIPLE>…</SELECT>
• Cho phép nhp liu cho mt thuc tính thông tin bng cách chn mt

ho(c nhiu tùy chn (option) trong s các giá tr! tùy chn ã khai báo
trc. Hin th! ca th này trên trang Web s) là mt hp có m*i tên
xung lit kê danh sách các tùy chn. Tag này phi (t gia <FORM>
và </FORM>, và có th dùng nhiu tag này  khai báo nhiu thuc
tính thông tin theo dng tùy chn.
 GVHD: 



 !"#$%


• NAME ch !nh tên ca thuc tính thông tin
• SIZE ch !nh s tùy chn s) c hin th! trong hp c xác !nh b#i
number. Mun hin các tùy chn còn li, ta nhn m*i tên xung.
• MULTIPLE: nu có s) cho phép chn nhiu tùy chn.
<OPTION VALUE= “value” SELECTED>Text</OPTION>
• Dùng khai báo mt tùy chn cho tag SELECT. Tag này phi (t gia
<SELECT> và </SELECT>, và có th dùng nhiu tag này  khai báo
nhiu tùy chn.
• VALUE: Khai báo giá tr! s) chuyn n Server khi ta chn tùy chn
này.
• SELECTED: Nu có s) ch !nh ây là giá tr! m(c !nh.
• Text: Ch !nh dòng text i din cho tùy chn khi hin th! trên trang
Web.
V.Cu trúc ca th <SCRIPT> v#i JavaScript:
Cu trúc ca mt th <Script> trong mt trang Web c mô t nh sau:
<SCRIPT LANGUAGE= “JavaScript”>
// Khai bao bien:
function tenham() {

// Khai bao bien va cac cau lenh
// Cac phat bieu dieu kien
}
</SCRIPT>
Bn có th khai báo th <SCRIPT> bt k0 ni nào trong trang Web. Nhng
theo cu trúc ca trang HTML, bn nên khai báo th <SCRIPT> trong th$ <HEAD>.
Tuy nhiên,  chúng hp logic lp trình, bn cn khai báo trc khi gi chúng,
b/i khi trang Web c load t& trình duyt, nó s) np t& u trang.
Nu u trang Web có gi mt phng th'c mà cha c !nh ngh a trc
ho(c !nh ngh a trc khi gi thì s) phát sinh li trên trình khách.
 GVHD: 



 !"#$%


%s E%u`R4~,R,E%u`
$$$$
D(Q)-HR"KS
• Là 1 ngôn ng dng Script
• Thông d!ch ngay ti trình duyt.
• Có 2 dng th'c c bn: client-side JavaScript và server-side JavaScript.
• Là 1 ngôn ng hng i tng, cung cp sn 1 s i tng có sn.
• %c lp vi nn h iu hành (platform-independent) mi1n là trình duyt
có kh nng thông d!ch JavaScript (JavaScript-enabled).
• Thit k nhm mc tiêu m# rng kh nng tng tác ca các 'ng dng d-a
trên nn tng Web vi ngi s dng.
I.1. Các t khóa ca JavaScript:


abstract else int switch
boolean extends interface synchronized
break false long this
byte final native throw
case finally new throws
catch float null transient
char for package true
class function private try
const goto protected typeof
continue if public var
default implements return void
delete import short while
do in static with
double instanceof super

I.2. nh danh trong JavaScript:
Các qui t#c khi t tên bin:
• Tên phi b"t u bng ch cái hay du gch di (_).
• Các ký t- còn li là ký t-, ký s hay ký t- gch di.
• Không dùng các t& khóa trong JavaScript  làm tên bin.
• Không dùng khong tr"ng và các ký t- (c bit trong tên.
I.3. nh danh trong JavaScript:

HP L KHÔNG HP L

mynumber my number
student_no student.no
male *male
year2001 2001th


DF"T-TOF
 GVHD: 



 !"#$%


Mi 'ng dng Web u có s dng ít hay nhiu nhng k!ch bn JavaScript,
nhm làm tng thêm tính thân thin ngi dùng, kim tra d liu nhp, thao tác trên
trình duyt,…
Khi duyt trang Web, nu trang Web cho phép ngi dùng nhp liu, bn cn
phi vit mt s phng th'c JavaScript  kim soát d liu nhp vào có hp l hay
không? % th-c hin iu này, bn cn phi khai phng th'c kim tra d liu bng
JavaScript hay VBScript.
Vi trng hp bn ã submit d liu lên Server, trang này ã mt d liu
trc, khi tr# li bn cn thông báo cho ngi dùng bit d liu nào không hp l, nh
th s) g(p nhiu vn .
% gii quyt vn  trên, mt gii pháp cho n bây gi v.n còn hiu qu là
s dng nhng phng th'c JavaScript  kim tra d liu trc khi submit lên Server
Side.
Còn nhiu ch'c nng khác na mà JavaScript óng vai trò quan trong trong
lp trình Web.
II.1. Nguyên tc trong JavaScript
o Mi câu lnh trong JavaScript u kt thúc bng du chm ph+y “;”
o Các iu kin c khai báo trong c(p du ngo(c n ( ).
o Hàm c !nh ngh a bng t& khóa function, các bin a vào không
cn khai báo kiu d liu.
o Tuy nhiên,  khai báo bin, bn cn t& khóa var 'ng trc tên bin.
o Trong phát biu iu kin, nu có nhiu hn mt câu lnh, bn cn bao

trong c(p du ngo(c nhn { }.
II.2. Tham chiu n th HTML
% tham chiu n th$ HTML, bn cn xác !nh loi th$, thuc tính ca th$.
% HTML c tham chiu, chúng cn phi có Name và ID nhn dng.
Sau ây là bng tham chiu n giá tr ca th HTML:

Th Ví d

Text document.form.txtUsername.value
Hidden document.form.txtFrom.value
Password document.form.txtPass.value
radio document.form.rdGioitinh.value

Tuy nhiên, ôi khi bn mun tham chiu n các thuc tính khác nh chiu dài
ca các th$ trên, bn c*ng có th s dng các thuc tính nh bng trên, c th nh sau:

Bng tham chiu n chiu dài ca th HTML

Th Ví d

 GVHD: 



 !"#$%


Text document.form.txtUsername.length
Hidden document.form.txtFrom.length
Password document.form.txtPass.length

radio document.form.rdGioitinh.length

Ngoài ra,  tham chiu n trng thái ca mt s th$ trên, bn c*ng có th s
dng thuc tính trng thái nh sau:
Bng tham chiu n chiu dài ca th HTML

Th Ví d

select document.form.cbThanhpho.selectedIndex
select document.form.cbNganhdaotao.selected
checkbox document.form.chkId.checked
radio document.form.rdGioitinh.checked

Ngoài ra còn nhiu cách tham chiu n các th$ nm ngoài th$ Form na.
DFN./T".UV((+SK&(R"KS
Khi ngi dùng th-c hin mt hành ng nào ó trên mt s th$ HTML, bn
có th s dng mt s phng th'c ca JavaScript hay phng th'c do ngi dùng
!nh ngh a thông qua bin c phát sinh.
Danh sách mt s bin c xãy ra trên các th$ HTML khi s dng JavaScript
c trình bày nh sau:
Mt s bin c trên th HTML:

Bin c Din gii

OnClick Khi ngi dùng nhn nút chut trên th+
OnSubmit Khi ngi dùng  trình thông tin lên trình ch
OnReset Khi ngi dùng hy b, nhng thông tin ã nhp
OnActive Khi form hot ng.
OnLoad Khi form c np lên trình duyt
OnUnload Khi form c óng li

OnMouseover Khi chut di chuyn vào th+
OnMouseOut Khi chut di chuyn ra kh,i th+
OnBlur Khi con tr, di chuyn ra khõi th+
OnKeyPress Khi phím c n

 GVHD: 



 !"#$%


DFN.SUG(W"UV((+SK&(R"KS
Ngoài các phng th'c JavaScript do ngi dùng !nh ngh a, JavaScript còn
có cã mt th vin phng th'c cho phép ngi dùng th-c hin mt s hành ng nào
ó thay vì s dng thông qua các bin c.
1. Mt s phng thc ca JavaScript:
alert(str) - Xut hin mt hp thoi vi ni dung là str
confirm(str) - Hp thoi xác nhn g*m 2 nút OK và Cancel
promt(str,default) - Hp thoi vi ni dung là str, giá tr
mnh  default cho phép ngi dùng nhp vào giá tr.
f.submit() – Submit form có tên f
f.reser() – Reset form có tên f
…………………………………
Ngoài ra, JavaScript còn có nhiu phng th'c iu khin ca s, trình duyt
c lit kê mt s di ây:
2. Mt s phng thc JavaScript iu khin ca s trình duyt

Phng thc Din gii


window.close() (óng ca s trình duyt
window.open(URL) M mt ca s trình duyt vi a ch URL
window.history.back(i) Tr v trang trc ó i ln.
window.history.go(-i) Tr v trang trc ó i ln.
window.print() M hp thoi Print  in trang Web
document.write(str) In chui str lên trang
window.external.AddFavorite(URL)Thêm URL vào Favorite ca browser

D/TK&(R"KS
% khai báo bin trong JavaScript, bn cn dùng t& khóa var i trc tên
bin. C*ng nh ngôn ng C, bin có th c kh#i to giá tr! trong khi khai báo hay có
th gán khi dùng nh sau:
var i=0;
var j=0; str= “I am Khoa”;
var x, y;
// Day la chu thich
// Phep gan cac bien nhu trong ngon ngu C hay Java:
i++; // i=i+1;
i ; // i=i-1;
i-=2; // i=i-2;
str= “I love Java”;
str+= “Script”; // str=str+ “Script” = “I love JavaScript”
 GVHD: 



 !"#$%


Các phép toán trong JavaScript:

Tng t- nh Java, bn có mt s phép toán so sánh nh sau:

Phép toán Din gii

== So sánh bng
!= So sánh khác nhau
|| So sánh OR
&& So sánh AND
! Phép toán ph nh
?: Phép thay th phát biu if và else n gin


DSE/X-"YH-)
C*ng nh các ngôn ng lp trình khác, i vi JavaScript, bn c*ng có th s
dng mt s phát biu iu kin nh if, if…else, for, while, và switch.
1. Phát biu if:
var i=0; x=0;
i+=5;
if (i>5) {
x+=I;
i++;
}
2. Phát biu else:
i+=5;
if (i>5) {
x+=I;
i++;
}
else {
i ; x-=i;

}
3. Phát biu while:
Phát biu while dùng  l(p mt s ln không xác !nh bit trc, s ln l(p
ph thuc vào iu kin ca phát biu while nh ví d sau:
var i=0, x=0;
i+=5;
while (i>0) {
x+=i;
i ;
}
4. Phát biu for:
Phát biu for dùng  l(p li mt s ln xác !nh, s ln ph thuc vào gii
hn trên ca phát biu for nh ví d sau:
var x=0; str= “Lan thu ”;
 GVHD: 



 !"#$%


x+=5;
// Khai bao bien i ngay trong vong for, giong Java
for (var i=1; i<=x; i++) {
str+=i;
}
Ngoài ra, bn c*ng có th phát biu for in i vi các thuc tính ca i
tng hay i vi các phn t mng. Chng hn trong trng hp này, chúng ta truy
cp n các thuc tính ca i tng Scores bng cách s dng bin x nh sau:
for (x in Scores) {

// cac cau lenh;
}
5. Phát biu switch… case:
Phát biu switch dùng  r) nhánh mt s ln nht !nh trc, thay vì bn s
dng phát biu if trong trng hp này bn chuyn sang s dng phát biu switch nh
ví d sau:
switch (number(month)) {
case 1: // Thang gieng
case 3: // Thang ba
case 5: // Thang nam
case 7: // Thang bay
case 8: // Thang tam
case 10: // Thang muoi
case 12: // Thang muoi hai
return 31; // Tra ve 31 ngay
break;
case 4: // Thang tu
case 6: // Thang sau
case 9: // Thang chin
case 11: // Thang muoi mot
return 30; // Tra ve 30 ngay
break;
case 2: // Thang hai
if (isLeadYear(nam)) return 29;
else {
return 28;
}
break;
default:
return 0;

}
Nu nh có nhiu case có giá tr! ging nhau, bn có th khai báo nh trên:

case 4: // Thang tu
case 6: // Thang sau
case 9: // Thang chin
case 11: // Thang muoi mot
return 30; // Tra ve 30 ngay
break;
6. Phát biu break và continue
 GVHD: 



 !"#$%


Phát biu break dùng  thoát ra khõi vòng l(p for, while, hay switch khi cn
thit. Tng t- nh vy, phát biu continue cho phép tip tc th-c hin trong phát
biu vòng l(p for, while hay switch.
D"E"SUG(W"XFK*Z)-
Khi bn submit d liu trên Form lên Server, bn cn vit mt hàm  kim tra
d liu có hp l hay không trc khi cho phép d liu trên form c submit lên
Server.
function checkInput() {
if (document.frmDangnhap.txtUsername.value=="") {
alert ("Vui long nhap Username!");
document.frmDangky.txtUsername.focus();
return false;
}

if (document.frmDangnhap.txtPassword.value =="") {
alert ("Vui long nhap Password!");
document.frmDangky.txtPassword.focus();
return false;
}
return true;
}
Trong ví d trên, trc tiên bn kim tra giá tr! nhp vào trong th$ text có tên
txtUsername, nu giá tr! r,ng, mt thông báo xut hin nh hình bên di, và chuyn
con nháy vào th$ này bng phng th'c focus().

Tng t- nh vy, bn có th kim tra th$ password có tên txtPassword, nu
không c cung cp mt giá tr!, hay nói cách khác là  r,ng ô text password, khi
submit form, mt thông báo li s) xut hin.
Tip theo phng th'c tr v giá tr! false, iu này có ngh a là Form không
c submit cho n khi phng th'c tr v giá tr! true.
Nu c hai trng hp u hp l, có ngh a là ngi dùng có nhp d liu vào
hai th$ txtUsername và txtPassword, phng th'c trên tr v true, form c submit
theo yêu cu ca ngi dùng.
 GVHD: 



 !"#$%


Nh vy ta s) gi phng th'c trên nh sau:
<FORM NAME=frmDangnhap METHOD=“POST” onsubmit=“return checkInput();”
ACTION= “taikhoan.php”>
Nu phng th'c tr v true, form này s) c submit. Ngc li, trong

trng hp ngi dùng không nhp !a ch Username, mt thông báo li s) hin ra và
con tr/ nhãy n th$ txtUsername yêu cu nhp li. Tng t- i vi trng hp
không nhp Password.
DR"KS&/RI"F&*I
• S dng Mô hình i tng trong JavaScript (JavaScript Object Model)
nhm iu khin ca s trình duyt ho(c vn bn HTML.
• Cu trúc ca mô hình là 1 cây phân cp vi các loi i tng nhm mc
tiêu cung cp cho NSD nhng i tng d1 thao tác và s dng, cho phép
tác ng n trang web , ca s, trình duyt,… mt cách d1 dàng.
• NSD có th dùng các phng th'c và thuc tính ca các i tng ca
JavaScript  tác ng n ca s trình duyt, các frame và các thành phn
HTML ang hin trong ca s trình duyt.


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×