Khái quát về thiết kế web phần 9

Chia sẻ: Sdfasfs Sdfsdfad | Ngày: | Loại File: PDF | Số trang:13

0
38
lượt xem
7
download

Khái quát về thiết kế web phần 9

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

MyInfo MyConnection MyADRot b. Sự kiện: ứng với hai hoạt động bắt đầu và kết thúc một đối tượng Application ta có hai sự kiện trong đối tượng Application, đó là: Application_OnStart (khởi tạo các thông tin phục vụ cho một ứng dụng khi ứng dụng bắt đầu) và Application_OnEnd (được kích hoạt khi ứng dụng kết thúc)

Chủ đề:
Lưu

Nội dung Text: Khái quát về thiết kế web phần 9

  1. http://www.ebook.edu.vn 105 KÕt qu¶: MyInfo MyConnection MyADRot b. Sù kiÖn: øng víi hai ho¹t ®éng b¾t ®Çu vµ kÕt thóc mét ®èi t−îng Application ta cã hai sù kiÖn trong ®èi t−îng Application, ®ã lµ: Application_OnStart (khëi t¹o c¸c th«ng tin phôc vô cho mét øng dông khi øng dông b¾t ®Çu) vµ Application_OnEnd (®−îc kÝch ho¹t khi øng dông kÕt thóc) Có ph¸p cña sù kiÖn Application_OnStart: <SCRIPT LANGUAGE=VBScript RUNAT=Server> Sub Application_OnStart ' N¬i chÌn ®o¹n Script cÇn thiÕt cho viÖc khëi t¹o mét øng dông End Sub Sub Application_OnEnd ' N¬i chÌn ®o¹n Scipt cÇn thiÕt cho viÖc kÕt thóc mét øng dông End Sub </SCRIPT> Chó ý: Ph¶i khai b¸o ng«n ng÷ script ®−îc sö dông trong c¸c ®o¹n script sù kiÖn trong dßng ®Çu tiªn cña file global.asa - C¸c ®èi t−îng cña ASP trong phÇn nµy chØ cã SERVER vµ APPLICATION -------------------Global.asa-------------------------- <script Language="VBScript" RUNAT=Server> Sub Application_OnEnd() End Sub Sub Application_OnStart() Application("NumSession") = 0 Application("NumVisited") = 0 Session.Timeout = 10 End Sub Sub Session_OnEnd() Application("NumSession") = Application("NumSession") – 1 End Sub Sub Session_OnStart() Application("NumSession") = Application("NumSession") + 1 Application("NumVisited") = Application("NumVisited") + 1 End Sub </script> -------------------File1.asp---------------------------- Response.Write "You are " & Application("NumSession") & " of " & Application("NumVisited") & " users."
  2. http://www.ebook.edu.vn 106 KÕt qu¶: You are 1 of 1 users. c. Ph−¬ng thøc: V× ®èi t−îng Application cã thÓ ®−îc chia sÎ th«ng tin gi÷a c¸c ng−êi dïng do ®ã ®Ó ®¶m b¶o nh÷ng ng−êi dïng ®ã kh«ng thÓ cïng mét lóc thay ®æi néi dung cña mét biÕn trong ®èi t−îng Application nã cã hai ph−¬ng thøc lµ Lock vµ Unlock. Ph−¬ng thøc ý nghÜa Lock Ph−¬ng thøc Lock ng¨n c¶n c¸c client kh¸c cïng mét lóc thay ®æi gi¸ trÞ cña mét biÕn do ®èi t−îng Application l−u tr÷ Unlock Ph−¬ng thøc Unlock cho phÐp c¸c client cã thÓ söa ®æi c¸c thuéc tÝnh cña ®èi t−îng Application . 4.6.6 §èi t−îng Session §èi t−îng Sesion ®−îc dïng ®Ó l−u tr÷ th«ng tin cÇn thiÕt cho mét phiªn lµm viÖc cña ng−êi dïng cô thÓ. C¸c biÕn l−u tr÷ trong ®èi t−îng Session kh«ng bÞ mÊt khi ng−êi dïng truy cËp c¸c trang Web kh¸c trong øng dông. Thay vµo ®ã c¸c biÕn nµy tån t¹i trong toµn bé phiªn lµm viÖc cña ng−êi dïng. Khi mét ng−êi dïng míi yªu cÇu mét trang Web tõ øng dông, Web server tù ®éng t¹o mét ®èi t−îng Session vµ server sÏ ph¸ huû ®èi t−îng Session khi phiªn lµm viÖc kÕt thóc hoÆc bÞ huû bá. Cã thÓ ®Æt thêi gian tån t¹i cho mét phiªn lµm viÖc tuy nhiªn gi¸ trÞ ngÇm ®Þnh cho mét phiªn lµm viÖc tån t¹i lµ 20 phót. a. TËp hîp: Session.Contents(Key) Chøa danh s¸ch c¸c môc ®· khëi t¹o vµ thªm vµo b»ng ®èi t−îng session. Kh«ng ph¶i khëi t¹o b»ng thÎ <object> VÝ dô: <% Session("name") = "Application Maker" Session("publishdate") = "05/01/99" Session("author") = "ISSI" Set Session("Obj1") = Server.CreateObject("ADODB.Connection") For Each Item in Session.Contents If IsObject( Session.Contents(Item)) Then Response.Write Item & " is an object.<BR>" Else Response.Write Item & "=" & Session.Contents(Item) & "<BR>" End If Next %> KÕt qu¶: NAME=Application Maker
  3. http://www.ebook.edu.vn 107 PUBLISHDATE=05/01/99 AUTHOR=ISSI OBJ1 is an object. Session.StaticObjects(Key) Chøa danh s¸ch c¸c môc võa ®−îc khëi t¹o vµ ®−a vµo ®èi t−îng Session nhê sö dông thÎ HTML <OBJECT>. VÝ dô: ----------Global.asa------------- <OBJECT RUNAT=Server SCOPE=Session ID=MyInfo PROGID="MSWC.MyInfo"> </OBJECT> <OBJECT RUNAT=Server SCOPE=Session ID=MyConnection PROGID="ADODB.Connection"> </OBJECT> <OBJECT RUNAT=Server SCOPE=Session ID=MyADRot PROGID="MSWC.ADRotator"> </OBJECT> -----------File.asp----------------- <% For Each Item In Session.StaticObjects Response.Write Item & "<BR>" Next %> KÕt qu¶: MyInfo MyConnection MyADRot b. Sù kiÖn: Còng nh− ®èi t−îng Application, ®èi t−îng Session cã hai sù kiÖn lµ Session_OnStart( ®−îc kÝch ho¹t khi mçi khi mét phiªn lµm viÖc b¾t ®Çu) vµ Session_OnEnd (®−îc kÝch ho¹t khi kÕt thóc mét phiªn lµm viÖc) Có ph¸p <SCRIPT LANGUAGE=VBScript RUNAT=Server> Sub Session_OnStart ' N¬i chÌn ®o¹n Script cÇn thiÕt cho viÖc khëi t¹o mét phiªn lµm viÖc End Sub Sub Session_OnEnd ' N¬i chÌn ®o¹n Script cÇn thiÕt khi mét phiªn lµm viÖc kÕt thóc End Sub </SCRIPT>
  4. http://www.ebook.edu.vn 108 c. Thuéc tÝnh: Thuéc tÝnh ý nghÜa SessionID Tr¶ vÒ gi¸ trÞ nhËn biÕt duy nhÊt tõng phiªn lµm viÖc cña mét ng−êi sö dông Timeout Kho¶ng thêi gian ngÇm ®Þnh lµ 20’ cho sù tån t¹i cña mét phiªn lµm viÖc trong mét øng dông. M¸y chñ Web sÏ duy tr× th«ng tin phiªn lµm viÖc cña ng−êi sö dông mµ kh«ng ®−a ra yªu cÇu hay lµm míi l¹i mét trang. d. Ph−¬ng thøc: Abandon: Huû bá mét ®èi t−îng Session vµ gi¶i phãng c¸c biÕn trong ®èi t−îng Session. Session.Contents.Remove (Name|Integer) Dïng ®Ó xãa tÊt c¶ c¸c môc trong collection Session.Contents Cã 2 lùa chän tham sè Name hoÆc Integer • Name chØ tªn cña môc cÇn xãa • Integer lµ sè chØ vÞ trÝ (b¾t ®Çu tõ 0) cña môc cÇn xãa. Session.Contents.RemoveAll Xãa tÊt c¶ c¸c môc trong session.contents VÝ dô: <%Session.Contents.RemoveAll( )%> Chó ý: Cã thÓ l−u tr÷ c¸c gi¸ trÞ trong ®èi t−îng Session. Th«ng tin l−u tr÷ trong ®èi t−îng Session cã ph¹m vi phiªn lµm viÖc vµ cã thÓ sö dông ®−îc trong suèt mét phiªn lµm viÖc. 4.7 C©u hái vµ bµi tËp ch−¬ng 4 4.7.1 C©u hái «n tËp 1. ASP lµ viÕt t¾t cña côm tõ nµo? a. All Standard Pages b. Active Server Pages c. Active Standard Pages d. A Server Page 2. Néi dung cña ®o¹n script ASP ®−îc ®Þnh nghÜa bëi cÆp thÎ nµo d−íi ®©y? a. <&>...</&> b. <%>...</%> c. <script>...</script> d. <%...%> 3. IIS lµ g×? Nã ho¹t ®éng nh− thÕ nµo? 4. C¸c b−íc thiÕt lËp th− môc ¶o trong IIS. 5. C¸c lÖnh c¬ b¶n cña ASP. 4.7.2 Bµi tËp vÒ c¸c cÊu tróc ®iÒu khiÓn vµ vßng lÆp. 1. ViÕt ®o¹n m· ch−¬ng tr×nh ASP dïng cÊu tróc Select...Case ®Ó hiÓn thÞ ra mµn h×nh ngµy hiÖn hµnh trong tuÇn b»ng tiÕng ViÖt.
  5. http://www.ebook.edu.vn 109 2. ViÕt ®o¹n m· ch−¬ng tr×nh ASP dïng vßng lÆp Do...Loop ®Ó viÕt ra mµn h×nh 10 dßng ch÷ “Hello world” cã kÝch th−íc t¨ng dÇn. 4.7.3 Bµi tËp vÒ c¸c ®èi t−îng. 1. ViÕt ra mµn h×nh c©u “Hello world” 2. ViÕt mét form lÊy ý kiÕn cña ng−êi sö dông vÒ trang web cña m×nh, råi hiÓn thÞ c¸c th«ng tin ng−êi sö dông ®iÒn vµo ra mµn h×nh. 3. ThiÕt kÕ vµ cµi ®Æt trang Web hiÓn thÞ m¸y tÝnh tay víi c¸c phÐp to¸n céng, trõ, nh©n, chia, lòy thõa, c¨n bËc hai, b×nh ph−¬ng, nghÞch ®¶o. 4. ViÕt mét ®o¹n code dïng ®Ó ®Õm sè lÇn truy cËp vµo mét trang Web. Sau ®ã nhóng vµo trang Web ®· lµm ë bµi 2. 5. ThiÕt kÕ vµ cµi ®Æt trang Web hiÓn thÞ lÞch (calendar). Trang Web ph¶i cho phÐp ng−êi dïng xem lÞch th¸ng cña mét n¨m nµo ®ã, xem lÞch cña c¸c th¸ng tr−íc vµ sau th¸ng hiÖn t¹i cña n¨m hiÖn t¹i. 6. ThiÕt kÕ vµ cµi ®Æt trang Web hiÓn thÞ hÖ thèng c©y th− môc cña m¸y chñ.
  6. http://www.ebook.edu.vn 110 Ch−¬ng 5 KÕt nèi c¬ së d÷ liÖu trong lËp tr×nh Web ®éng víi ASP 5.1 Kh¸i niÖm vÒ ADO ActiveX Data Object lµ líp ®èi t−îng COM (Compenent Object Model) tËp trung vµo xö lý d÷ liÖu th«ng qua OLEDB cña Windows. ADO thiÕt kÕ cho môc ®Ých truy xuÊt d÷ liÖu tæng qu¸t kh«ng chØ dïng ®Ó truy xuÊt d÷ liÖu thuÇn tuý mµ cßn xö lý ®−îc c¶ d÷ liÖu file hay bÊt kú lo¹i d÷ liÖu nµo cã hç trî c¬ chÕ cho phÐp giao tiÕp th«ng qua OLEDB. M« h×nh kiÕn tróc cña ADO t−¬ng t¸c gi÷a øng dông vµ nguån d÷ liÖu: VB Application VC++ Script Java ADO OLEDB E-mail CSDL File Data Store H×nh 5.1 M« h×nh kiÕn tróc cña ADO. 5.2 Tr×nh tiªu thô (consumer) vµ tr×nh cung cÊp (provider) Trong b−íc lËp tr×nh, ch−¬ng tr×nh viÕt ra chÝnh lµ tr×nh tiªu thô d÷ liÖu bëi nã cÇn truy xuÊt vµo c¸c nguån d÷ liÖu ®Ó xö lý. Cßn tr×nh cung cÊp lµ tËp lÖnh cho phÐp truy xuÊt vµo nguån d÷ liÖu theo c¸ch ®Æc tr−ng cña chóng. Provider cho phÐp giao tiÕp gi÷a nguån d÷ liÖu vµ tÇng ®iÒu khiÓn OLEDB. Vµ ADO chØ trao ®æi víi nguån d÷ liÖu th«ng qua OLEDB mµ kh«ng cÇn quan t©m tíi c¸ch thøc lµm viÖc cña Provider. §Ó gióp OLEDB biÕt ®−îc Provider nµo cÇn ph¶i giao tiÕp, khi më kÕt nèi ADO cÇn chØ ®Þnh tr×nh cung cÊp d÷ liÖu Provider t−¬ng øng. Microsoft cung cÊp s½n mét sè Provider cho phÐp truy xuÊt dÔ dµng vµo c¸c nguån d÷ liÖu ®ang th«ng dông nh−: • Jet OLEDB 4.0 – C¬ së d÷ liÖu Access • DTS Packages – DÞch vô chuyÓn ®æi d÷ liÖu trong SQL Server • ODBC Driver – Provider ch phÐp truy xuÊt nguån d÷ liÖu th«ng qua ODBC • SQL Server – C¬ së d÷ liÖu SQL Server • Oracle – C¬ së d÷ liÖu Oracle • Simple Provider – C¬ së d÷ liÖu d¹ng Text
  7. http://www.ebook.edu.vn 111 5.3 M« h×nh ®èi t−îng ADO 5.3.1 §èi t−îng kÕt nèi (Connection) Cho phÐp thùc hiÖn viÖc më kÕt nèi ®Õn nguån d÷ liÖu cÇn truy xuÊt. Th«ng qua Connection chØ cÇn chØ ®Þnh tr×nh cung cÊp OLEDB Provider sÏ dïng ®Ó tiÕp cËn d÷ liÖu. C¸c th«ng tin kÕt nèi bæ sung kh¸c nh− username, password, server name,.. th−êng ®−îc l−u vµo mét chuçi gäi lµ chuçi kÕt nèi (Connection String). Chó ý: Cã thÓ kÕt nèi vµ truy xuÊt vµo nguån d÷ liÖu mµ kh«ng b¾t buéc ph¶i dïng ®èi t−îng Connection. C¸ ®èi t−îng kh¸c nh− Command, RecordSet, Record,... còng cho phÐp më trùc tiÕp kÕt nèi. Tuy nhiªn sö dông ®èi t−îng Connection sÏ cho phÐp b¹n t¸ch biÖt thao t¸c kÕt nèi vµ thao t¸c truy cËp c¬ së d÷ liÖu. H¬n n÷a ®èi t−îng Connection cßn cung cÊp thªm mét sè chøc n¨ng chuyªn dông kh¸c nh− cho phÐp thùc thi c©u lÖnh SQL t¸c ®éng vµo d÷ liÖu nh− Insert, Update, Delete, gäi thñ tôc Procedure Store,... hoÆc kiÓm so¸t giao t¸c transaction nh− Rollback, commit. 5.3.2 §èi t−îng Command: §èi t−îng nµy dïng cho môc ®Ých thùc thi c©u lÖnh tèt h¬n Connection. Cho phÐp b¹n chuyÓn tham sè vµo c¸c lÖnh thùc thi SQL. Tham sè cã thÓ chØ ®Þnh kiÓu hoÆc gi¸ trÞ t−êng minh. C¸c tham sè cã thÓ nhËn trÞ tr¶ vÒ sau khi thùc thi..Command cã thÓ dïng cho c¶ 2 môc ®Ých: thùc thi c©u lÖnh SQL kh«ng cÇn nhËn kÕt qu¶ tr¶ vÒ nh− Insert, Update, Delete, Procedure Store, hoÆc thùc thi c¸c lÖnh tr¶ vÒ tËp RecordSet nh− lÖnh Select. 5.3.3 §èi t−îng RecordSet: Lµ ®èi t−îng sö dông th−êng xuyªn trong ADO. Cung cÊp kÕt qu¶ tr¶ vÒ tõ c©u lÖnh truy vÊn mét tËp c¸c b¶n ghi. Trang ASP cã thÓ dïng vßng lÆp ®Ó duyÖt qua c¸c b¶n ghi nµy vµ hiÓn thÞ d÷ liÖu kÕt xuÊt ra trang Web phÝa tr×nh duyÖt. Ngoµi ra RecordSet cßn cho phÐp thùc hiÖn läc d÷ liÖu tõ tËp c¸c b¶n ghi, truy xuÊt ®Õn tong tr−êng cô thÓ cña b¶n ghi th«ng qua ®èi t−îng Field hoÆc danh s¸ch c¸c tr−êng trong b¶n ghi th«ng qua ®èi t−îng Fields 5.4 KÕt nèi víi nguån d÷ liÖu Chuçi kÕt nèi ®−îc dïng ®Ó cung cÊp th«ng tin cho ®èi t−îng Connection biÕt ®Æc ®iÓm cña c¬ së hay nguån d÷ liÖu mµ ADO cÇn truy xuÊt. 5.4.1 T¹o mét ODBC DSN Tr−íc khi t¹o c¸c Script truy xuÊt c¬ së d÷ liÖu (CSDL), ta cÇn chØ dÉn cho ADO x¸c ®Þnh nguån d÷ liÖu cÇn truy xuÊt vµ c¸ch thøc liªn kÕt CSDL. Phæ biÕn vµ ®¬n gi¶n nhÊt ®ã lµ sö dông tªn nguån d÷ liÖu (Data Source Name-DSN) ®Ó ®Þnh vÞ vµ cÊu h×nh nguån d÷ liÖu t−ong thÝch chuÈn ODBC. Víi ODBC b¹n cã thÓ lùa chän c¸c kiÓu DNS ®Ó t¹o, ®ã lµ: User, System hoÆc File. C¸c DNS User vµ System th−êng tró trong registry cña hÖ ®iÒu hµnh WindowsNT. System DNS cho phÐp tÊt c¶ ng−êi sö dông truy nhËp vµo Server ®ã ®Òu cã thÓ truy xuÊt mét CSDL, trong khi ®ã User DNS h¹n chÕ ®èi víi mçi ng−êi sö dông ®¨ng nhËp vµo Server; File DSN sÏ l−u th«ng tin d−íi d¹ng file cho phÐp nhiÒu ng−êi sö dông truy xuÊt CSDL vµ dÔ dµng chuyÓn tõ Server nµy sang Server kh¸c chØ b»ng viÖc copy c¸c tÖp DSN. Chóng ta cã thÓ t¹o ra DSN b»ng c¸ch: • Vµo trong Start\Control Panel, click chuét vµo biÓu t−îng ODBC, chän
  8. http://www.ebook.edu.vn 112 mét d¹ng DSN. • Click Add, chän mét tr×nh ®iÒu khiÓn d÷ liÖu(.MDB, SQL) • Theo c¸c chØ dÉn trªn mµn h×nh ®Ó cÊu h×nh DSN cho CSDL Sau ®©y lµ mét sè kÕt nèi ®Õn c¸c lo¹i CSDL th«ng dông: 5.4.2 C¬ së d÷ liÖu MS Access connStr=“Provider=Microsoft.JetOLEDB.4.0; Data Source = C:\Program Files\Microsoft Visual Studio\VB98\BIBLIO.MDB; Persist Security Info=False” set conn=Server.CreateObject(“ADODB.Connection”) conn.open connStr 5.4.3 C¬ së d÷ liÖu MS Access th«ng qua tr×nh ®iÒu khiÓn ODBC connStr=“Driver=Microsoft Access Driver (*.mdb); DBQ=C:\ Program Files\Microsoft Visual Studio\VB98\BIBLIO.MDB;” set conn=Server.CreateObject(“ADODB.Connection”) conn.open connStr 5.4.4 C¬ së d÷ liÖu MS SQL Server connStr=“Provider=SQLOLEDB.1;Persist Security Info=False; User ID=sa;Initial Catalog=AdvWorks;Data Source=localhost” set conn=Server.CreateObject(“ADODB.Connection”) conn.open connStr NÕu nguån d÷ liÖu hç trî OLEDB ta cã thÓ sö dông ADO th«ng qua ODBC theo c¸ch tæng qu¸t: connStr="Provider=MSDASQL.1;Persist Security Info=False; Data Source=Test" set conn=Server.CreateObject(“ADODB.Connection”) conn.open connStr Trong ®ã Test lµ DataSource thiÕt lËp trong System DNS cña ODBC 5.5 Sö dông ®èi t−îng RecordSet 5.5.1 T¹o RecordSet: set rs=Server.CreateObject(“ADODB.RecordSet”) §Ó trÝch rót d÷ liÖu tõ mét hoÆc nhiÒu b¶ng nµo ®ã trong c¬ së d÷ liÖu, ta th−êng kÕt hîp ®èi t−îng Connection vµo c©u lÖnh SQL Select trong ph−¬ng thøc Open cña RecordSet: rs.open SQLCommand, Conn 5.5.2 DuyÖt qua c¸c b¶n ghi vµ truy xuÊt c¸c tr−êng cña b¶n ghi: Do While not rs.eof Rs.fields](“field_name”) rs.movenext : di chuyÓn con trá cña RecordSet ®Õn b¶n ghi kÕ tiÕp loop rs.close
  9. http://www.ebook.edu.vn 113 C¸c c¸ch truy cËp hîp lÖ vµ t−¬ng ®−¬ng: Rs(“field_name”) Rs.fields(“field_name”) Rs.fields(“field_name”).value Rs(1).value Rs.fields(1).Value NÕu muèn duyÖt qua tÊt c¶ c¸c tr−êng trong b¶n ghi cã thÓ dïng lÖnh: For each Fld in rs.fields Response.write fld.name + “:” + fld.value + “<br>” Next 5.5.3 Läc qua c¸c b¶n ghi trong RecordSet Cã thÓ sö dông mÖnh ®Ò Where cña c©u lÖnh Select hoÆc cã thÓ sö dông thuéc tÝnh Filter cña RecordSet ®Ó chØ ®Þnh ®iÒu kiÖn läc sau khi ®· trÝch xuÊt d÷ liÖu. VÝ dô: sqlStr=”Select * from Products” rs.open sqlStr,conn rs.filter= “ productCode=‘” & SpecialCode & “’” Thuéc tÝnh Filter cho phÐp sö dông mÖnh ®Ò läc gÇn gièng víi mÖnh ®Ò Where 5.5.4 Ph©n trang víi ®èi t−îng RecordSet: §èi t−îng RecordSet cung cÊp 3 thuéc tÝnh quan träng sau ®Ó sö dông ph©n trang: PageSize: KÝch th−íc b¶n ghi trong mét trang PageCount: Tæng sè trang RecordSet truy vÊn ®−îc AbsolutePage: ChØ ®Þnh trang hiÖn hµnh ®ang cÇn ®−îc ®äc §Ó RecordSet cã kh¶ n¨ng ph©n trang, cÇn thiÕt lËp thªm tham sè cho RecordSet tr−íc khi thùc hiÖn truy vÊn: Rs.CursorLocation=3 ‘ Cã thÓ sö dông h»ng adUseClient Rs.PageSize=15 ‘ 15 b¶n ghi trong mét trang TiÕt theo më ®èi t−îng RecordSet truy vÊn d÷ liÖu víi tuú chän lµ c¸c h»ng adOpenForwardOnly(0), adLockReadOnly (1) truy cho ph−¬ng thøc Open nh− sau: Rs.open sqlStr, Conn, 0,1 C«ng viÖc sau cïng lµ ®Þnh vÞ trang th«ng qua thuéc tÝnh AbsolutePage. Ta l−u l¹i vÞ trÝ hiÖn hµnh cña trang d÷ liÖu th«ng qua gi¸ trÞ chøa trong thÎ <input hidden>. Gi¸ trÞ nµy sÏ ®−îc chuyÓn vÒ tr×nh chñ mçi khi ng−êi dïng kÝch vµo. XÐt vÝ dô sau: <%sqlStr="SELECT * FROM Products " ' page navigate session here ........... Dim lCurrentPage Dim lPageCount lCurrentPage = CLng(Request("page")) If lCurrentPage < 1 Then
  10. http://www.ebook.edu.vn 114 lCurrentPage = 1 End If rs.CursorLocation = 3 rs.PageSize = 15 rs.Open sqlStr, conn, 0, 1 'Const adOpenForwardOnly=0, adLockReadOnly = 1 lPageCount = rs.PageCount If lCurrentPage > lPageCount Then lCurrentPage = lPageCount End If if not rs.eof then rs.AbsolutePage = lCurrentPage end if call ShowPageNavigation(lCurrentPage,lPageCount) Do While rs.AbsolutePage = lCurrentPage And Not rs.Eof Response.write rs("ProductName") rs.movenext loop %> <form name="viewFrm" > <input type=hidden name=page > </form> <% Sub ShowPageNavigation (lCurrentPage,lPageCount) If lCurrentPage <> 1 AND lCurrentPage <> 0 Then %> <A HREF="javascript:setValue('<%= lCurrentPage - 1 %>'); ">Previous <% Else %> Previous <% End If%> <%If lCurrentPage < lPageCount Then%> <A HREF="javascript:setValue('<%= lCurrentPage + 1%>'); ">Next <% Else %> Next <% End If%><BR> Page <B> <%= lCurrentPage%> </B> <%= lPageCount%> <%End Sub %> <script language=javascript> function setValue(page){
  11. http://www.ebook.edu.vn 115 viewFrm.page.value= page; viewFrm.submit(); } </script> 5.6 HiÖu chØnh c¸c b¶n ghi 5.6.1 HiÖu chØnh c¸c b¶n ghi dùa vµo RecordSet: Thªm míi b¶n ghi: §Ó thªm míi vµo b¶ng d÷ liÖu qu¶n lý bëi ph−¬ng thøc RecordSet sö dông ph−¬ng thøc AddNew sqlStr=”Select * From Accounts” rs.open sqlStr,Conn ‘ Thªm tμi kho¶n míi vμo b¶ng Accounts rs.Addnew ‘g¸n gi¸ trÞ cho b¶n ghi with rs .fields(“username”)= ‘New User’ .fields(“password”)=’***’ end with ‘l−u l¹i rs.update ‘ChØnh söa néi dung trong b¶n ghi hiÖn hμnh: sqlStr=”Select * From Accounts” rs.open sqlStr,Conn with rs .fields(“password”)=’newpassword’ end with ‘l−u l¹i rs.update ‘Xo¸ b¶n ghi hiÖn hμnh: sqlStr=”Select * From Accounts where username= ‘” &mkuser &”’” rs.open sqlStr,Conn rs.delete 5.6.2 HiÖu chØnh c¸c b¶n ghi b»ng c©u lÖnh SQL víi ®èi t−îng connection sqlStr=”delete * from Accounts where username= ‘” &mkuser &”’” Conn.execute sqlStr 5.7 Sö dông ®èi t−îng Command 5.7.1 T¹o ®èi t−îng Command: set cmdUpdate=Server.CreateObject(“ADODB.Command”) 5.7.2 Sö dông ®èi t−îng Command: sqlUpdate=“update accounts set password = ‘abc’ where username=”‘” & username & “’”
  12. http://www.ebook.edu.vn 116 cmdUpdate.ActiveConnection=strConn cmdUpdate.CommandText=strUpdate cmdUpdate.CommandType=adcmdText cmdUpdate.Execute §èi t−îng Command còng ®−îc dïng ®Ó nhËn kÕt qu¶ tr¶ vÒ tõ c©u lÖnh Select hoÆc tõ mét tªn b¶ng d÷ liÖu, vÝ dô ®Ó lÊy toµn bé néi dung b¶ng d÷ liÖu Accounts, ta chØ cÇn chØ ra tªn b¶ng vµ më RecordSet dùa vµo ®èi t−îng Command: cmdTable.ActiveConnection=strConn cmdTable.CommandText=”Accounts” cmdTable.CommandType=adCmdTable rs.open cmdTable 5.8 Bµi tËp ch−¬ng 5 Bµi 1: Chän chñ ®Ò ®Ó thiÕt kÕ website 1. Website vÒ dÞch vô viÖc lµm. 2. Website vÒ dÞch vô nhµ ®Êt (http://www.nhadat.com). 3. Website b¸o ®iÖn tö (http://vnexpress.net ) 4. Website tr−êng häc. 5. Website dÞch vô gi¶i trÝ nh− ECards, §iÖn hoa, ... Bµi 2: X©y dùng m« h×nh øng dông b¸n hµng qua m¹ng, dùa trªn c¬ së d÷ liÖu, qua ®ã vËn dông c¸c ®èi t−îng cña ADODB ®Ó cã thÓ kÕt nèi víi c¬ së dù liÖu sao cho cã thÓ thÓ hiÖn vµ cung cÊp ®−îc th«ng tin cho kh¸ch hµng. Chñ yÕu giíi thiÖu c¸ch thøc thiÕt kÕ mét øng dông Web cã c¸c chøc n¨ng sau: • Xem th«ng tin chi tiÕt cña mét mÆt hµng. • Lùa chän hµng, thªm vµo, bít ra khái giá hµng. • TÝnh tiÒn. Bµi 3: Bµi tËp tæng hîp, thiÕt kÕ mét sè Web site theo mÉu: 1. ThiÕt kÕ website theo mÉu sau (http://www.flowers.com)
  13. http://www.ebook.edu.vn 117 2. ThiÕt kÕ website theo mÉu sau (http://shopping.yahoo.com) 3. ThiÕt kÕ website theo mÉu sau (http://www.is-edu.hcmuns.edu.vn)
Đồng bộ tài khoản