Bắt đầu học lập trình ứng dụng Web với ASP
Microsoft Active Server Pages (ASP) là môi trường lập trình ứng dụng phía server (server side scripting) hỗ
trợ mạnh trong việc xây dựng các ứng dụng Web. Các ứng dụng ASP có thể làm việc với bất kì cơ sở dữ
liệu nào tương thích với ODBC như SQL, Access, Oracle, Informix, đồng thời rất dễ viết và sửa đổi. Hơn
nữa nó có thể tích hợp các công nghệ sẵn có của Microsoft như COM, . một cách dễ dàng.
Để có thể chạy được các trang web viết bằng ASP, cần phải có webserver hỗ trợ ASP. Microsoft IIS và
Personal Web Server (PWS) trên Win95,98,NT hay Internet Information Server (IIS) trên Windows2000 là
các webserver của Microsoft hỗ trợ ASP. Trong trường hợp webserver không phải của Microsoft, hay hệ
điều hành không phải là Windows mà là Unix, Linux, cần phải cài đặt một thư viện hỗ trợ ASP.
spnày [10]. Do đó không nên dùng Visual InterDev 6.0 để soạn thảo các trang asp trong các ứng dụngUnicode tiếng Việt.- Các phần mềm thông dụng hỗ trợ gõ tiếng Việt Unicode: UniKey, VietKey.3.2. Các phần mềm hệ thống khác- SQL Server 7.0/2000 và MS Access 2000 hỗ trợ Unicode. Với mỗi kí tự Unicode, hệ thống sẽ sửdụng bảng mã UCS-2 để lưu trữ, nghĩa là dùng cố định 2 byte cho một kí tự. SQL 6.5 và MS Access97 không hỗ trợ Unicode.- IIS 5.0 không thể đọc được các tập tin lưu dưới dạng UCS-2 [10], không hỗ trợ CodePage của bảngmã UTF-16 là 1200 [11]. IIS 4.0 không hỗ trợ CodePage của bảng mã UTF-8 là 65001 [11].Tóm lạiUnicode ra đời nhằm khắc phục hạn chế về số lượng kí tự được mã hóa của các bảng mã 8-bit trước đó,cho phép mọi ngôn ngữ có thể sử dụng chung một bảng mã duy nhất. Do vấn đề tương thích trong lưu trữvà truyền dữ liệu mà Unicode có các dạng mã hóa khác nhau như UCS-2, UTF-8, UTF-16. UTF-8 là dạngmã hóa Unicode thông dụng nhất trong các ứng dụng web hiện nay.Để viết các ứng dụng web dùng tiếng Việt Unicode, cần chọn các phần mềm soạn thảo hỗ trợ lưu trữ tập tindưới dạng mã hóa UTF-8 như Visual Studio.NET, MS FrontPage2000, NotePad, … ; sử dụng các hệ quảntrị CSDL hỗ trợ Unicode như SQL Server 7.0/2000, MS Access 2000, …; đặt các đoạn mã chỉ định bảng mãmà webserver và trình duyệt dùng để mã hóa và giải mã dữ liệu.Tài liệu trích dẫn1. 2. 3. 4. 5. 66. 7. 8. 9. 10. 11. [LN];Q254313HẾT Các thủ thuật cùng loại Tìm hiểu 1 số vấn đề trong ASP Được viết bởi Adminngày 14/04/2009 trong ASP | Được xem 584 lần. 1. §Æc ®iÓm: Tªn file: .asp ü Ph¶i cµi thªm Microsoft Active Server Page ®Ó bæ trî cho Web Server, chuyªn xö lý c¸c script viÕt trong file .asp. Cho phÐp viÕt øng dông theo kiÓu Server Side => c¸c trang web sÏ sÏ ®îc xö lý t¹i Server tríc khi göi xuèng Client. ü C¸c m· lÖnh ®îc chÌn vµo trong kh¾p trang web vµ ®îc xö lý tuÇn tù. M· lÖnh lµ c¸c Script, hiÖn ASP cho phÐp dïng 2 srcript lµ VBScript hoÆc JavaScript. Lùa chän Script ®îc ®Æt ngay t¹i dßng ®Çu file: NgÇm ®Þnh lµ VBScript. ü C¸c ®o¹n m· kh«ng ph©n biÖt dµi ng¾n ®îc ®Æt trong dÊu hiÖu: ü C¸c biÕn kh«ng cÇn khai b¸o mµ tù khi g¸n gi¸ trÞ cho nã sÏ x¸c ®Þnh biÕn. ü §Ó in ra c¸c biÕn trong trang web sö dông nh m· sau: ü §Ó lµm viÖc víi hÖ thèng file, thao t¸c víi Database... => cÇn ph¶i sö dông c¸c ®èi tîng kiÓu Active X cña ASP hay cµi ®Æt thªm vµo. ü §Ó lÊy c¸c gi¸ trÞ truyÒn tõ client lªn dïng ph¬ng thøc request. Ex: s = request(“Company”) => LÊy gi¸ trÞ cña biÕn Company. 2. Sö dông c¸c ®èi tîng: ASP cho phÐp sö dông c¸c ®èi tîng kiÓu Active X. §Ó khai b¸o ta dïng ph¬ng thøc CreateObject cña ®èi tîng Server cã s½n. Ex: Set f = Server.CreateObject(“Scripting.FileSystemObject”); Tæng quan: Set param = Server.CreateObject(“PacketName.ClassName”) ProgID Sau ®ã cã thÓ sö dông c¸c hµm cña ®èi tîng ®ã. §Ó gi¶i phãng dïng Set f = nothing 3. Truy nhËp hÖ thèng file: <% Dim objFile Dim objStream Set objFile = Server.CreateObject(“Scripting.FileSystemObject”); Set objStream = objFile.OpenTextFile(Server.Mapath(“/ASP”) &_ “\Chapter05\Listing 5-9\tips.txt”) Randomize Timer IntLine = Int(Rnd*19) For i=0 to intLine ObjStream.SkipLine Next StrTxt = objStream.ReadLine ObjStream.Close Set objFile= Nothing Set objStream= Nothing %> => §Ó t¹o file míi dïng ph¬ng thøc CrateTextFile cña objFile. §Ó ghi mét dßng v¨n b¶n dïng objStream.WriteLine s. 4. Truy nhËp c¬ së d÷ liÖu: <% Dim objConnection Set objConnection = Server.CreateObject(“ADODB.Connection”) ObjConnection.Open “Publication”, ”sa”, “” Dim objRecordSet Set objRecordSet = Server.CreateObject(“ADODB.RecordSet”) ObjRecordSet.Open “Select pub_name From Publishers”, objConnection %> ü §èi tîng kiÓu Connection: t¹o kÕt nèi ADO tíi Database. ü §èi tîng kiÓu RecordSet: cho phÐp thao t¸c trªn table (select,update ...) cña Connection ®· thiÕt lËp. <% objRecordSet.MoveNext Loop ObjRecordSet.close ObjConnection.close Set objRecordSet = nothing Set objConnection = nothing %> ü Chó ý: khi thªm, cËp nhËt d÷ liÖu ngoµi viÖc dïng SQL, cã thÓ thªm theo c¸ch : With objRecordSet do .AddNew .Field(”Authors”) = “Homes” . Field(”Title”) = “Iliad” .Update End With ü Cã thÓ kÕt nèi trùc tiÕp kh«ng qua DSN cña ODBC nh sau : <% Set objConnection = Server.CreateObject(“ADODB.Connection”) StrCnn = “driver = {SQL Server}; Server = smas; uid = sa; pwd= ; database= pubs” objConnection.Open strCnn %> 5. Ph©n trang RecordSet Khi select => cho kÕt qu¶ 1 b¶ng gåm nhiÒu hµng. Tuy nhiªn mçi lÇn chØ muèn sö dông mét vµi hµng, vÝ dô: b¶ng 50 hµng, mçi lÇn hiÓn thÞ 10 hµng => sö dông kü thuËt paging. ADO cung cÊp c¸c thuéc tÝnh cña Recordset nh: PageSize, PageCount, AbsolutePage. PageCount: sè trang, PageSize: sè hµng. ë ®©y ta dïng biÕn session CurrentPage ®Ó ghi nhËn trang hiÖn hµnh. <% Select Case Request.QueryString(“Direction”) Case “” ‘Null Session(“CurrentPage”) = 1 Case “Next” Session(“CurrentPage”) = Session(“CurrentPage”) + 1 Case “Previous” Session(“CurrentPage”) = Session(“CurrentPage”) - 1 End Select %> ü Chó ý: Request.QueryString(“Direction”) QueryString(“Direction”) TiÕn hµnh kÕt nèi truy vÊn d÷ liÖu. <% const adOpenKeySet = 1 dim objConnection kh«ng cÇn khai b¸o còng ®îc dim objRexordset Set objConnection = Server.CreateObject(“ADODB.Connection”) Set ObjConnection.Open “Biblio”, “”, “” Dim strSQL StrSQL = “Select * from Authors” Set objRecordSet = Server.CreateObject(“ADODB.RecordSet”) ObjRecordSet.PageSize = 10 ObjRecordSet.Open strSQL, objConnection, adOpenKeyset ObjRecordSet.AbsolutePage = CLng(Session(“CurrentPage”)) %> Page = of <% Dim i For i = 1 to ObjRecordSet.PageSize %> ... <% ObjRecordSet.MoveNext Next %> Next Page 1 then %> Previous Page <% ObjRecordSet.close ObjConnection.close Set objRecordSet = nothing Set objConnection = nothing %> 6. §èi tîng Application: §èi tîng nµy cho phÐp t¹o c¸c biÕn øng dông. §ã lµ c¸c biÕn cho tÊt c¶ c¸c user cña mét øng dông web. TÊt c¶ c¸c user mµ yªu cÇu c¸c trang web tõ mét th môc web cã thÓ chia xÎ víi nhau c¸c biÕn ®Þnh nghÜa trong c¸c trang ®ã. <% Application.Lock Application(“Company”) = “VASC” Application.Unlock %> ë ®©y ®Þnh nghÜa 1 biÕn lµ Company, cã gi¸ trÞ lµ VASC. V× r»ng biÕn cã thÓ bÞ tranh chÊp nªn ph¶i ®Æt gi÷a Lock vµ Unlock. <% Application.Lock Application(“Time”) = Now Application.Unlock %> 7. §èi tîng Session: Cho phÐp t¹o ra c¸c biÕn øng víi tõng ngêi dïng. Ch¼ng h¹n biÕn cã tªn lµ UserName, øng víi mçi user cã mét gi¸ trÞ cô thÓ kh¸c nhau, ph©n biÖt. Nhng khi sö dông th× tæng qu¸t cho c¸c user. Thùc ra mçi biÕn sÏ ®îc server ph¸t sinh vµ g¸n cho nã mét gi¸ trÞ ®Þnh danh GUID (Globally Unique Identifier, 128 bit) vµ göi tíi Browser. Browser sÏ lu tr÷ GUID ®ã vµ sö dông ®Ó yªu cÇu d÷ liÖu tõ biÕn cã GUID t¬ng øng trªn Server. <% Session(“Company”) = “NewTech” Session(“Email”) = “leha@hotmail.com” %> My Company : Email : C¸c biÕn Session nµy sÏ bÞ huû bá sau mét kho¶ng thêi gian (kho¶ng 20’) ngêi dïng th«i truy xuÊt c¸c trang web trong th môc web. ü Chó ý lµ trong file global.asa => cho ph¸p ®Æt c¸c biÕn, code vµo c¸c thñ tôc Session_OuStart vµ Session OuEnd. VÝ dô: Sub Session_OuStart Session(“Company”) = “VASC” Session(“Email”) = “thanhha@vasc.vnn.vn” End sub 8. §èi tîng Request: §Ó göi d÷ liÖu lªn Server, ta sö dông Form trong trang Web. Tªn cña c¸c ®åi tîng web nh Text, Button n»m trong form sÏ ®îc dïng nh tªn biÕn khi ph©n tÝch, lÊy d÷ liÖu trªn Server. Trong form cã button kiÓu Submit ®Ó ngêi dïng ®Èy d÷ liÖu lªn Server. Form cã hai thuéc tÝnh lµ Action vµ Method. Action quy ®Þnh file (.asp) mµ sÏ ®ãn nhËn vµ xö lý d÷ liÖu ®Èy lªn. method quy ®Þnh c¸ch thøc göi d÷ liÖu; nÕu lµ POST th× tÊt c¶ d÷ liÖu trong form sÏ ®ãng gãi vµ ®Èy lªn Server; NÕu lµ GET th× d÷ liÖu ®îc göi ®i nh mét phÇn cña URL, thêng lµ sau dÊu “?”. ü KiÓu göi d÷ liÖu GET còng cã thÓ lîi dông ®Ó göi ®i díi d¹ng mét link. < A href = “ ” >Test ü Göi theo GET th× ®é lín bÞ h¹n chÕ vµ kh«ng che dÊu d÷ liÖu. §Ó lÊy d÷ liÖu ta dïng ph¬ng thøc cña ®èi tîng Request. S = Request.Form(“Name”) S = Request(“Name”) Trong trêng hîp d÷ liÖu ®îc ®a lªn tõ 1 hyperlink, cã thÓ dïng: S = Request.QueryString(“Name”) S = Request(“Name”) ü
File đính kèm:
- Bắt đầu học lập trình ứng dụng Web với ASP.doc