Professional Documents
Culture Documents
1.
2.
Ngn Ng HTML...................................................................................................... 5
2.1.
HTML L G?.................................................................................................... 5
2.2.
Website Tnh...................................................................................................... 5
2.3.
Ai Lm Web Tnh................................................................................................ 7
2.4.
Cu trc mt website............................................................................................ 7
2.5.
2.6.
Cc th thng gp............................................................................................ 10
2.6.1.
Th Heading H1->H6................................................................................... 10
2.6.2.
2.6.3.
Th Paragraph............................................................................................ 12
2.6.4.
Th Phn on Br v Hr...............................................................................13
2.6.5.
Th Trnh By Vn Bn................................................................................14
2.6.6.
HTML List................................................................................................ 17
2.6.7.
Th IMG.................................................................................................. 19
2.6.8.
HTML Link............................................................................................... 19
2.6.9.
HTML table............................................................................................... 20
2.7.
3.
Mt s bi tp v HTML..................................................................................... 22
S Lc V CSS..................................................................................................... 22
3.1.
CSS L G?..................................................................................................... 22
3.2.
c Tnh C Bn Ca CSS.................................................................................. 23
3.3.
3.4.
C Php Ca CSS.............................................................................................. 26
3.5.
3.6.
3.6.1.
3.6.2.
nh Ngha Font......................................................................................... 31
3.6.3.
3.6.4.
3.6.5.
4.
5.
3.6.6.
3.6.7.
3.6.8.
3.6.9.
3.6.10.
3.7.
Pseudo-classes.................................................................................................. 39
3.8.
Bi Tp V CSS................................................................................................ 40
JavaScript.............................................................................................................. 40
4.1.
Khi Nim....................................................................................................... 40
4.2.
4.3.
Th Noscript.................................................................................................... 42
4.4.
4.5.
4.6.
4.7.
4.8.
4.9.
Hm.............................................................................................................. 50
4.10.
Mng.......................................................................................................... 54
4.11.
DOM Element............................................................................................... 58
4.12.
Bi Tp V Javascript...................................................................................... 63
PHP..................................................................................................................... 63
5.1.
PHP L G?..................................................................................................... 63
5.2.
5.3.
5.4.
Hng S.......................................................................................................... 67
5.5.
Ton T.......................................................................................................... 67
5.6.
5.7.
5.8.
5.9.
5.10.
Lp Trong PHP.............................................................................................. 76
5.11.
5.12.
Hm Trong PHP............................................................................................ 80
6.
7.
5.13.
File Upload.................................................................................................. 82
5.14.
Session V Cookie......................................................................................... 86
PHP V MySQL...................................................................................................... 88
6.1.
6.2.
Kt Ni PHP V MySQL..................................................................................... 92
Chun B......................................................................................................... 94
7.2.
Xy Dng Gi Hng.......................................................................................... 95
YII Framework................................................................................................. 95
8.2.
M Hnh MVC................................................................................................. 97
8.3.
Cc component, extension................................................................................... 98
1. Gii thiu mn hc
Mn hc xy dng ng dng web bng ngn ng PHP v MySQL.
Qua kha hc, chng ta s hiu c khi nim web tnh, web ng, qu trnh xy dng mt
trang web. Cng nh hiu c vai tr ca tng ngi nh Design, Html, Dev, QC. T y, ta c
th xy dng cho mnh mt trang web n gin. Vic ny gip ta c tin d dng hc thm
nhng framework nh YII, Zend, Codeigniter, Laravel,...
Trong kha hc chng ta s hc qua cc phn c bn nh:
HTML
CSS
Javascript
Mysql
PHP
2. Ngn Ng HTML
2.1. HTML L G?
-
HTML (ting Anh, vit tt cho HyperText Markup Language, hay l "Ngn ng nh
du Siu vn bn") l mt ngn ng nh du c thit k ra to nn cc trang
web vi cc mu thng tin c trnh by trn World Wide Web. HTML c nh ngha
nh l mt ng dng n gin v c s dng trong cc t chc cn n cc yu cu
xut bn phc tp. HTML tr thnh mt chun Internet do t chc World Wide Web
Consortium (W3C) duy tr. Phin bn chnh thc mi nht ca HTML l HTML 4.01
(1999). Sau , cc nh pht trin thay th n bng XHTML. Hin nay, HTML ang
c pht trin tip vi phin bn HTML5 ha hn mang li din mo mi cho Web.
web.
Cc th html cn c gi l cc phn t html ( hay cc element ).
Website tnh (static web) l nhng website khng c h thng qun l ni dung, m ni
dung c gn cng. Hin nay web tnh hu nh t tn ti hoc ch tn ti vi nhng
cp nht.
Website tnh l website ch bao gm cc trang web tnh v khng c c s d liu i km.
Website tnh thch hp vi c nhn, t chc, doanh nghip va v nh mi lm quen vi
mi trng Internet.
u im:
-
tng v ho v m thut trn ton din tch tng trang web tnh.
Tc truy cp nhanh: Tc truy cp ca ngi dng vo cc trang web tnh nhanh
hn cc trang web ng v khng mt thi gian trong vic truy vn c s d liu nh cc
.html, .htm, trong trang web tnh khng cha du chm hi (?) nh trong web ng.
Chi ph u t thp: Chi ph xy dng website tnh thp hn nhiu so vi website ng v
khng phi xy dng cc c s d liu, lp trnh phn mm cho website v chi ph cho
vic thu ch cho c s d liu, chi ph yu cu h iu hnh tng thch (nu c).
Nhc im:
-
Kh khn trong vic thay i v cp nht thng tin: Mun thay i v cp nht ni dung
thng tin ca trang website tnh Bn cn phi bit v ngn ng html, s dng c cc
chng trnh thit k ho v thit k web cng nh cc chng trnh cp nht file ln
server.
Thng tin khng c tnh linh hot, khng thn thin vi ngi dng: Do ni dung trn
trang web tnh c thit k c nh nn khi nhu cu v thng tin ca ngi truy cp tng
Nhng cng ty chuyn thit k giao din web s lm web tnh theo yu cu ca khch
hng. Sau web tnh s c bn giao cho bn b phn pht trin tip tc xy dng
Nhng ngi lm web tnh thng c gi l HTML. Khc vi nhng ngi Designer,
Designer l s v pht tho trao web bng Photoshop theo yu cu ca khch hng.
Mi trang web u c cch th hin cu trc khc nhau, c trang 1 ct, c trang 2 v cng c
trang cha nhiu ct, bn di y chng ta tham kho mt trang n gin s dng 2 ct
layout.
-
Phn u: header, c th cha logo, cu slogan, cc lin kt, cc banner lin kt, cc
Phn thn ca trang: page body, phn ny cha phn ni dung chnh (content) v
dng xem.
Phn ni dung ph: sidebar, phn ny c th cha lin kt ph ca tng trang (local
navigation), hoc cc banner cha lin kt lin quan, hoc c th dng cha cc
nh...
C nhiu th, mi th c 1 tn v mang ngha khc nhau. C 2 loi th: th ng v
2.6. Cc th thng gp
2.6.1. Th Heading H1->H6
C 3 loi ch thch (comment): comment inline, comment line v comment multi line.
Dng cp th <!-- ni dung ch thch --> ch thch mt dng ny.
V d:
2.6.3. Th Paragraph
-
V d:
<H1>The Paragraph element</H1>
<P>The paragraph element is used to denote paragraph blocks</P>
<P>This would be the second paragraph.</P>
Thuc tnh:
ALIGN=left/center/right:
V d:
<P ALIGN=LEFT> ... </P> C ngha: Tt c text trong paragraph ny s c canh v
bn tri l trang. y cng l mc nh.
<P ALIGN=CENTER> ... </P> Canh gia
<P ALIGN=RIGHT> ... </P> Canh phi
2.6.4. Th Phn on Br v Hr
2.6.5. Th Trnh By Vn Bn
Th font
Thnh phn chnh l <font size=value>.
Gi tr values t 1-7. Mc nhin font size l 3.
Gi tr thay i tng i l '+' hay '-' so vi gi tr chun.
V d:
<font size=4>changes the font size to 4</font>
<font size=+2>changes the font size to basefont size ... +2</font>
Thuc tnh:
color = #rrggbb hay color = color: xc lp mu ging nh bgcolor
V d:
<font color="#ff0000">this text is red.</font>
hay
<font color="red">this text is also red.</font>
face=name [,name] [,name]: ch nh font ch khi hin th text.
V d:
<font face=".vntime, .vnarial"> this text will be displayed in either .vntime hay .vnarial,
depending on which fonts are installed on the browsers system. </font>
Cc th khc
- Pre
- Tt
- Cite
- dfn
- code
- kbd
- var
- q
- blockquote
- address
OL tag
Bt u l <ol> v kt thc </ol>
C nhiu item, mi item <li>.</li>
Attribute type:
o type="1" - style: 1, 2, 3, ...
o type="i" - style: i, ii, iii, iv, ...
o type="I" - style: I, II, III, IV, ...
o type="a" - style: a, b, c, ...
o type="A" - style: A, B, C, ...
Mc nh, bt u l 1 cho type=1, nu mun bt u l mt s khc, ta dng attribute
start=4 trong <ol>.
Ex.:
<ol start="4">
definition list.
<dt></dt> vit tt ca ch "defines an item" c ngha l xc nh (hay nh ngha) mt
2.6.7. Th IMG
-
href="index.php".
Target: Cch thc open link.
Name: cho php nhy n mt v tr c ch nh.
<a href="#top"> return top</a>
khng c vin.
CELLSPACING="value": Ch nh khong cch gia cc . Gi tr mc nh l 2.
CELLPADDING="value": Ch nh khong trng gia ng vin v . Gi tr mc nh
l 1
WIDTH="value or percent": Ch nh rng bng tnh theo pixels, hay % ca ca s
hin th.
HEIGHT="value or percent": Ch nh cao bng.
ALIGN="left/right": Canh l tri, phi.
VALIGN="top/bottom": Canh l trn, di.
BGCOLOR="#rrggbb|colour name": Ch nh mu nn cho bng.
BORDERCOLOR="#rrggbb|colour name": Ch nh mu cho ng vin ca bng.
BORDERCOLORLIGHT="#rrggbb|colour name": Ch nh mu cho phn c chiu
sng ca ng vin.
BORDERCOLORDARK="#rrggbb|colour name": Ch nh mu cho phn b ti ca
ng vin.
BACKGROUND="URL of image": Ch nh file hnh nh dng lm nn cho bng.
FRAME: i hi thuc tnh BORDER phi c hiu lc khi s dng thuc tnh ny. C
cc gi tr sau:
o
o
o
o
o
o
o
o
bng.
Lhs Ch hin th ng vin bn tri.
Rhs Ch hin th ng vin bn phi.
Vsides Hin th cc ng vin ng trong bng, k c ng tri v phi bng.
Box Ch hin th ng vin bao chung quanh bng.
2.7. Mt s bi tp v HTML
3. S Lc V CSS
3.1. CSS L G?
-
C th thay i thuc tnh tng trang hoc c site nhanh chng (cascading)
CSS quy nh cch hin th ca cc th HTML bng cch quy nh cc thuc tnh ca cc
th (font ch, mu sc). cho thun tin bn c th t ton b cc thuc tnh ca
th vo trong mt file ring c phn m rng l ".css" CSS n ph v gii hn trong thit
k Web, bi ch cn mt file CSS c th cho php bn qun l nh dng v layout trn
nhiu trang khc nhau. Cc nh pht trin Web c th nh ngha sn thuc tnh ca mt
s th HTML no v sau n c th dng li trn nhiu trang khc.
d: *{ margin: 0; padding:0; }
Selector ID: trong mt trang html, selector id l duy nht. K hiu: #ten_id. V d:
Attribute Selector
C php: [ten_attribute]{ css_attr: css_value; }
font-family: arial
}
Mu nn cho vn bn:
C php:
Background-color: #m mu //tn mu
V d: <p style="background-color: blue">on vn bn mu nn mu xanh</p>
p{
line-height: 150%; // line-height: 15px;
}
-
Dng hng:
ging hng cho mt on vn bn chng ta s dng thuc tnh text-align: v tr;
p{
text-align: left; /* left | center | right */
}
p.uppercase {
text-tranform: uppercase;
}
p.lowercase {
text-tranform: lowercase;
}
p.capitalize {
text-tranform: capitalize;
}
}
h3 {
font-size: 12px;
}
Font-style:
Ch m, ch nghing,... c t vi thuc tnh font-style:
p{
font-style: italic; /* normal | italic | oblique */
}
Font-weight:
Khi chng ta mun thay i m nht ca vn bn chng ta s dng thuc tnh fontweight:. Chng ta c th t gi 3 loi gi tr cho thuc tnh ny 1. Normal (bnh
thng), 2. Bold (m), 3. 300 (t dng s)
h3 {
font-weight: bold;
}
border-color:
border-width:
border-style:
Gi tr
thin
medium
thick
length
1
2
3
4
Chn kiu ca ng vin
border-style
1
2
3
4
5
6
7
8
9
10
none
hidden
dotted
dashed
solid
double
groove
ridge
inset
outset
Vi 4 pha ca i tng ta c 4 thuc tnh border tng ng:
-
border-top:
border-right:
border-bottom:
border-left:
Pha
Thuc tnh
border-top-color:
top
border-top-width:
border-top-style:
border-right-color:
right
border-right-width:
border-right-style:
border-bottom-color:
bottom
border-bottom-width:
border-bottom-style:
border-left-color:
left
border-left-width:
border-left-style:
Chng ta c th dng phng php vit m gin lc (shorthand) vit cc thuc tnh
ca ng vin gn hn. Gi s chng ta t thuc tnh border ca th <div> vi rng
bng 1, kiu solid v mu l #CC0000
div.border {
border: 1px solid #CC0000;
}
margin-top:
margin-right:
margin-bottom:
margin-left:
div.margin {
margin: 10px 4px 5px 9px; /* top | right | bottom | left*/
}
padding-top:
padding-right:
padding-bottom:
padding-left:
}
Gi tr: visible, hidden, scroll, auto, inherit
V d: vi overflow: hidden th khi text trn ra khi box th text s b n i.
absolute: nh v tr tuyt i cho thnh phn theo thnh phn bao ngoi (thnh
phn nh v tr tng i position: relative;) hoc theo ca s trnh duyt.
inherit: Xc nh tha hng thuc tnh t thnh phn cha (thnh phn bao
ngoi).
dng mc nh.
block: Thnh phn hin th nh mt khi, khi s dng gi tr block thnh phn s
3.7. Pseudo-classes
:active
:first-child
:focus
:hover
:lang(word)
:last-child
:link
:visited
Pseudo Class trong CSS c s dng vit CSS cho mt trng thi no ca mt phn
t. V d vit CSS i mu cc lin kt khi r chut vo, i thuc tnh mt phn t khi nhp
vo,.Cc pseudo class c khai bo ti vng chn, t ng sau vng chn v c du hai
chm (:) ngn cch. V d: #link:hover (vng chn ca #link khi r chut vo).
Trong bi vit ny, v n thuc CSS cn bn nn mnh ch ni qua mt s pseudo class n
gin nht m cng thng gp nht khi vit CSS cho website
Mt s Pseudo Class thng dng
-
:visited c s dng cho lin kt, chn lin kt khi c truy cp (da vo History
trn trnh duyt).
:link c s dng cho lin kt, chn lin kt khi cha nhp vo.
3.8. Bi Tp V CSS
4. JavaScript
4.1. Khi Nim
Javascript l mt ngn ng thng dch, chng trnh ngun ca n c nhng hoc tch hp
vo tp tin HTML. Khi trang web c ti trong trnh duyt h tr javascript, Trnh duyt s
thng dch v thc hin cc lnh Javascipt.
JavaScript l mt trong nhng ngn ng lp trnh ph bin nht th gii, n l ngn ng cho
HTML, web, server, PC, laptop, tablet, smart phone
-
c tnh ca Javascript:
-
n gin
ng
Hng i tng
4.3. Th Noscript
Cp th ny dng nh r ni dung thng bo cho ngi s dng
bit trnh duyt khng h tr JavaScript. Khi trnh duyt s khng hiu th <NOSCRIPT>
v n b l i, cn on m nm trong cp th ny s c Navigator hin th. Ngc
li, nu trnh duyt c h tr JavaScript th on m trong cp th <NOSCRIPT> s c b
qua. Tuy nhin, iu ny cng c th xy ra nu ngi s dng khng s dng
JavaScript trong trnh duyt ca mnh bng cch tt n i trong hp Preferences/Advanced.
V d:
<noscript>Trang web ny c h tr javascript. Bn vui lng enable javascript</noscript>
Lnh confirm('Are you sure?'): hin th hp thoi c ty chn Yes/No cho ngi dng chn.
Lnh window.prompt('hello what is your name?',''): nhc ngi dng nhp vo hp thoi.
Kiu rt gn
X+=y
x-=y
X*=y
x/=y
X%=y
Miu t
Cng 2 s trong javascript
Tr 2 s
Nhn 2 s
Chia ly phn nguyn
Chia ly phn d
Cc php so snh:
Php so sanh
==
!=
>
>=
<
<=
&&
||
Miu t
So snh bng
So snh khng bng
So snh ln hn
So snh ln hn hoc bng
So snh b hn
So snh b hn hoc bng
Ton t v
Ton t hoc
If..else..: Cu lnh ny dng kim tra iu kin, n thc thi vic tnh ton trn mt biu
thc, n kim tra iu kin l ng hay sai thc hin khi lnh tng ng. Mt cu lnh if
n gin c c php lnh nh sau:
if (iu kin )
{
// cc cu lnh ng vi iu kin ng
}
y l c php lnh n gin, n s kim tra nu iu kin sau theo sau if l ng th khi
lnh s c thc thi.
u tin chng trnh tm mt nhn trng khp vi gi tr biu thc v thi hnh cu lnh
tng ng nu so khp thnh cng. Nu nhn so khp khng c tm thy, chng trnh s
tm n khi lnh trong la chn default, v nu tm thy s thc hin cu lnh tng ng.
Nu khng tm thy cu lnh default, th chng trnh tip tc thi hnh cu lnh tip theo sau
cu lnh switch.
Cu lnh ty chn break kt hp vi mi trng hp m bo rng chng trnh s thot
khi lnh switch khi cu lnh so khp c thi hnh v tip tc thc thi cu lnh tip theo
cu lnh switch. Nu khng s dng cu lnh break th chng trnh vn tip tc thi hnh
lnh k tip trong cu lnh switch.
For: Vng lp for s thc hin lp i lp li khi lnh cho n khi iu kin l false.
S ln thc hin ca vng lp thng c iu khin thng qua mt bin m.
Cu lnh for bao gm ba thnh phn, c phn cch nhau bi du chm phy
(;). C ba thnh phn ny u khng bt buc phi c, v chng iu khin vic thc
hin ca vng lp for. Nu c nhiu cu lnh thc hin trong thn ca vng lp,
chng trnh phi s dng cp du ngoc mc ({}) cha cc cu lnh
C php lnh nh sau: for([initialExpression];[condition];[incrementExpresion]){ statements;
}
Trong :
- initialExpression: Lnh khi to, c thc hin duy nht mt ln v thng
dng khi to bin m.
- condition: iu kin ca vng lp.
- incrementExpression: Lnh tng, thay i gi tr bin m ca vng lp.
- statements: Cc lnh bn trong vng lp.
Trc ht, cu lnh ny thi hnh statement mt ln. Ti lc kt thc ca mi ln thi hnh
vng lp, condition c kim tra: Nu condition l true, th cu lnh tip tc c thi hnh
mt ln na, ngc li, nu iu kin l false, th thi hnh ngng v iu khin c chuyn
ti cu lnh k tip cu lnh dowhile.
While: Lnh while l mt cu trc lp khc trong JavaScript. N c dng thc hin
mt khi cc cu lnh chng no iu kin l true. Nu c nhiu cu lnh thc hin
trong thn ca vng lp, chng trnh phi s dng cp du ngoc mc ({}) cha
cc cu lnh .
Khc bit chnh gia vng lp while v dowhile l cc lnh trong thn vng
lp while c th khng c thc hin mt ln no v n kim tra iu kin trc, v
c th ngay t ban u iu kin l false. Tuy nhin vng lp dowhile bao gi
cng c thc hin t nht mt ln.
C php lnh nh sau:
while (condition) { statement; }
Nu iu kin l false, th cc cu lnh trong vng lp dng thi hnh v iu khin c
chuyn ti cu lnh sau vng lp. Vic kim tra iu kin xy ra trc khi cc cu lnh trong
vng lp c thi hnh. Nu iu kin tr v l true, th cc cu lnh trong vng lp c thi
hnh v iu kin c kim tra li mt ln na. Nu iu kin tr v l false, th dng thi
hnh v iu khin c chuyn ti cu lnh k tip cu lnh while.
4.9. Hm
Hm l mt trong nhng khi c bn c xy dng trong JavaScript. Mt hm
trong JavaScript kh ging vi mt th tc hay chng trnh con trong ngn ng lp
trnh. Mt hm c nh ngha l mt tp cc cu lnh, thc hin mt nhim v c
th no .
Mng
Tuy nhin, JavaScript khng c kiu d liu mng. Nhng n c mt i tng mng
c xy dng sn. dng mng trong chng trnh, ta phi s dng i tng mng v cc
phng thc ca n.
To mng
Cu php sau y dng to mt mng:
Ryan Dias
Graham Browne
David Greene
<html>
<head>
<script language="JavaScript">
<!-emp = new Array(3)
emp[0] = "Ryan Dias"
emp[1] = "Graham Browne"
emp[2] = "David Greene";
document.writeln(emp[0]);
document.writeln(emp[1]);
document.writeln(emp[2]);
//-->
</script>
</head>
</html>
M t
Join
Pop
Push
Reverse
Thm mt hoc nhiu phn t vo cui mng. Tr li phn t cui cng thm
vo.
o ngc cc phn t ca mng: phn t u tin ca mng tr thnh phn t
cui cng v phn t cui cng tr thnh phn t u tin.
Shift
Sort
Sp xp cc phn t ca mng.
<html>
<head>
<script language="JavaScript">
<!-emp = new Array(3)
emp[0] = "Ryan Dias"
emp[1] = "Graham Browne"
emp[2] = "David Greene";
emp.sort();
document.writeln(emp[0]);
document.writeln(emp[1]);
document.writeln(emp[2]);
//-->
</script>
</head>
</html>
</SCRIPT>
</HEAD>
</HTML>
4.11.
DOM Element
i vi lp trnh web, kin thc v DOM v kh nng thao tc DOM thnh tho l hai
yu t quan trng nht. n gin l v DOM cho bn sc mnh thay i mi th ca trang web,
khi m mi ni dung u c th c thm bt xa sa mang li tri nghim v ni dung tt
nht.
DOM l tn gi tt ca (Document Object Model tm dch M hnh i tng Ti
liu), l mt chun c nh ngha bi W3C dng truy xut v thao tc trn cc ti liu c
cu trc dng HTML hay XML bng cc ngn ng lp trnh thng dch (scripting language) nh
Javascript, PHP, Python.
Ngoi ra, DOM gip thao tc d liu theo m hnh hng i tng. Cc phn t bn
trong 1 ti liu c cu trc c nh ngha thnh cc i tng, phng thc v thuc tnh c
th truy xut d dng m vn m bo tnh cu trc: mi phn t l mt i tng, s hu cc
thuc tnh v cc phng thc lm vic vi cc thuc tnh nh thm, xa, sa, cp nht.
Bn cnh , bn cng c th thm bt cc phn t ty thch, gip cho ni dung v cu trc ca
trang web lun cp nht ng.
Cy cu trc DOM
Nt
i vi HTML DOM, mi thnh phn u c xem l 1 nt (node), c biu din trn 1 cy
cu trc dng cy gi l DOM Tree. Cc phn t khc nhau s c phn loi nt khc nhau
nhng quan trng nht l 3 loi: nt gc (document node), nt phn t (element node), nt vn
bn (text node).
-
Quan h gia cc nt
- Nt gc (document) lun l nt u tin.
- Tt c cc nt khng phi l nt gc u ch c 1 nt cha (parent).
- Mt nt c th c mt hoc nhiu con, nhng cng c th khng c con no.
- Nhng nt c cng nt cha c gi l cc nt anh em (siblings).
- Trong cc nt anh em, nt u tin c gi l con c (firstChild) v nt cui cng l
con t (lastChild).
Thuc tnh v phng thc thng gp
C th tham kho thm ti: http://www.w3schools.com/jsref/dom_obj_all.asp
Thuc tnh
ngha
id
className
tagName
Tn th HTML.
innerHTML
textContent
attributes
style
value
Phng thc
ngha
getElementById(id)
getElementsByTagName(tag
name)
getElementsByName(name)
getAttribute(attributeName)
Ly gi tr ca thuc tnh.
setAttribute(attributeName,
Sa gi tr ca thuc tnh.
value)
appendChild(node)
removeChild(node)
document.getElementById('id_cn_tm')
document.getElementsByTagName('div')
document.getElementsByName('tn_cn_tm')
DOM Event
S kin v cc hm x l s kin DOM l mt phn quan trng ca Javascript. S kin s xy ra
khi c s tng tc t ngi dng (nh s kin onclick khi ngi dng nhn chut ,
onmousemove khi chut di chuyn..) hoc t chnh trang web (s kin onload khi mt phn t
DOM no c ti xong hay khi ca s b thay i kch thc). Bn c th tham kho
thm danh sch s kin rt gn http://www.w3schools.com/jsref/dom_obj_event.asp
4.12.
Bi Tp V Javascript
5. PHP
5.1. PHP L G?
PHP (vit tt hi quy "PHP: Hypertext Preprocessor") l mt ngn ng lp trnh kch bn hay
mt loi m lnh ch yu c dng pht trin cc ng dng vit cho my ch, m ngun m,
dng cho mc ch tng qut. N rt thch hp vi web v c th d dng nhng vo
trang HTML. Do c ti u ha cho cc ng dng web, tc nhanh, nh gn, c php
ging C v Java, d hc v thi gian xy dng sn phm tng i ngn hn so vi cc ngn
ng khc nn PHP nhanh chng tr thnh mt ngn ng lp trnhweb ph bin nht th gii.
on m sau minh ha gip cch vit PHP lng vo cc trang HTML d dng nh th no
Di y l nhng v d c th hn:
Ch thch dng:
<?php
// In ra thng tin tui
echo $tuoi;
?>
Ch thch khi:
<?php
/*
In ra y thng tin gm tui, tn v gii tnh.
Khng cn in ra thng tin qu qun v in thoi.
Th <br/> dng ngt dng.
*/
echo $tuoi<br/>;
echo $ten<br/>;
echo $gioi<br/>;
?>
boolean
integer
float
String
array
object
null
Trong PHP bin c k hiu bi du " $ " i sau l cc k t bao gm cc ch ci thng (a -z)
in hoa (A - Z) v cc ch s (0 - 9) v du " gch di " ( _ ) . Bin khng c vit cch. Bin
khng c bt u bng ch s
V d :
<?php
$name = "phpandmysql.net"; // kiu chui
$Name = 123; // kiu s nguyn
$num12 = 1.2; // kiu s thc
$_bien = "gi tr";
$12name = 10; // bin khng c bt u bng ch s
a = "10"; // bin phi c du $ trc
?>
- Ch : Trong PHP phn bit ch in hoa v in thng , bin $a v $A l hai bin hon ton khc
nhau.
5.4. Hng S
Trong PHP c hai loi hng, hng c sn trong PHP v hng do chng ta t nh ngha
- Hng c sn trong PHP, v d nh
<?php
TRUE , FALSE ; // c gi tr tng ng l 1 v 0
PHP_VERSION ; // cho bit phin bn PHP trong server ca bn
PHP_OS ;
?>
V rt nhiu cc hng khc nh E_ERROR, E_WARNING.........
- Hng do chng ta nh ngha, nh ngha hng chng ta dng cu trc sau :
<?php
5.5. Ton T
Ton t gn : d thy ngay trong khi ta gn gi tr cho 1 bin, v d
<?php
$name = "haanhdon"; // Gn gi tr "haanhdon" cho bien $name
$number = 10 ; // gn gi tr 10 cho bin $number
?>
Ton t s hc : l cc php ton c bn m cc bn hay thy nh cng, tr, nhn, chia...
Tn
Php cng
Php tr
Php nhn
Php chia
Php chia ly d
K hiu
+
*
/
%
M t
Cng hai s hng
Tr hai s hng
Nhn hai s hng
Chia hai s hng
Chi ly d
V d
$a + $b
$a - $b
$a * b
$a / $b
5%2=1
V d : Ton t s hc
K hiu
==
!=
>
<
>=
<=
M t
Hai s hng bng nhau
Hai s hng khc nhau
So snh ln hn
So snh nh hn
Ln hn hoc bng
Nh hn hoc bng
V d
$a == $b
$a != $b
$a > b
$a < $b
$a >= $b
$a <= $b
<?php
// Ton t s hc
$a = 5;
$b = 10;
$c = $a + $b;
$d = $a * $b;
echo "Tng $a v $b : ".$c."<br />";
echo "Tch $a v $b : ".$d;
?>
V d : Ton t so snh
<?php
// Ton t so snh
$a = 5;
$b = 10;
if($a > $b){
echo "$a ln hn $b";
}else{
echo "$a nh hn $b";
}
?>
Ton t logic
Ton t logic l t hp cc gi tr boolean c kt qu tr v l TRUE hoc FALSE
Tn
K hiu
M t
Php v
Php hoc
|| hoc or
V d
$a > $b && $a >
$c
Mt trong 2 tho mn iu kin l $a > $b || $a < $c
Ph nh
c
Ph nh 1 iu kin, gi tr no
$a != b
V d :
<?php
// Ton t logic
$diem = 7;
if($diem <= 5){
echo "Bn dc dt qu!";
}elseif($diem > 5 && $diem <= 8){
echo "Bn hc rt kh!";
}else{
echo "Bn hc rt gii";
}
?>
In chui:
dng echo hay print
<?php
$name = 'Marius';
echo "Hy $name";
echo 'Hy $name';
// Hy Marius
// Hy $name
?>
Ni chui:
<?php
$site1 = 'marplo.net';
$site2 = 'coursesweb.net';
echo 'Web sites: '. $site1. ', '. $site2;
?>
<?php
$hy = 'Hy ';
$hy .= 'MarPlo';
echo $hy;
// Hy MarPlo
?>
Function for String:
-
PHP_SELF
REQUEST_METHOD
REQUEST_TIME
DOCUMENT_ROOT
HTTPS
HTTP_ACCEPT
HTTP_ACCEPT_CHARSET
HTTP_POST
HTTP_REFERER
HTTP_USER_AGENT
REMOTE_ADDR
SCRIPT_FILENAME
SERVER_ADDR
SERVER_NAME
SERVER_PROTOCOL
SERVER_ADMIN
SERVER_PORT
REMOTE_ADDR
SCRIPT_NAME
REQUEST_URI
<?php
$host
$_SERVER['HTTP_HOST'];
$self
$_SERVER['PHP_SELF'];
$time
$query
$_SERVER['REQUEST_TIME'];
= $_SERVER['QUERY_STRING'];
$root
$_SERVER['DOCUMENT_ROOT'];
$r
$_SERVER['HTTP_REFERER'];
$rh
$rp
$url
$_SERVER['REQUEST_URI'];
$sname
= $_SERVER['SERVER_NAME'
$ips
$ipc
$br
$_SERVER['SERVER_ADDR'];//--IP ca server
$_SERVER['HTTP_USER_AGENT'];//--Thng tin v trnh duyt ca ngi truy c
switch... case...: khi c nhiu trng hp cn so snh, vic thc hin if..else.. l khng ti u.
Lc ny ta dng switch.
Ton T S Hc:
Ton T So Snh:
Ton T Logic:
Ton t kt hp:
duyt. Ti sao li nh th? V phng thcGET c tc dng ly d liu ca cc bin trn thanh
address ca trnh duyt.
Ngoi hai phng thc l GET v POST, trong PHP cn c phng
thc REQUEST. REQUEST khng phi l mt phng thc c a ra trn form trong
HTML, vy REQUEST c tc dng nh th no?
REQUEST l phng thc kt hp ca hai phng thc GET v POST, tc l n c th
ly c tt c cc d liu ngi dng a vo form v nhng d liu trn thanh address bar
na. n gin l bn c th thay th POST hoc GET bng REQUEST bt k ch no
5.10.
Lp Trong PHP
5.11.
Cc hm x l mng
print_r ($array) c dng xem cu trc ca mng
count ($array) Tr v gi tr kiu s nguyn l s phn t ca mng
array_pop ($array) Loi b phn t cui cng ca mng. Hm tr v phn t cui cng
c loi b.
array_push ($array, $val1, $val2, ... , $valn) Thm mt hoc nhiu phn t vo cui mng
$array. Hm tr v kiu s nguyn l s lng phn t ca mng $array mi
array_unshift ($array, $val1, $val2, ... , $valn) Thm mt hoc nhiu phn t vo u mng
$array. Hm tr v kiu s nguyn l s lng phn t ca mng $array mi
array_merge ($array1, $array2, , $arrayn) Nhp 2 hay nhiu mng thnh mt mng duy
nht v tr v mng mi
array_unique ($array) Loi b nhng phn t trng nhau trong mng v tr v mng mi
implode ($str, $array) Chuyn cc gi tr ca mng $array thnh mt chui bao gm cc phn
t cch nhau bi k t $str
explode ($delimiter, $str) Chuyn mt chui thnh mt mng. Tch chui da vo $delimiter,
mi on tch ra s thnh mt phn t ca mng mi
array_key_exists ($key, $array) Kim tra kha $key c tn ti trong mng $array hay khng?
Nu c tr v gi tr true.
in_array ($value, $array) Kim tra gi tr $value c tn ti trong mng $array hay khng? Nu
c tr v gi tr true.
5.12.
Hm Trong PHP
Hm t nh ngha vi cc tham s:
C php:
function function_name($gt1,$gt2)
{
//Hnh ng
}
V d:
<?php
function indulieu($text)
{
echo "$text<br>";
}
indulieu("welcome");
indulieu("who are you ?");
?>
Hm vi gi tr tr v:
C php:
function function_name(C hoc khng c i s)
{
//Thuc thi
return giatri;
}
V d:
<?php
function tinhtong($a,$b)
{
$total=$a+$b;
return $total;
}
echo tinhtong(19,31)
?>
Include v require, Include_one v require_one:
s dng li m trong nhiu trn web (cc script), ta thng vit cc hm, nh ngha
cc hng hay cc on m v lu vo mt file ring. Khi , mt trang php no cn s dng cc
on m vit, c h chn vo v tr cn thit. chn mt file c sn vo trang web, ta s
dng mt trong bn cu lnh sau: include (filename), require, include_once, require_once.
5.13.
File Upload
- Tip theo ta s kim tra xem ngi dng nhn nt submit hay cha bng cch kim tra s
tn ti ca bin $_POST['ok'], nu ngi dng nhn submit ri th tin hnh kim tra xem h
chn file hay cha, nu cha chn file th bo li
- Ta c th ly c tn file, kiu file , c file thng qua cc bin :
File name : $_FILES['file']['name'];
File type : $_FILES['file']['type'];
File size : $_FILES['file']['size'];
<?php
if(isset($_POST['ok'])){ // Ngi dng n submit
if($_FILES['file']['name'] != NULL){ // chn file
// thc hin cng vic upload
}else{
echo "Vui lng chn file";
}
}
?>
- Khi ngi dng chn file th tin hnh upload ? ty theo yu cu ca bi ton m chng ta
tin hnh xy dng chc nng cho n, v d yu cu t ra y l ch c upload cc file nh
c kiu file l jpg , png , gif v c file khng c ln hn 1mb
- Chng ta tin hnh kim tra kiu file xem c ph hp hay khng, nu l file nh th tin hnh
kim tra xem c file c ph hp hay khng v ngc li th bo li file chn khng phi file nh
<?php
if($_FILES['file']['type'] == "image/jpeg"
|| $_FILES['file']['type'] == "image/png"
|| $_FILES['file']['type'] == "image/gif"){
// l file nh
// Tin hnh code upload
}else{
// khng phi file nh
echo "Kiu file khng hp l";
}
?>
- Bc cui cng l xem file va chn c c nh hn 1mb khng, file size y c tnh theo
byte (1mb = 1*1024 kb * 1024 bytes) . Nu c file nh hn 1mb tin hnh upload file bng hm
move_uploaded_file , file upload s c lu trong th mc data
<?php
if($_FILES['file']['size'] > 1048576){
echo "File khng c ln hn 1mb";
}else{
// file hp l, tin hnh upload
$path = "data/"; // file lu vo th mc data
$tmp_name = $_FILES['file']['tmp_name'];
$name = $_FILES['file']['name'];
$type = $_FILES['file']['type'];
$size = $_FILES['file']['size'];
// Upload file
move_uploaded_file($tmp_name,$path.$name);
echo "File uploaded! <br />";
echo "Tn file : ".$name."<br />";
echo "Kiu file : ".$type."<br />";
echo "File size : ".$size;
}
?>
- V y l ton b code ca phn upload file
<?php
if(isset($_POST['ok'])){ // Ngi dng n submit
if($_FILES['file']['name'] != NULL){ // chn file
// Tin hnh code upload file
if($_FILES['file']['type'] == "image/jpeg"
|| $_FILES['file']['type'] == "image/png"
|| $_FILES['file']['type'] == "image/gif"){
// l file nh
// Tin hnh code upload
if($_FILES['file']['size'] > 1048576){
echo "File khng c ln hn 1mb";
}else{
// file hp l, tin hnh upload
$path = "data/"; // file s lu vo th mc data
$tmp_name = $_FILES['file']['tmp_name'];
$name = $_FILES['file']['name'];
$type = $_FILES['file']['type'];
$size = $_FILES['file']['size'];
// Upload file
move_uploaded_file($tmp_name,$path.$name);
echo "File uploaded! <br />";
echo "Tn file : ".$name."<br />";
echo "Kiu file : ".$type."<br />";
Session V Cookie
Hy Cookie:
Session: Mt cch khc qun l ngi s dng l session. Session c hiu l khong thi gian
ngi s dng giao tip vi 1 ng dng. Mt session c bt u khi ngi s dng truy cp
vo ng dng ln u tin, v kt thc khi ngi s dng thot khi ng dng. Mi session s c
c cp mt nh danh (ID) khc nhau v ni dung c lu trong th mc thit lp trong file
php.ini (tham s session.save_path).
Thit lp session:
thit lp 1 session ta s dng c php: session_start()
on code ny phi c nm trn cc kch bn HTML. Hoc nhng lnh echo, printf.
thit lp 1 gi tr session, ngoi vic cho php bt u thc thi session. Chng ta cn phi
ng k 1 gi tr session. tin cho vic gn gi tr cho session .
Ta c c php sau: session_register("Name")
V d:
<?php
Session_start();
Session_register("username");
?>
S dng gi tr ca session:
Hy b session:
hy b gi tr ca session ta c nhng cch sau:
session_destroy() // Cho php hy b ton b gi tr ca session
session_unset()// Cho php hy b session .
6. PHP V MySQL
6.1. Khi Nim V MySQL
Mysql l h qun tr d liu min ph, c tch hp s dng chung vi apache, PHP. Chnh
yu t pht trin trong cng ng m ngun m nn mysql qua rt nhiu s h tr ca
nhng lp trnh vin yu thch m ngun m. Mysql cng c cng mt cch truy xut v m
lnh tng t vi ngn ng SQL. Nhng Mysql khng bao qut ton b nhng cu truy vn
cao cp nh SQL. V bn cht Mysql ch p ng vic truy xut n gin trong qu trnh vn
hnh ca website nhng hu ht c th gii quyt cc bi ton trong PHP.
nh ngha c s d liu, bng, ct:
C s d liu: l tn ca c s d liu chng ta mun s dng
Bng: L 1 bng gi tr nm trong c s d liu.
Ct l 1 gi tr nm trong bng. Dng lu tr cc trng d liu.
Thm 1 ct vo bng :
ALTER TABLE tn_bng ADD <tn_ct> <thuc_tnh> AFTER <tn_ct>
V d:
mysql> alter table user add sex varchar(200) NOT NULL after email;
Thm gi tr vo bng:
C php:
INSERT INTO Tn_bng(tn_ct) VALUES(Gi_tr_tng_ng);
V d:
mysql> insert into user(username,password,email,sex,home)
values("Lanna","12345","email@gmail.com","F","www.abc.com");
Kt ni c s d liu:
C php: mysql_connect("hostname","user","pass")
V d: $connect = mysql_connect('localhost', 'root', 'pass');
La chn c s d liu:
C php:
mysql_select_db("tn_CSDL")
V d:
$conn=mysql_connect("localhost","root","root") or die(" khong the ket noi");
mysql_select_db("demo");
ng kt ni c s d liu:
C php:
mysql_close();
V d p dng:
<?
$conn=mysql_connect("localhost", "root", "root") or die("can't connect database");
mysql_select_db("demo_mysql",$conn);
$sql="select * from user";
$query=mysql_query($sql);
if(mysql_num_rows($query) == 0)
{
echo "Chua co du lieu";
}
else
{
while($row=mysql_fetch_array($query))
{
echo $row[username] ." - ".$row[password]."<br />";
}
}
mysql_close($conn);
?>
Lch s
Trc , Qiang tng pht trin PRADO nhiu nm. Nhng nm kinh nghim v nh gi
ca ngi s dng, cn mt Framework PHP d dng hn, m rng hn v hiu qu hn p
ng nhu cu ngy cng tng ca cc nh pht trin ng dng web. S liu cc k n tng khi so
snh vi cc Framework PHP khc da trn hiu sut ca n ngay lp tc thu ht s ch rt
tch cc.
Kh nng ti s dng v m rng ca Yii rt cao. Yii l 1 Framework hon ton hng i
tng. Mi th trong Yii u c th ti s dng v m rng rt d dng.
Yii h tr trn tt c cc DBMS bi PDO (PHP Data Object).
Hiu sut x l ca ZendFramework kh l chm, v kin trc ca n qu s v phc tp.
Hin ti c rt nhiu ngi a thch s dng WordPress hay Joomla nhng ch ph hp xy dng
cc website nh, cn lm nhanh, v c sn nhiu th, cng ng v ti liu nhiu Khi nng cp
v bo tr rt kh khn, tn nhiu thi gian.
Hiu sut x l ca Framework Yii hiu qu cao.
Model
Thng thng trong kin trc MVC, Model l phn rt quan trng trong c d n, n c quan h
mt thit vi c s d liu.
Yii c 2 loi model: form model l lp ( CFormModel ) v active record model l lp
( CActiveRecord ). C hai c m rng t lp ( CModel ). CFormModel i din cho m hnh
d liu do ngi dng nhp vo dng HTML. Sau lu d liu ny vo b nh v thng qua
CActiveRecord d liu c lu vo CSDL.
Layout
Layout l b cc chung nht cho mt Website. N thng cha cc thnh phn chung nht.
Trong Layout c th cha cc cu lnh PHP.
V d nh: header, footer,
......header here......
{
// this method is called by CController::beginWidget()
}
public function run()
{
// this method is called by CController::endWidget()
}
}
Component
ng dng Yii c xy dng da trn cc Component l cc i tng vn bn c t mt
cch r rng. Component l mt th hin ca CComponent hoc lp dn xut ca n. S dng
mt Component ch yu lin quan n vic truy cp vo thuc tnh v nng cao / x l cc s
kin.
Module
Module l mt phn c lp gm cc model, view, controller v cc thnh phn h tr khc.
Trong nhiu kha cnh, module ging nh mt ng dng. S khc nhau chnh l module khng
th trin khai mt mnh m n phi nm bn trong ca mt ng dng. Ngi dng c th truy
cp n cc controller trong mt module nh mt ng dng bnh thng.