Professional Documents
Culture Documents
Mc Lc
I.1 Qu trnh pht trin cc cng ngh trong ng dng Web...............................3 I.1.1 CGI..........................................................................................................3 I.1.2 Applet......................................................................................................3 I.1.3 JavaScript................................................................................................3 I.1.4 JSP/Servlet, ASP v PHP........................................................................3 I.1.5 Flash........................................................................................................3 I.1.6 DHTML..................................................................................................4 I.1.7 XML........................................................................................................4 I.2 Web 2.0 v cng ngh AJAX ........................................................................4 I.2.1 Cng ngh Web th h th hai Web 2.0...............................................4 I.2.2 Cc vn ny sinh v s ra i ca AJAX............................................5 I.2.3 AJAX l g ?............................................................................................5 I.2.4 Cc th mnh ca AJAX.........................................................................5 CHNG II: Cc cng ngh trong AJAX..........................................................8 II.1 Cascading Style Sheet CSS........................................................................8 II.1.1 Gii thiu v CSS..................................................................................8 II.1.2 Cc u im ca CSS trong thit k web...............................................8 II.1.3 C php c bn ca CSS........................................................................9 II.1.4 Cc thuc tnh ca CSS Style.................................................................9 II.2 Document Object Model DOM..................................................................9 II.2.1 Lm vic vi DOM bng JavaScript......................................................9 II.2.2 Tm kim mt DOM Node.....................................................................9 II.2.3 To DOM Node.....................................................................................9 II.2.4 Thm style vo ti liu.........................................................................10 II.2.5 S dng thuc tnh innnerHTML.........................................................10 II.3 XML v vic truyn d liu bt ng b....................................................10 II.3.1 Gii thiu v XML v XSLT...............................................................10 II.3.2 XMLHttpRequest................................................................................11 II.4 Lp trnh bng JavaScript pha client..........................................................11 CHNG III: i tng XMLHttpRequest....................................................13 III.1 Gii thiu v XMLHttpRequest ................................................................13 III.2 Phn tch cc c tnh ca XMLHttpRequest............................................13 III.2.1 Cc phng thc v thuc tnh...........................................................13 III.2.2 S tng tc........................................................................................13 III.2.3 Cc phng thc GET v POST.........................................................14 III.3 Remote Scripting.......................................................................................14 III.3.1 Tng quan v Remote Scripting.........................................................15 III.4 Gi cc request..........................................................................................15 III.5 DOM Level 3 v DOM..............................................................................15 III.5.1 DOM Level 3......................................................................................15 III.5.2 DOM...................................................................................................15
Nhim v ca n
n ny tp trung nghin cu v cng ngh Ajax v ng dng ca n, trong tp trung vo cc yu t sau: Gii thiu v AJAX, cc cng ngh trong AJAX Vic truyn v x l d liu trong AJAX Cc framework cho pht trin ng dng web vi AJAX Xy dng ng dng p dng AJAX
Kt qu
Nu ln qu trnh pht trin ca cng ngh Web v th h Web 2.0 Tm hiu cc cng ngh trong AJAX l CSS, DOM, XML v JavaScript Nghin cu v i tng XMLHttpRequest, y l tri tim ca cng ngh AJAX Nghin cu vic truyn v x l d liu pha client cng nh server Xy dng ng dng vi AJAX
I.1.1 CGI
CGI cho php to cc chng trnh chy khi ngi dng gi cc yu cu. CGI khng phi l cch an ton cho cc trang Web ng. Vi CGI, ngi khc c th chy chng trnh trn h thng.
I.1.2 Applet
Applet cho php cc nh pht trin Vt cc ng dng nh nhng vo trang Web. Song n cng c mt s nhc im: thng b chn bi vic c v ghi cc file h thng, khng th ti cc th vin, hoc i khi khng th thc thi trn pha client.
I.1.3 JavaScript
JavaScript c thit k vic pht trin d dng hn cho cc nh thit k Web v cc lp trnh vin khng thnh tho Java. Vic ngi ta coi cc trang nh l mt i tng lm ny sinh mt khi nim mi gi l Document Object Model (DOM). DOM hon ton l cch biu din hng i tng ca trang Web v n c th c sa i vi cc ngn ng kch bn bt k nh JavaScript hay VBScript.
I.1.5 Flash
Flash cho php cc nh thit k to cc ng dng hot ha v linh ng. Flash khng i hi cc k nng lp trnh cao cp v rt d hc.
I.1.7 XML
Ngy nay chng ta c rt nhiu dng dn xut ca XML cho cc ng dng Web (tt nhin l c c XHTML): XUL ca Mozilla; XAMJ, mt sn phm m ngun m trn nn Java; MXML t Macromedia; v XAML ca Microsoft.
I.2.3 AJAX l g ?
AJAX l tp hp ca nhiu cng ngh vi th mnh ca ring mnh to thnh mt sc mnh mi. AJAX bao gm: Th hin web theo tiu chun XHTML v CSS, cc chun ca W3C, c Firefox (Mozilla), Safari (Apple), Opera, Netscape 8.0 (nhn Firefox) h tr rt tt. Nng cao tnh nng ng v phn hi bng DOM (Document Object Model); mt chun ca W3C Trao i v x l d liu bng XML v XSLT; cng l mt chun ca W3C Truy cp d liu theo kiu bt ng b (asynchronous) bng XMLHttpRequest V tt c cc cng ngh trn c lin kt li vi nhau bng JavaScript.
Ajax cho php to ra mt Ajax Engine nm gia giao tip ny. Khi , cc yu cu gi resquest v nhn response do Ajax Engine thc hin. Thay v tr d liu di dng HTML v CSS trc tip cho trnh duyt, web server c th gi tr d liu dng XML v Ajax Engine s tip nhn, phn tch v chuyn ha thnh XHTML + CSS cho trnh duyt hin th. Vic ny c thc hin trn client nn gim ti rt nhiu cho server, ng thi ngi s dng cm thy kt qu x l c hin th tc th m khng cn np li trang. Mt khc, s kt hp ca cc cng ngh web nh CSS v XHTML lm cho vic trnh by giao din trang web tt hn nhiu v gim ng k dung lng trang phi np. y l nhng li ch ht sc thit thc m Ajax em li.
R rng im khc bit l thay v phi ti c trang web th vi AJAX ta ch cn ti v phn ca trang Web mun thay i. iu ny gip cho ng dng web ca phn hi nhanh hn, thng minh hn. Ngoi ra, im c bit quan trng trong cng ngh Ajax nm ch Asynchronous - bt ng b - tc l gi yu cu ca mnh ti server v tip tc thc thi tc v hin ti m khng cn ch tr li. Khi no server x l xong yu cu ca, n s bo hiu v ta c th n th hin nhng thay i cn thit.
Tm hiu v xy dng ng dng da trn cng ngh AJAX II.1.3 C php c bn ca CSS
C php ca CSS gm ba thnh phn: Thnh phn la chn (thng l mt th HTML) (Selector) Thuc tnh (Property) Gi tr (Value) c ba cch chn CSS vo trang web. a. External Style Sheet (s dng file CSS c nh ngha thnh trong file ring) b. Internal Style Sheet (nh ngha cc style sheet ngay trong trang web) c. Internal Style Sheet (style c qui nh ngay trong mi th HTML)
II.3.1.2 Cc c im ca XML
XML tng thch vi SGML D dng Vt c nhng chng trnh x l ti liu XML Ti liu XML d c v c tnh hp l cao XML c xy dng vi s gim thiu nhng thuc tnh ty chn XML d dng c s dng trn Internet XML h tr nhiu ng dng Khng t nng tnh hnh thc trong ni dung th nh du XML
Tm hiu v xy dng ng dng da trn cng ngh AJAX II.3.1.3 Cu trc mt ti liu XML
Mt ti liu XML s cha nhng c t v cu trc d liu. Mi cu trc gm nhiu phn t (element), mi thnh phn c bt u vi mt th bt u (Starttag) v kt thc vi mt th kt thc (Endtag). Gia Starttag v Endtag l ni dung ca phn t ny. Ni dung c th bao gm d liu vn bn hay c th l mt phn t khc.
II.3.2 XMLHttpRequest
Cc ng dng web truyn thng u phi ti np ton b trang web khi gi yu cu n server, iu ny thng dn n mt s ngt qung cho cng vic ca ngi dng. V th yu cu t ra l lm cho cc request ca server khng ng b v ngi dng vn c th lm vic trong khi i tn hiu tr li t server. XMLHttpRequest c a ra nh l mt gii php mnh m v hiu qu.
II.3.2.2 Gi mt yu cu n server
Gi mt yu cu n server t mt i tng XMLHttpRequest rt d dng. Tt c nhng vic ta cn lm l truyn cho n a ch URL ca server.
III.2.2 S tng tc
Ta xt mt v d tm hiu cc tng tc ca Ajax. Hnh sau cho thy m hnh tng tc chun trong mt ng dng Ajax.
1. 2.
3. 4. 5. 6.
Qu trnh tng tc: Mt event client-side gy ra mt s kin - Ajax event. Bt k mt tc ng no cng c th gy ra Ajax event, t mt s kin onchange n gin cho n mt s tc ng ca ngi dng. Mt th hin ca XMLHttpRequest c to ra. Dng phng thc open(), to li gi hm - a ch URL c thit lp cng vi phng thc HTTP yu cu, thng thng l GET hay POST. Request c to ra qua vic gi phng thc send(). Mt request c to v gi n server. Server x l cc yu cu Response c tr v cho trnh duyt. Trng Content-Type c thit lp dng text/xml; XMLHttpRequest ch c th x l kt qu dng text/html. Cu hnh XMLHttpRequest gi hm callback() khi kt qu x l c tr v. Hm ny kim tra thuc tnh readyState trn i tng XMLHttpRequest v sau xem xt m trng thi tr v t server.
Tm hiu v xy dng ng dng da trn cng ngh AJAX III.3.1 Tng quan v Remote Scripting
V c bn, remote scripting l mt loi li gi cc th tc t xa. S tng tc vi server vn nh cc ng dng Web thng thng, nhng khng ti np (refresh) ton b trang web. Ch vi Ajax, mi c th s dng cng ngh bt k pha server c th nhn cc request, x l chng v tr v kt qu. Vi mi cng ngh pha server, c mt s la chn cho pha client thc hin remote scripting.
III.4 Gi cc request
1. 2. 3. 4. Cc bc c bn gi request dng i tng XMLHttpRequest l: Dng mt tham chiu ti mt th hin ca XMLHttpRequest Khai bo cho i tng XMLHttpRequest v hm s x l cc trng thi ca XMLHttpRequest. Gn cc thuc tnh ca request. Gi request ti server.
III.5.2 DOM
DOM l mt c t ca W3C cho mt platform c lp vi ngn ng lp trnh truy cp v sa i ni dung v cu trc ca ti liu. Mt cch hiu khc, n l mt cch thng dng biu din v thao tc mt ti liu HTML hay XML. thit k ca DOM da trn c t ca Object Management Group, cho php s dng vi bt k ngn ng lp trnh no. DOM l mt m hnh i tng trong ng cnh hng i tng. DOM xc nh cc i tng cn thit biu din v thay i ti liu, cc hnh V v thuc tnh ca cc i tng ny, v mi lin h gia cc i tng. Li th ca c t DOM l n cung cp mt chun tng tc vi ti liu.
III.6 Kt lun
Trong chng ny, chng ta va xem xt cc k thut c bn v l tri tim ca Ajax, i tng XMLHttpRequest.Vi s kt hp gia JavaScript v mt s thao tc DOM, Ajax cho php mt mc tng tc cha tng c t trc n nay. Vi XMLHttpRequest ta khng cn i qu trnh ti np trang web v s ng b vi server na.
Tm hiu v xy dng ng dng da trn cng ngh AJAX IV.2.2.1 W3C Document Object Model
W3C Web nh ngha v DOM: Document Object Model (DOM) l mt nn tng hay l mt giao din ngn ng trung gian cho php cc chng trnh hay cc script truy cp v cp nht ng ni dung, cu trc, kiu dng ca ti liu (document). Ti liu c th c x l, v kt qu ca qu trnh x l ny c th kt hp li trong trang hin th.
IV.4 Kt lun
Trong chng ny ta tm hiu mt s cch m XMLHttpRequest v server c th trao i d liu vi nhau. XMLHttpRequest c th gi request dng cc phng thc HTTP GET hay POST, trong khi d liu request c th gi qua
Ta thy khi thc thi mt ng dng khng dng AJAX, mi khi chuyn mt tc v no , chng hn nh thm mt danh mc vo danh b. Trang web s c np li ton b, xut hin thanh tin trnh ca qu trnh np. Trong khi vic thay i cc tc v trong ng dng AddressBook ch dn n s thay i phn ca trang web c thao tc. Ta khng phi i cho vic np li ton b trang web. Nh vy, c th kt lun u im v sc mnh ca AJAX ch, n khng thao tc ng b vi server theo cch truyn thng l cch np li ton b trang web m n truyn d liu theo kiu bt ng b, cho php lm vic vi tng phn ca trang web.
KT LUN
21 Phm Th Thu Duyn- Lp CT702