Thiết kế website đăng kí kinh doanh qua mạng

Tài liệu Thiết kế website đăng kí kinh doanh qua mạng: ... Ebook Thiết kế website đăng kí kinh doanh qua mạng

doc88 trang | Chia sẻ: huyen82 | Lượt xem: 1490 | Lượt tải: 0download
Tóm tắt tài liệu Thiết kế website đăng kí kinh doanh qua mạng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
MUÏC LUÏC LÔØI NOÙI ÑAÀU Nhaèm goùp phaàn vaøo coâng cuoäc xaây döïng chính phuû ñieän töû vaø aùp duïng coâng ngheä thoâng tin vaøo thöïc tieån cuoäc soáng, moïi ngöôøi baát cöù ai muoán hoaït ñoäng kinh doanh moät caùch hôïp phaùp ñeàu phaûi ñeán Sôû Keá Hoaïch Vaø Ñaàu Tö cuûa tænh nhaø ñeå ñaêng kyù thaønh laäp Doanh Nghieäp, maø hieän nay vaán ñeà ñaêng kyù kinh doanh vaãn coøn laøm maát thôøi gian vaø baát tieän cho khoâng ít ngöôøi, chính vì vaán ñeà böùc thieát ñoù ñaõ giuùp toâi naûy sinh yù töôûng laø thieát keá moät WebSite “Ñaêng Kyù Kinh Doanh Qua Maïng” cho Sôû Keá Hoaïnh Vaø Ñaàu Tö Baø Ròa – Vuõng Taøu. WebSite naøy seõ taïo ñieàu kieän thuaän lôïi cho caùc Doanh Nghieäp coù theå ñaêng kyù kinh doanh moät caùch deå daøng vaø nhanh choáng vôùi chi phí thaáp nhöng hieäu quaû laïi cao. Moïi ngöôøi khoâng caàn phaûi tröïc tieáp ñeán Sôû Keá Hoaïch Vaø Ñaàu Tö ñeå ñaêng kyù thaønh laäp Doanh Nghieäp cho mình maø coù theå ngoài taïi nhaø nhöng laïi xem ñöôïc ñaày ñuû nhöõng thoâng tin höôùng daãn cuõng nhö nhöõng thuû tuïc ñaêng kyù kinh doanh raát roû raøng vaø chi tieát, roài sau ñoù töï ñaêng kyù kinh doanh cho mình. Ngoaøi ra qua Website naøy caùc doanh nghieäp coù theå cuøng trao ñoåi thoâng tin vôùi nhau hoaëc vôùi Sôû Keá Hoach Ñaàu Tö thoâng qua muc Dieãn Ñaøn Doanh Nghieäp. Trong baûn baùo caùo naøy, toâi xin trình baøy quaù trình phaân tích, thieát keá moät heä thoáng quaûn lyù ñaêng kyù kinh doanh qua maïng cho “Sôû Keá Hoaïch Vaø Ñaàu Tö Tænh Baø Ròa – Vuõng Taøu” vôùi heä quaûn trò cô sôû döõ lieäu SQL Server cuûa haõng MICROSOFT. Baûn baùo caùo goàm ba phaàn chính: Phaàn 1. Toång quan veà cô sôû lyù thuyeát Phaàn 2. Khaûo saùt vaø phaân tích heä thoáng Phaàn 3. Hieän thöïc chöông trình Sau quaù trình tìm hieåu vaø thieát keá, nay toâi ñaõ hoaøn thaønh. Tuy nhieân, thôøi gian nghieân cöùu coù haïn, kieán thöùc vaø kinh nghieäm coøn haïn cheá neân trong quaù trình phaân tích, thieát keá cho heä thoáng seõ khoâng traùnh khoûi ñöôïc nhöõng sai soùt. Raát mong söï goùp yù cuûa thaày coâ vaø phoøng ñaêng kyù kinh doanh cuøng caùc baïn sinh vieân gaàn xa ñeå toâi coù theå hoaàn thaønh toát hôn Website cuûa mình . PHAÀN 1. TOÅNG QUAN VEÀ CÔ SÔÛ LYÙ THUYEÁT PHAÀN 1. TOÅNG QUAN VEÀ CÔ SÔÛ LYÙ THUYEÁT CHÖÔNG I. GIÔÙI THIEÄU VEÀ WORD WIDE WEB I.1. Lòch söû Web ñöôïc sinh ra bôûi Internet, vaø noù cho thaáy khaû naêng töï trò vaø giôùi haïn cuûa kieán truùc Internet. Ngaøy nay, caùc chöông trình duyeät Web coù caùc khaû naêng truy caäp vaøo caùc coâng ngheä Internet khaùc nhau nhö : Emai, Word Wide Web…. Nhöng Web vaø Internet khoâng chæ laø moät ngaønh kyõ thuaät maø ñoù laø moâi tröôøng ñeå con ngöôøi lieân laïc, hoïc taäp, vaø taùc ñoäng qua laïi nhau trong cuøng moät moâi tröôøng vaên hoùa. Naêm 1926, Paul Baran, moâ taû treân giaáy lôøi giaûi moät vaán ñeà laøm ñau ñaàu caùc nhaø quaân söï luùc baáy giôø, töïa :”Lieân laïc phaân taùn qua maïng “. Anh ta ñöa ra moät heä thoáng maùy tính roäng khaép ñaát nöôùc keát noái laïi vôùi nhau söû duïng heä thoáng maïng khoâng taäp trung (decentralized) do ñoù neáu moät hay nhieàu node maïng chính bò phaù huûy thì caùc node coøn laïi vaãn töï ñoäng ñieàu chænh caùc keát noái ñeå duy trì vieäc lieân laïc. Do maïng laø khoâng taäp trung (decentralized), neân ta coù theå theâm vaøo moät maùy tính thoâng qua ñöôøng daây ñieän thoaïi, moät thieát bò phaàn cöùng, vaø moät soá phaàn meàm NCP (network control protocol), ví duï maïng ARPAnet. Moät öùng duïng chính ñöôïc phaùt trieån ñaàu tieân treân ARPAnet laø thö ñieän töû (electronic mail). Ngaøy nay, email laø moät phaàn khoâng theå thieáu ñöôïc cuûa Net vaø noù ñöôïc thieát keá saün beân trong caùc trình duyeät Web (ví duï netscape) do ñoù moät chöông trình ñôn leû ñeå xem email laø khoâng caàn thieát. I.2. Giao thöùc TCP/IP Vaøo nhöõng naêm 1970, nhu caàu trao ñoåi truyeàn tin treân caùc maïng phaân bieät coù “ngoân ngöõ ” khaùc bieät nhau laø caàn thieát. Naêm 1974, Vint Cerf vaø Bob Kahn ñaõ ñöa ra vieäc thieát keá chi tieát cho moät protocol ñeå lieân laïc giöõa caùc maïng khaùc nhau. Ñeán naêm 1982, vieäc thieát keá naøy ñöôïc caøi ñaët vaø ñöôïc goïi laø TCP/IP (Transmission control protocol /Internet protocol). Phaàn TCP cuûa giao thöùc TCP/IP cung caáp cô cheá kieåm tra vieäc truyeàn döõ lieäu giöõa Client vaø Server: neáu döõ lieäu bò maát hay hoûng TCP seõ yeâu caàu gôûi laïi döõ lieäu cho ñeán khi heát caùc loãi. Phaàn IP trong giao thöùc TCP/IP di chuyeån döõ lieäu töø node naøy sang node khaùc. Noù seõ giaûi maõ caùc ñòa chæ vaø tìm ñöôøng ñeå ñöa döõ lieäu ñeán ñích. Noù coù theå söû duïng bôûi caùc maùy tính nhoû ñeå lieân laïc treân caùc maïng LAN (ethernet hay token ring) coù theå söû duïng caû giao thöùc TCP/IP vaø caùc giao thöùc khaùc nhau nhö novel hay window for workgroups. Moät maùy coù theå ôû maïng LAN vaø söû duïng TCP/IP ñeå keát noái vôùi caùc maùy khaùc treân theá giôùi . Boä quoác phoøng Myõ nhanh choùng ñònh nghóa TCP/IP nhö protocol chuaån cho caùc heä thoáng lieân maïng cuûa quaân söï. Tuy nhieân vôùi öu theá cuûa mình TCP/IP nhanh choùng thaâm nhaäp vaø trôû thaønh chuaån môùi cho taát caû caùc heä thoáng maïng daân duïng vaø laø tieàn ñeà cho maïng Internet ngaøy nay . Telnet TCP/IP cung caáp khaû naêng login töø xa thoâng qua giao thöùc cuûa telnet. Vôùi telnet, User coù theå lieân keát vaø tìm thoâng qua caùc thö muïc treân moät heä thoáng ôû xa vaø chaïy caùc chöông trình. I.3. Giao thöùc FTP File transfer protocol: laø moät phaàn meàm (software) cho pheùp truyeàn file nhò phaân hoaëc file text töø moät maùy naøy sang maùy khaùc treân Internet, hay noùi khaùc hôn, FTP laø dòch vuï (service) cho pheùp chuùng ta sao cheùp moät file töø baát kyø Internet host naøy ñeán baát kyø Internet host khaùc. Gioáng nhö nhöõng dòch vuï khaùc treân Internet, FTP söû duïng heä thoáng Client /Server. Moät heä thoáng Client /Server coù theå hieåu nhö sau: Khaùi quaùt: Moät trong nhöõng nguyeân taéc söû duïng maïng laø cho pheùp chia seû caùc taøi nguyeân. Raát nhieàu thôøi gian vieäc chia seû naøy ñöôïc hoaøn thaønh bôûi hai chöông trình rieâng bieät, moãi chöông trình chaïy treân maùy tính khaùc nhau. Moät chöông trình goïi laø Server, cung caáp moät taøi nguyeân rieâng. Chöông trình kia goïi laø Client ñeå söû duïng taøi nguyeân ñoù. Dòch vuï naøy coù teân laø FTP, ñeå keát noái vaøo moät chöông trình Server treân maùy tính töø xa. Baèng caùch söû duïng chöông trình Client chuùng ta phaùt ra nhöõng leänh ñöôïc chuyeån ñeán Server. Server seõ traû lôøi baèng caùch taûi nhöõng gì maø taäp leänh tôùi nôi phaùt ra yeâu caàu ñoù. Ñeå söû duïng, duøng leänh FTP vaø moâ taû ñòa chæ cuûa host töø xa maø chuùng ta muoán keát noái vaøo. Anonymous FTP: Khi duøng FTP ñeå chuyeån file töø maùy naøy ñeán maùy khaùc treân Internet, coù moät vaøi haïn cheá: Chuùng ta khoâng theå truy caäp vaøo moät maùy tính tröø khi ñöôïc söï cho pheùp. Nghóa laø chuùng ta phaûi coù User ID (account name) vaø password thì môùi xaâm nhaäp vaøo ñöôïc. Khi söû duïng chöông trình FTP ñeå keát noái vaøo moät anonymous FTP host, noù hoaït ñoäng gioáng nhö nghi thöùc FTP, ngoaïi tröø khi noù ñoøi hoûi moät User ID, noù laø anonymous. Khi noù ñoøi hoûi password, chuùng ta ñaùnh vaøo ñòa chæ email hoaëc teân cuûa mình.Vì vaäy, ngöôøi quaûn trò heä thoáng coù theå laàn ra daáu veát ai ñang truy caäp vaøo files cuûa hoï. Khi ngöôøi quaûn trò heä thoáng caøi ñaët moät maùy tính nhö laø moät anonymous FTP host ñònh roõ nhöõng thö muïc duøng cho vieäc truy caäp chung. Nhö moät bieän phaùp an toaøn, haàu heát nhöõng anonymous FTP host cho pheùp User download file, nhöng khoâng cho pheùp upload file (cheùp leân Server). Neáu nhö moät anonymous cho pheùp upload, ngöôøi quaûn trò heä thoáng yeâu caàu User copy taát caû nhöõng file môùi naøy ñeå chæ thö muïc upload ñaõ xaùc ñònh tröôùc ñoù. Sau ñoù, ngöôøi quaûn trò heä thoáng coù dòp kieåm tra nhöõng file naøy, roài chuyeån chuùng ñeán moät trong nhöõng thö muïc download chung. Baèng caùch naøy coù theå ngaên chaën ñöôïc nhieàu ngöôøi, baûo veä hoï khoûi upload nhöõng file coù theå phaù hoaïi heä thoáng. Nhö moät User treân Internet, chuùng ta coù theå söû duïng nghi thöùc FTP ñeå sao cheùp file giöõa hai host baát kyø treân Internet. Thöïc teá, maëc duø haàu heát moïi ngöôøi chæ coù moät taøi khoaûn (account) duy nhaát treân Internet vaø nghi thöùc FTP haàu nhö ñöôïc söû duïng ñeå download file duøng chung. i.4. Giao Thöùc Word Wide Web Word Wide Web laø moät taäp protocol söû duïng caáu truùc trang (Web page) ñeå cung caáp caùc thoâng tin cho User chaïy Web Client software nhö netscape, navigator…..Noù khoâng nhöõng cho pheùp keát noái döõ lieäu töø nhöõng Web page khaùc nhau hoaëc töø nhöõng vò trí khaùc nhau trong moät trang maø coøn cho pheùp truy xuaát ñeán caùc Internet services khaùc. HTTP HTTP HTML Page Window NT Server Public Internet or Private Internet SQL Server DBMS Internet Information Server (Web Server) Active Server Page HTML Form Internet Explorer other Web Browser Database Server Any Client Platform Hình :Caáu Truùc Web Web coù khaû naêng lieân keát vôùi nhöõng loaïi taøi nguyeân cuûa Internet nhö: moät file vaên baûn, moät phieân keát noái cuûa telnet…. Gioáng nhö nhieàu taøi nguyeân khaùc treân Internet, Web duøng moät heä thoáng Client/Server. Caùc Client ñöôïc goïi laø Web Browser duøng ñeå truy caäp vaøo moïi dòch vuï vaø taøi nguyeân treân Internet. Ñieàu quan troïng nhaát laø moät Browser cuõng bieát caùch keát noái vaøo Web Server ñeå ñöa ra caùc taøi lieäu hypertext coâng coäng. Coù raát nhieàu Web Server naèm khaép nôi treân maïng Internet vaø haàu heát chuùng chuyeân veà moät lónh vöïc naøo ñoù. Söï buøng noå Web Web söû duïng coâng ngheä môùi HTML (hypertext markup language ) ñöôïc söû duïng ñeå vieát trang Web, moät maùy Web Server söû duïng HTTP (hypertext transfer protocol) ñeå truyeàn caùc trang naøy vaø moät trình duyeät Web taïi maùy Client ñeå nhaän döõ lieäu, xöû lyù vaø ñöa ra keát quaû. HTML laø moät ngoân ngöõ ñaùnh daáu (markup) coù nghóa laø caùc trang Web chæ coù theå xem thoâng qua moät chöông trình duyeät Web. Vaøo naêm 1993, National Center for SupercomputingApplications (NCSA) taïi ñaïi hoïc Illinois ñöa ra phieân baûn Mosaic, moät chöông trình Web ñöôïc thieát keá bôûi Marc Andreessen. Noù ñaõ lan roäng treân Internet vaø chæ trong voøng moät naêm coù ñeán hai trieäu ngöôøi söû duïng Web vôùi Mosaic. Moïi ngöôøi cuøng taïo vaø truy caäp caùc trang Web. Ñoù laø söï phaùt trieån raát lôùn chöa töøng coù trong lòch söû phaùt trieån maùy tính. Vaøo giöõa naêm 1993 coù 130 sites treân Word Wide Web. Saùu thaùng sau coù hôn saùu traêm sites. Ngaøy nay, coù gaàn moät traêm nghìn Web Sites treân theá giôùi. CHÖÔNG II. SÔ LÖÔÏC VEÀ CAÙC MOÂ HÌNH CSDL TREÂN MAÏNG Ii.1. Moät soá khaùi nieäm cô baûn II.1.1. Coâng ngheä Client /Server Coâng ngheä Client /Server thöïc hieän vieäc phaân taùn xöû lyù giöõa caùc maùy tính. Veà baûn chaát, moät coäng ngheä ñöôïc chia ra vaø xöû lyù bôûi nhieàu maùy tính. Caùc maùy tính ñöôïc xem laø Server thöôøng ñöôïc duøng ñeå löu tröõ taøi nguyeân ñeå nhieàu nôi truy xuaát vaøo. Caùc Server seõ thuï ñoäng chôø ñeå giaûi quyeát caùc yeâu caàu töø caùc Client truy xuaát ñeán chuùng. Moät Client ñöa ra yeâu caàu veà thoâng tin hoaëc veà taøi nguyeân cho Server. Server seõ laáy thoâng tin vaø gôûi ñeán cho Client vaø Client hieån thò thoâng tin ñoù cho ngöôøi duøng. Chæ coù maùy tính naøo thöïc hieän taùc vuï Client / Server môùi ñöôïc goïi laø maùy Client hay Server vaø chöông trình chaïy treân maùy naøy ñöôïc goïi laø chöông trình Client hay Server. II.1.2. Internet Internet laø moät maïng maùy tính coù phaïm vi toaøn caàu bao goàm nhieàu maïng nhoû cuõng nhö caùc maùy tính rieâng leû ñöôïc keát noái vôùi nhau ñeå coù theå lieân laïc vaø trao ñoåi thoâng tin. Treân quan ñieåm Client / Server thì coù theå xem Internet nhö laø maïng cuûa caùc maïng cuûa caùc Server, coù theå truy xuaát bôûi haøng trieäu Client. Vieäc chuyeån vaø nhaän thoâng tin treân Internet ñöôïc thöïc hieän baèng nghi thöùc TCP/IP. Nghi thöùc naøy goàm hai thaønh phaàn laø Internet protocol (IP) vaø transmission control protocol (TCP). IP caét nhoû vaø ñoùng goùi thoâng tin chuyeån qua maïng, khi ñeán maùy nhaän, thì thoâng tin ñoù seõ ñöôïc raùp noái laïi. TCP baûo ñaûm cho söï chính xaùc cuûa thoâng tin ñöôïc chuyeàn ñi cuõng nhö cuûa thoâng tin ñöôïc raùp noái laïi ñoàng thôøi TCP cuõng seõ yeâu caàu truyeàn laïi tin thaát laïc hay hö hoûng . II.1.3. Web Server Tuøy theo thoâng tin löu tröõ vaø muïc ñích phuïc vuï maø caùc Server treân Internet seõ ñöôïc phaân chia thaønh caùc loaïi khaùc nhau nhö Web Server, email Server hay FTP Server. Moãi loaïi Server seõ ñöôïc toái öu hoùa theo muïc ñích söû duïng. Web Server laø Web cung caáp thoâng tin ôû daïng sieâu vaên baûn (caùc taäp tin HTML ), ñöôïc bieåu dieãn ôû daïng trang. Caùc trang coù chöùa caùc lieân keát tham chieáu ñeán caùc trang khaùc hoaëc ñeán caùc taøi nguyeân khaùc treân cuøng moät Web Server moät treân moät Web Server khaùc. II.1.4. Cô sôû döõ lieäu (CSDL) Cô sôû döõ lieäu laø moät söu taäp thoâng tin veà moät chuû ñeà, nhaèm toå chöùc hôïp lyù nhaèm ñaït ñeán muïc ñích quaûn lyù, tìm kieám vaø xöû lyù thoâng tin ñöôïc thuaän tieän vaø nhanh choùng. II.2. Keát hôïp CSDL vaø Web Trong quaù trình khai thaùc Web Server, do söï buøng noå thoâng tin neân soá löôïng caùc trang Web (maø voán ñöôïc löu tröõ döôùi daïng caùc taäp tin) taêng leân raát nhanh daãn ñeán vieäc quaûn lyù Web Server ngaøy caøng trôû neân khoù khaên. Web Server laø troïng taâm cuûa heä thoáng, do ñoù vieäc quaûn lyù toát Web Server seõ laøm cho toaøn boä heä thoáng hoaït ñoäng toát hôn. Trong voâ soá caùc trang Web chöùa trong moät Web Server ngöôøi ta thaáy raèng raát nhieàu trang maø noäi dung cuûa chuùng hoaøn toaøn coù theå ñöa vaøo CSDL. Neáu thay nhöõng trang Web nhö treân baèng moät trang Web duy nhaát coù khaû naêng hieån thò thoâng tin laáy töø cô sôû döõ lieäu thì toát hôn tìm kieám treân nhöõng taäp tin rôøi raïc. Nhö vaäy vaán ñeà quaûn lyù toát Web Server daãn ñeán vieäc xaây döïng moät CSDL löu tröõ thoâng tin. Khi xaây döïng moät öùng duïng CSDL, ngoaïi tröø CSDL ñoù chæ phuïc vuï cho muïc ñích caù nhaân, coøn khoâng thì xem xeùt vieäc taïo khaû naêng ñeå nhieàu ngöôøi coù theå truy xuaát ñeán CSDL. Muoán vaäy thì caàn coù moät heä thoáng goàm nhieàu maùy tính, taát caû ñeàu ñöôïc keát noái vôùi nhau vaø vôùi Server chöùa CSDL. Khi ñoù seõ naûy sinh moät soá vaán ñeà sau: - Vôùi tröôøng hôïp nhöõng ngöôøi muoán truy xuaát ñeán ôû xa Server vôùi moät khoaûng vaøi km, vaøi traêm hay vaøi ngaøn km, nhöng vieäc thieát laäp rieâng moät heä thoáng maïng treân dieän roäng ñeán nhö theá laø khoâng khaû thi. - Caùc maùy tính truy xuaát ñeán CSDL coù theå thuoäc nhieàu hoï maùy, chaïy treân nhieàu heä ñieàu haønh khaùc nhau. Do ñoù caàn phaûi xaây döïng caùc öùng duïng thích hôïp vôùi caùc neàn taûng ñoù, vaø caùc öùng duïng naøy seõ ñöôïc phaân tích taïi moãi Client. Sau moät thôøi gian khai thaùc, khi doù nhu caàu söøa ñoåi caùc öùng duïng Client thì phaûi söûa caùc öùng duïng treân töøng Client. Coù moät soá chuyeân gia cho raèng Worl Wide Web laø moät giaûi phaùp cho vaán ñeà naøy, vì caùc lyù do sau: Hoã trôï ña neàn taûng. Hoã trôï maïng. II.2.1. Hoã trôï ña neàn taûng Moät trong nhöõng ñieåm noåi baäc nhaát cuûaWeb laø moät trang Web coù theå xem ñöôïc treân nhieàu hoï maùy tính khaùc nhau. Do ñoù trong heä thoáng CSDL Web, caùc Client coù theå goàm nhieàu maùy tính chaïy treân caùc heä ñieàu haønh khaùc nhau maø khoâng caàn phaûi phaùt trieån caùc öùng duïng ñeå chaïy treân töøng maùy maø chæ caàn xaây döïng moät trang Web ñaët taïi Web Server. Ñieàu naøy seõ giaûm thôøi gian vaø chi phí phaùt trieån öùng duïng, giaûm chi phí baûo trì vaø caäp nhaät caùc öùng duïng ñoù. II.2.2. Hoã trôï maïng Moät ñieàu quan troïng caàn phaûi xeùt ñeán khi thieát keá caùc öùng duïng CSDL laø laøm theá naøo ñeå truy xuaát CSDL töø caùc maùy ôû xa (remote computer). Nhö ñaõ ñeà caäp ôû treân khoâng moät caù nhaân hay toå chöùc naøo coù theå xaây döïng moãi moät heä thoáng maïng maùy tính traûi roäng treân qui moâ haøng traêm, haøng ngaøn km, trong khi ñoù ñaõ toàn taïi moät heä thoáng maïng coù phaïm vi toaøn caàu laø Internet. Web Server vaø Web Brower môùi coù nhöõng tính naêng veà maïng. Chuùng ñöôïc thieát keá ñeå chuyeån vaø nhaän thoâng tin thoâng qua Internet hay maïng cuïc boä. Vaäy taïi sao khoâng söû duïng Internet cho muïc ñích truy caäp CSDL. Neáu xeùt ôû khía caïnh quaûn lyù toát taøi lieäu cuûa Web Server hay ôû khía caïnh khai thaùc toát CSDL treân phaïm vi roäng ñeàu daãn ñeán moät nhu caàu laø tích hôïp Web vôùi CSDL. Tích hôïp Web vôùi CSDL bao goàm vieäc taïo khaû naêng truy caäp vaø caäp nhaät döõ lieäu thoâng qua Web. Ñeå coù thöïc hieän vieäc tích hôïp Web vôùi CSDL thì caàn phaûi xaây döïng laïi heä thoáng trong ñoù coù cô cheá chuyeån thoâng tin giöõa trang Web vaø CSDL, cô cheá truy caäp ñeán CSDL vaø nhöõng trang Web ñoäng trong moâi tröôøng Web vaø phaûi coù nhöõng tính naêng nhö laø moät heä thoáng öùng duïng CSDL treân Web. Trong trang Web thì vieäc giao tieáp vôùi ngöôøi söû duïng ñöôïc thöïc hieän thoâng qua caùc “HTML form”. Caùc form naøy chöùc caùc phaàn töû duøng ñeå nhaäp lieäu nhö laø textbox, checkbox, option button. Khi hoaøn taát vieäc nhaäp lieäu baèng caùch baám vaøo moät nuùt ñeå chaáp nhaän submit, haønh ñoäng naøy seõ gôûi noäi dung cuûa form ñeán Web Server. Do Internet laø heä thoáng Web Client/Server neân heä thoáng öùng duïng CSDL treân Web seõ mang nhöõng ñaëc ñieåm cuûa moät heä thoáng öùng duïng CSDL Client/Server. Do ñoù, vieäc nghieân cöùu veà caùch tieáp caän ñeå xaây döïng heä thoáng öùng duïng Client/Server laø raát caàn thieát. Hieän nay ña soá nhaø phaùt trieån phaàn meàm cho raèng caùch tieáp caän döïa treân thaønh phaàn (component_based) laø caùch tieáp caän toát ñeå phaùt trieån caùc öùng duïng Client/Server. II.3. Caùc giaûi phaùp tích hôïp Web vaø CSDL Trong phaàn naøy, moâ taû moät soá moâ hình ñaõ ñöôïc aùp duïng cho caùc Web site coù tích hôïp vôùi CSDL vaø xem xeùt ôû hai khía caïnh, thöù nhaát laø söï lieân laïc giöõa caùc Client/Server, thöù hai laø phöông phaùp truy xuaát CSDL. Nhöõng moâ hình bao goàm: Moâ hình Web site theo kieán truùc 1 lôùp. Moâ hình Web site theo kieán truùc 2 lôùp coå ñieån. Moâ hình Web site tích hôïp vôùi CSDL theo kieán truùc 3 lôùp. Moâ hình Web site tích hôïp vôùi CSDL theo kieán truùc 3 lôùp caûi tieán. II.3.1. Moâ hình kieán truùc moät lôùp ÖÙng duïng moät lôùp ñôn giaûn chæ laø moät lôùp, moät chöông trình Stand-alone chaïy treân maùy cuûa User. Noù coù theå lieân laïc vôùi CSDL nhöng CSDL naøy naèm treân cuøng moät maùy, moät ñieåm chính laø caû 3 dòch vuï: User, bussiness vaø döõ lieäu ñöôïc keát noái vaøo trong moät chöông trình. II.3.2. Moâ hình kieán truùc hai lôùp Caùc Web Sites ñaàu tieân ñöôïc xaây döïng theo kieán truùc Client/Server hai lôùp bao goàm: Lôùp thöù nhaát coù Web Browser. Lôùp thöù hai coù Web Server chöùa caùc trang Web (caùc taäp tin HTML), ñöôïc thieát keá töø tröôùc. II.3.3. Moâ hình kieán truùc ba lôùp Caùc kieán truùc Web site ñöôïc xaây döïng theo moâ hình naøy bao goàm 3 lôùp nhö sau: Lôùp thöù nhaát goàm Web Browser. Lôùp thöù hai goàm Web Server vaø Application Server. Lôùp thöù ba Server CSDL, chöùa CSDL vaø phaàn giao tieáp vôùi CSDL. II.3.4. Caùc vaán ñeà baûo maät Ñoái vôùi caùc nhaø öùng duïng Web, coù raát nhieàu ngöôøi truy caäp ñeán cho neân vaán ñeà baûo maät ñeå kieåm soaùt quyeàn truy caäp ngöôøi duøng cuõng raát phöùc taïp vaø quan troïng. Coù raát nhieàu caùch baûo maät, goàm: Vò trí ñaët cheá ñoä baûo maät Quyeàn truy caäp cheá ñoä ngöôøi duøng. Caùc nguyeân taéc baûo maät thôøi ñieåm thieát keá (design-time security). Quyeàn truy caäp tôùi caùc öùng duïng Web, caùc thö muïc vaø caùc taäp tin. Caùc cheá ñoä baûo maät thôøi ñieåm thöïc thi. Giôùi haïn truy caäp Web visitor. Baûo maät qua ñöôøng truyeàn HTTP. CHÖÔNG III. TÌM HIEÅU VEÀ IIS (INTERNET INFORMATION SERVER) III.1. Giôùi thieäu Ngaøy nay, Web Server ñaõ ñuû maïnh ñeå coù theå trôû thaønh caùc haït nhaân khoâng theå thieáu, duø chuùng duøng trong Intranet hay cho moät Web site treân Internet thì caùc coâng cuï quaûn trò maïng vaãn caàn thieát ñeå quaûn lyù heä thoáng. Vieäc choïn moät Web Server trôû neân raát deã daøng, chuùng ta hoã trôï vieäc cung caáp caùc trang web tónh (static) khi moät trình duyeät (Browser) ñoøi hoûi. Tuy nhieân, caùc öùng duïng Web ngaøy nay caøng taân tieán vaø ñoøi hoûi söï töông taùc raát nhieàu vôùi ngöôøi söû duïng, ñaây laø caùc öùng duïng Web ñoäng. Caùc Web Server ñoøi hoûi phaûi coù caùc coâng cuï quaûn lyù chaët cheõ tích hôïp vôùi caùc Server cuûa cô sôû döõ lieäu (CSDL), coù caùc coâng cuï ñeå phaùt trieån öùng duïng, toác ñoä ñaûm baûo vaø chi phí sôû höõu thaáp. Khoù maø thieát laäp nhöõng yeâu caàu veà Server neáu khoâng löu yù veà heä ñieàu haønh. Ngöôøi ta ñang quan taâm ñeán Server chaïy treân Linux ,Windows NT. Trong thöû nghieäm veà hieäu suaát thì chæ coù ICSS (Internet connection secure Server ) cuûa IBM chaïy treân AIX (theå Unix thoâng duïng ). Ñeå ñieàu khieån Windows NT nhoùm thöû nghieäm ñaõ taêng löu löôïng cho Server öùng duïng vaø loaïi boû moät soá dòch vuï Server nhö plug and play (caám vaø chaïy ), alter (thoâng baùo ), thoâng ñieäp vaø trôï giuùp TCP/IP. Treân AIX ngöôøi ta taêng kích thöôùc haøng truyeàn (transmit queue) vaø kích thöôùc löu tröõ gôûi nhaän TCP/IP. Ôû möùc ñoä öùng duïng, vieäc ñieàu chænh caùc Web Server naøy töông ñoái ñôn giaûn. Treân IIS ta coù theå taêng thôøi gian maø ñoái töôïng ñöôïc löu treân boä nhôù cache vaø thôøi gian luaân chuyeån truy caäp. Treân IIS ngöôøi ta taét chöùc naêng truy caäp thoâng tin veà trình duyeät truy caäp trang vaø thoâng tin yeâu caàu, taêng soá löôïng toái ña veà soá luoàng (thread) kích hoaït. Vôùi Netscape, nhoùm thöû nghieäm taêng soá löôïng yeâu caàu. Vaán ñeà ñaët ra laø Web Server naøo ñuû tinh vi ñeå coù theå xöû lyù caùc yeâu caàu ngoaøi HTML nhö: Deã caøi ñaët. Khaû naêng môû roäng vaø chaát löôïng cuûa caùc keát noái ñeå phaùt trieån öùng duïng. Möùc ñoä vaø chaát löông hoã trôï (keå caû taøi lieäu). Chi phí sôû höõu. Caùc nhaø thieát keá ñaõ ñöa ra boán giaûi phaùp: Giaûi phaùp apache. Giaûi phaùp IBM. Giaûi phaùp Microsoft. Giaûi phaùp Netscape. Giaûi phaùp Microsoft coù caùc thaønh phaàn lieân quan: Internet Information Server (IIS). Windows NT Server. Active Server Pages. Front Pages. Chöa ñeán hai naêm röôõi keå töø khi khai sinh IIS (Internet Information Server) ñaõ xöùng ñaùng chieám vò trí thöù hai treân thò tröôøng Web Server cuûa Internet. Tính deã söû duïng, tính tích hôïp chaët cheõ cuûa IIS vaø heä ñieàu haønh Windows NT ñaõ raøng buoäc baát kyø coâng ty naøo chuyeân söû duïng phaàn meàm Microsoft. Ngoaøi ra, trong moâi tröôøng xaây döïng trang HTML ñoäng cuûa IIS thì vöøa maïnh meõ vaø vöøa söû duïng. Nhöng ñoái vôùi giaûi phaùp daønh cho nhieàu heä thoáng khaùc nhau, tính tích hôïp vaø deã duøng thì chöa ñuû ñeå trôû thaønh giaûi phaùp phuø hôïp. Giaûi phaùp quaûn trò cuûa IIS taïo ra söï deã daøng nhôø öùng duïng ISM (Internet Server Manager). Ñaõ coù phieân baûn HTML cuûa ISM nhöng giao dieän chöa haáp daãn. Thieát laäp Server hay thö muïc aûo duøng ISM raát tieän lôïi vaø ñôn giaûn, coù theå taïo ngöôøi duøng (User) Web vôùi cuøng caùc coâng cuï nhö taïo User trong NT (User manager cuûa NT). Neáu ñaõ quen thuoäc vôùi chöùc naêng baûo maät cuûa NT, vieäc truy caäp haïn cheá ñeán toaøn boä töøng phaàn trong Sites cuûa chuùng seõ raát deã daøng. Ñeå haïn cheá User coù theå söû duïng taøi khoaûn (acount) hoaëc maõ khoùa (password) ñeå haïn cheá quyeàn vaøo taøi khoaûn ngöôøi duøng hay chæ cho pheùp truy vaøo caùc thö muïc nhaát ñònh baèng access control lists (Acls) trong heä thoáng file NT. Ñeå keát noái vaøo dòch vuï Web, IIS ñoøi hoûi theo moâ hình logic bao goàm thieát laäp quaûn trò IIS vaø baûo maät NT. IIS hoã trôï ñieàu khieån SNMP nhöng hoã toång theå raát ít. Duøng management information base IIS coù theå ñieàu khieån toái ña 24 boä ñeäm trong performance monitor nhöng khoâng theå ñònh caáu hình IIS. IIS coù log beân trong rieâng ñeå theo doõi xem ai truy caäp Server hay truy caäp nhöõng file naøo. Coù theå ñònh caáu hình truy caäp ñeán file hay CSDL SQL vaø IIS hoã trôï daïng chuaån töø hoaït ñoäng truy caäp cuûa IIS. IIS hoã trôï ASP, deã daøng taïo caùc öùng duïng phía Server baèng ngoân ngöõ moâ taû ActiveX baát kyø nhö VBscript hay Jscript. III.2. Tìm hieåu veà Internet Information Server III.2.1. Internet Information Server (IIS) laø gì ? Microsoft Internet Information Server (IIS) laø moät Web Server giuùp chuùng ta hieån thò thoâng tin treân Internet va Intranet . IIS hieån thò thoâng tin baèng caùch söû duïng giao thöùc HTTP. Ngoaøi ra, IIS coøn hoã trôï caùc giao thöùc truyeàn FTP (file transfer protocol), FTP giuùp ngöôøi söû duïng chuyeån nhöõng taäp tin töø Web. IIS raát linh ñoäng trong vieäc nhieàu chöùc naêng quan troïng töø vieäc hoã trôï heä thoáng files Server ñôn ñeán vieäc hoã trôï heä thoáng site Server roäng lôùn. Ví duï : nhö www.Microsoft.Com vaø www.Msn.Com laø moät trong nhöõng file baän roän nhaát treân Internet ngaøy nay vaø caû hay duøng nhieàu Server ñeå chaïy IIS. III.2.2. Nhöõng khaûo saùt veà Internet vaø Intranet Coù moät soá khaûo saùt maø chæ hoùa cho nhöõng öùng duïng Internet vaø Intranet. Nhöõng packages phaàn cöùng vaø phaàn meàm sau ñaây seõ ñöôïc caøi ñaët vaø ñònh caáu hình treân Internet Information Server neáu chuùng ta hoaïch keá hoaïch coâng boá thoâng tin treân Intranet: - Caøi ñaët card maïng töông thích maø noù seõ keát noái vôùi maïng cuïc boä(LAN). Ñieàu naøy seõ cho pheùp thoâng tin truyeàn giöõa maùy tính naøy vaø maùy tính khaùch treân maïng. - Moät “option” maø thaät söï khoâng laø moät, laø Wins Server. Ñieàu naøy cho pheùp nhöõng ngöôøi duøng cuûa taäp ñoaøn Intranet söû duïng caùc teân thaân thieän thay vì vôùi nhöõng ñòa chæ khoù chòu moãi khi muoán duy chuyeån quanh Intranet. - Moät chöùc naêng khaùc töông töï vieäc söû duïng teân thaân thieän treân Intranet laø domain name service Server. Neáu chuùng ta caøi ñaët moät Server ñeå taïo thoâng tin treân Internet, coù moät soá coâng vieäc sau phaûi hoaøn thaønh tröôùc khi caøi nhöõng chöùc naêng caàn thieát ñeå ñaït ñöôïc muïc ñích: - Keát noái Internet hoaëc laø keát noái tröïc tieáp hoaëc laø qua nhaø cung caáp dòch vuï Internet (ISP). - Seõ nhaän moät ñòa chæ IP trong khi thieát laäp lieân keát vôùi Internet. Ta caàn nhöõng ñòa chæ naøy ñeå coù nhöõng packages. - Card maïng ñeå keát noái Server vôùi Internet. - Domain name Server (DNS) cho ñòa chæ IP treân cuûa Server laø moät chöùc naêng toát caàn coù. III.2.3. Coù theå laøm gì vôùi IIS Khaû naêng saùng taïo treân IIS laø voâ haïn, moät vaøi öùng duïng thoâng thöôøng: - Hieån thò homepage treân Internet ñeå taïo ra baûng tin thöôøng kyø, thoâng tin maäu dòch hoaëc cô hoäi ngheà nghieäp. - Hieån thò cataloge vaø nhaän yeâu caàu töø khaùch haøng. - Cung caáp söùc maïnh maäu dòch töø xa ñeå deã daøng truy caäp cô sôû maäu dòch. - Söû duïng cô sôû döõ lieäu order-tracking. III.2.4. Baûo maät IIS a. Truy xuaát voâ danh: Ñoâi khi laø ñeå xem caùc quyeàn cuûa account. Ñaây laø account duøng cho truy xuaát voâ danh. Baát cöù ai tham quan Web site seõ coù theå duøng loaïi truy xuaát naøy. Truy xuaát voâ danh thì thöôøng duøng treân nhöõng Web site FTP cho nhöõng taäp tin toång quaùt. b. Truy xuaát xaùc thöïc: Truy xuaát xaùc thöïc ñöôïc cung caáp theo hai caùch döôùi Internet information Server. Truy xuaát xaùc thöïc coù theå deã daøng laøm vieäc ñoàng thôøi vôùi truy xuaát voâ danh. Nhöõng taäp tin toång quaùt thì coù theå qua truy xuaát voâ danh vaø thoâng tin User, ñaëc bieät hôn coù theå ñöôïc baûo veä baèng password. Hai daïng truy xuaát xaùc thöïc Windows NT vaø Internet Information Server cung caáp laø basic vaø challenge / response. Windows challenge/response cho pheùp truyeàn söï baûo maät cuûa caùc teân vaø caùc password cuûa ngöôøi söû duïng. Challenge/response hieän thôøi chæ ñöôïc cung caáp bôûi Internet explorer 2.0, Win 95ø (cao hôn nöõa), Internet Explorer 3.0 vaø Win 3.1. CHÖÔNG IV. TÌM HIEÅU ÑOÂI NEÙT VEÀ ASP IV.1. Tìm hieåu sô löôïc veà ASP ASP ñöôïc vieát taét töø: Active Server Page. Microsoft ñaõ phaùt trieån Active Server Page (ASP) nhö moät kieán truùc Server-side duøng ñeå xaây döïng caùc öùng duïng Web ñoäng. ASP laø moâi tröôøng kòch baûn treân maùy Server (Server-side scripting environment) duøng ñeå taïo vaø chaïy caùc öùng duïng trong trang Web. Nhôø taäp caùc ñoái töôïng coù saún (build-in object) vôí caùc tính naêng phong phuù, khaû naêng hoå trôï VBscript, Javascript cuøng moät soá thaønh phaàn ActiveX khaùc keøm theo. ASP cung caáp moät caùch laøm môùi ñeå taïo trang Web ñoäng. ASP khoâng phaûi laø moät kyõ thuaät môí nhöng noù söû duïng deã daøng vaø nhanh choùng. ASP seõ tham vaán tröïc tieáp vaøo Brower gôûi döõ lieäu ñeán Web Server vaø töø ñaây seõ ñöa leân maïng. Trong khi ASP thöïc thi treân maùy maø noù hoå trôï duøng, thì ta coù theå xem ASP töø baát cöù maùy naøo vaø vôùi baát cöù Browser naøo. ASP cung caáp giao dieän laäp trình nhanh vaø deã daøng trieån khai öùng duïng. ASP chaïy treân moâi tröôøng Internet Information Server 4.0 (IIS) vaø Personal Web Server 4.0. Noù cho pheùp ta quaûn lyù vieäc truyeàn noái giöaõ moät Browser; Web Server , hình thöùc ñoäng cuaû trang Web vaø phaûn hoài laïi cho ngöôøi duøng. Noù coù theå cho pheùp ta truy caäp ñeán CSDL vaø quay trôû veà vôùi keát quaû ngaén nhaát treân Web site, caäp nhaät noäi dung treân Web site khi thay ñoåi. CGI Common gateway interface (CGI) laø moät qui trình quaûn lyù töông taùc giöõa phaàn meàm Web Server vaø trình Browser. CGI laøm vieäc döaï vaøo phöông thöùc gôûi yeâu caàu (request) ñeán cho Server, CGI script seõ xöû lyù thoâng tin naøy baèng caùch duøng caùc phöông thöùc POST, GET, HEAD vaø traû keát quaû cho Server. process request Client Server CGI Script Request and send to info response response IV.2. ASP laø gì vaø taïi sao söû duïng ASP IV.2.1. ASP laø gì? ASP khoâng laø moät ngoân ngöõ vaø cuõng khoâng laø moät öùng duïng, noù gioáng nhö : Fontpage 98 hay Work 97. Ta coù theå goïi ASP laø moät kyõ thuaät duøng cho vieäc xaây döïng trang Web ñoäng vaø töông taùc ñeán trang Web. ASP._. taïo döôùi hình thöùc naøo cuõng ñeàu bieân dòch thaønh chuaån ActiveX scripting. ASP ñôn giaûn chæ laø taäp tin *.asp beân ngoaøi ñöôïc löu tröõ döôùi daïng text, html, xml. Khi moät Browser yeâu caàu moät taäp tin coù ñuoâi laø .asp thì laäp töùc IIS seõ ñöa yeâu caàu naøy ñeán cho ASP. Ta duøng baát cöù loaïi vaên baûn naøo cuõng coù theå soaïn thaûo moät taäp tin coù ñuoâi .asp, nhöng vieäc söû duïng coâng cuï thieát keá nhö: Fontpage, Visual Interdev seõ ñöa ra keát quaû toát nhaát. Fontpage cho pheùp ta theâm ASP vaøo trang Web duøng leänh insert script. Visual InterDev laø moät moâi tröôøng ñaëc bieät ñöôïc thieát keá rieâng cho ASP döaï vaøo Web site vaø cung caáp moâi tröôøng duøng ñeå thieát keá vaø kieåm tra loãi. IV.2.2. Taïi sao söû duïng ASP? Söï khaùc bieät giöaõ ASP vaø caùc kyõ thuaät môí khaùc laø ASP thöïc thi treân Web Server trong khi caùc trang laïi ñöôïc phaùt sinh töø nhöõng kyõ thuaät khaùc ñöôïc bieân dòch bôûi Browser (hay Client). Nhöõng lôïi ñieåm maø ASP duøng thích hôïp hôn laø duøng CGI vaø Perl. Taàm quan troïng cuaû Web Server: Nhöõng ngöôøi söû duïng Internet hay caùc maïng cuïc boä Intranet thöôøng phaûi ñaùnh ñiaï chæ cuaû trang Web (URL). Vaäy Web Server laø gì? Ñôn giaûn ñoù chæ laø moät maùy tính duøng ñeå cung caáp caùc dòch vuï Web treân Internet or Intranet. Web Server chuû ñöôïc thieát keá vò trí, ñòa chæ vaø gôæ ñeán trang HTML. Web Server taïo ra trang Web hieån thò leân taát caû cho ngöôøi duøng vaø coù theå duøng truy caäp ñeán caùc trang naøy. IV.2.3. Nhöõng söï vieäc xaûy ra trong trang ASP? Ñoïc nhöõng yeâu caàu töø Browser. Tìm trang caàn thieát trong Server. Thöïc hieän baát cöù nhöõng giôùi thieäu ñaõ cung caáp trong ASP ñeå caäp nhaät vaøo trang Web. Sau ñoù gôûi traû veà cho Browser. IV.2.4. Lôïi ích cuaû vieäc söû duïng ASP Taäp trung taïi Browser Taát caû caùc öùng duïng ñeàu coù theå thöïc thi treân Server vôùi phaàn ñieàu khieån hoaøn taát nhöõng gì ñöôïc gôûi ñeán cho Browser. ASP khoâng phaûi laø ngoân ngöõ môùi: ASP coù theå ñöôïc ghi vaøo trong ngoân ngöõ VBscript, Jscript. ASP Khoâng phaûi laø coâng cuï phöùc taïp: Maëc duø toàn taïi nhöõng coâng cuï phaùt trieån maïnh, ASP vaãn coù theå ñöôïc taïo ñeå söû duïng cho phaàn thieát keá trang HTML. Kieåm tra loãi: Script debugging hoå trôï töông taùc (interactive) cho vieäc kieåm tra loãi cuûa caû hai loaïi Client vaø Server. Ñoä tin caäy: Khoâng nhö Client-side scripting vaø caùc thaønh phaàn khaùc (components), ASP khoâng thay ñoåi vaø chæ chaïy treân Server. Khoâng theå xem ASP treân trình duyeät Browser maø chæ coù theå xem treân trang HTML. Tính oån ñònh: Moãi öùng duïng ASP coù theå bò taùch ra khoûi phaàn khoâng gian vuøng nhôù rieâng töø Web Server. Neáu moät öùng duïng Web loãi thì nhöõng öùng duïng khaùc vaãn tieáp tuïc chaïy. IV.3. Caùch hoaït ñoäng cuaû ASP ASP chöùa trong caùc taäp tin file coù ñuoâi laø *.asp. Trong script coù chöùa caùc leänh cuaû caùc ngoân ngöõ script naøo ñoù khi ta nhaäp ñuoâi ñiaï chæ coù phaàn laø *.asp treân Web Browser thì laäp töùc noù gôûi yeâu caàu ñeán cho ASP. Khi nhaän yeâu caàu Web Server ñoàng thôøi Web Server seõ tìm caùc taäp tin treân ñiaï chæ coù caùc taäp tin yeâu caàu Web server gôûi ñeán taäp tin. Chöông trình ñaëc bieät naøy goïi laø asp.dll. Khi ñoù caùc caâu leänh yeâu caàu seõ ñöôïc thöïc hieän. Ñaây laø moät vaøi ví duï ñieån hình maø ta coù theå söû duïng ASP: Taïo nhöõng noäi dung cuaû trang Web baèng caùch caäp nhaät taäp tin vaên baûn hay noäi dung cô sôû döõ lieäu. Taïo nhöõng trang giôùi thieäu chæ ñeå hieän thò. Hieän thò vaø caäp nhaät cô sôû döõ lieäu ñöôïc löu tröõ trong trang Web. Taïo nhöõng trang Web maø coù theå ñöôïc saép xeáp thöù töï. Phaûn hoài töø phiaù ngöôøi duøng vaø ñöa thoâng tin trôû veà cho ngöôøi duøng. Truy caäp cô sôû döõ lieäu vôùi caùc ñoái töôïng Active Data Duøng ADO,ODBC, CSDL coù theå truy caäp töø ASP scripts vaø caùc ngoân ngöõ phoå bieán nhö Visual Basic vaø C++. Caùc vaán ñeà cô baûn ñeå xaây döïng caùc öùng duïng treân ASP Taäp tin Global.asa Taäp tin Global.asa laø taäp tin tuøy choïn, coù theå khai baùo caùc script ñaùp öùng bieán coá, caùc object trong öùng duïng hay caùc session (caùc phieân laøm vieäc). Ñaây laø taäp tin maø caùc ngöôøi duøng khoâng caàn thöïc thi thì noù vaãn töï ñoäng chaïy khi chöông trình treân Server chaïy. Thoâng tin noù chöùa laø nhöõng thoâng tin ñöôïc duøng cho toaøn cuïc. Taäp tin naøy phaûi ñaët teân laø Global.asa vaø ñöôïc ñaët trong thö muïc goác cuaû öùng duïng. Moãi öùng duïng chæ coù moät taäp tin Global.asa duy nhaát: application, events, session events. ASP: ASP ñöôïc thieát keá ñeå keát hôïp cuøng vôùi HTML ñeå taïo trang Web ñoäng. ASP coù theå taïo ra trang HTML. Moät trang Web söû duïng ASP bao goàm 3 kieåu syntax. Moät vaøi trang seõ coù caáu truùc töø vaên baûn, theû HTML vaø maõ leänh ASP. Caùc tính chaát cuaû ASP: ASP cho pheùp cheøn script thöïc thi tröïc tieáp treân trang HTML vaø coù theå cheøn caùc thaønh phaàn HTML ñoäng vaøo trang Web. Coù theå duøng ASP ñeå xem treân Netscape hoaëc Internet Explorer: ASP ñöôïc thöïc thi treân Server, coù nghiaõ laø ta coù theå duøng baát cöù trình duyeät naøo ñeå xem keát quaû. ASP coù theå ñöôïc xem deã daøng trong trình Netscape Navigator hay Internet Explorer. Tuy nhieân, ta caàn chuù yù ñeán Web Server phaûi coù khaû naêng chaïy ASP. ASP laø moät trong nhieàu kyõ thuaät duøng ñeå taïo caùc trang Web ñoäng. Active Web sites: vôí nhieàu kyõ thuaät môùi, chuùng ñöôïc keát hôïp xaây döïng vôí nhieàu ngoân ngöõ vaø caùc kyõ thuaät; ta coù theå duøng baát cöù moät trong nhöõng kyõ thuaät ngoân ngöõ naøy: ActiveX Controls: ñöôïc taïo bôûi caùc ngoân ngöõ nhö Visual C++ hay Visual Basic. Java. Ngoân ngöõ kòch baûn (scripting language) nhö: VBScript vaø JavaScript/ JScript/ECMAScript. Active Server Page vaø Dynamic HTML. Sô neùt veà ngoân ngöõ ActiveX Controls: ActiveX Controls: ñöôïc bieát nhö laø moät coâng cuï vaø ñöôïc vieát döôùi daïng ngoân ngöõ nhö: C++ hay Visual Basic. Khi theâm vaøo trong trang Web chuùng cung caáp nhöõng haøm ñaëc bieät nhö: bar charts (thanh ñoà thò), graphs (ñoà hoaï), hay truy caäp cô sôû döõ lieäu. ActiveX controls ñuôïc theâm vaøo trang HTML bôûi tag ñaây laø chuaån cuaû HTML. Noù coù theå thöïc thi bôûi trình Browser hay Server khi chuùng chaïy treân trang Web. Sô neùt veà Scripting Language: Noù cung caáp nhieàu coång truy caäp vaøo chöông trình. Vieäc duøng trang Web client-side scripting phaùt trieån ñeå cung caáp töø trang HTML ñoäng ñeán trang HTML tónh. JavaScript laø ngoân ngöõ kòch baûn ñaàu tieân. VBScript do Microsoft phaùt trieån vaø noù döïa vaøo ngoân ngöõ Visual Basic. Scripting chaïy treân trình duyeät Internet Explorer 3.0 vaø trong trình Netscape Navigator/ Communication 2.0. Internet Explorer 4.0 trôû leân hoå trôï caû hai ngoân ngöõ: JScript vaø VBScript trong khi ñoù Communication 4.0 chæ hoå trôï cho JavaScript. VBScript laø gì ? VBScript laø moät thaønh phaàn cuûa ngoân ngöõ laäp trình Visual Basic . VBScript cho pheùp theâm caùc Active Script vaøo caùc trang Web. Microsoft Internet Explorer 3.0 coù theå chaïy ñöôïc caùc chöông trình VBScript cheøn vaøo caùc trang HTML. Vôùi VBScript ta coù theå vieát ra caùc form döõ lieäu hay caùc chöông trình Game chaïy treân Web. Söï phaùt trieån cuûa VBScript : VBScript khôûi ñaàu phaùt trieån cho moâi tröôøng Client side. VBScript 1.0 ñöôïc ñöa ra nhö laø moät boä phaän cuûa Internet Explorer 2.0 vaø VBScript cung caáp phaàn lôùn caùc chöùc naêng laäp trình cuûa ngoân ngöõ Visual Basic . Söï khaùc nhau lôùn nhaát cuûa VBScript vaø Visual Basic laø VBScript ngaên chaën truy xuaát file. Bôûi vì muïc tieâu chính cuûa vieäc thieát keá VBScript laø cung caáp moät ngoân ngöõ Script meàm deõo nhöng ngaên ngöøa caùc muïc ñích phaù hoaïi töø phía Browser. Cuøng vôùi söï ra maét cuûa Internet Information Server 3.0 vaø Active Server Pages, VBScript 2.0 baây giôø coù theå chaïy treân Web Server. VBScript 2.0 môû roäng khaû naêng laäp trình so vôùi phieân baûn ñaàu tieân maø ñaët tröng laø cho pheùp töï ñoäng noái keát tôùi ActiveX töø Web Server. Söï noái naøy cho pheùp khaû naêng truy xuaát tôùi Cô sôû döõ lieäu treân caùc Server vaø chaïy caùc öùng duïng treân Server. Sô löôïc veà ASP vaø Dynamic HTML: ASP vaø dynamic HTML ñeàu laø ngoân ngöõ môû roäng cuaû ngoân ngöõ kòch baûn vaø HTML. Tuy nhieân khoâng phaûi caû hai chöông trình ngoân ngöõ ñeàu ñuùng. ASP laáy ñoaïn maõ chöông trình vaø chuyeån sang HTML treân Server, tröôùc khi traû noù veà Browser. Dynamic HTML: Ngöôøi duøng nhaäp 1 ñiaï chæ vaøo Browser hay choïn vaøo doøng saùng (hyperlink) treân trang khaùc seõ gôûi yeâu caàu töø Browser ñeán Server. Active Server Objects: goàm coù 6 Objects - Request. - Response Server. Application Session. ObjectContext. Moâ hình ñoái töôïng cuaû ASP: Trong ñoù Request vaø Response töï minh ñònh. Request phaûi ñöôïc taïo trong hình thöùc nhaäp töø moät trang HTML. Response duøng ñeå traû lôøi keát quaû töø Server cho Browser. Server duøng ñeå cung caáp nhieàu chöùc naêng nhö taïo moät Object môùi. Application vaø session duøng ñeå quaûn lyù thoâng tin veà caùc öùng duïng ñang chaïy trong chöông trình. Object context duøng vôùi Microsoft transaction Server. Request Object: cho pheùp ta laáy thoâng tin doïc theo yeâu caàu HTTP. Vieäc trao ñoåi beân ngoaøi töø Server bò quay trôû veà nhö moät phaàn cuûa keát quaû (Response). Request taäp trung nhieàu ñeán phaàn löu tröõ thoâng tin. Toaøn boä caùc Request object: goàm coù 5 loaïi QueryString: löu tröõ moät taäp nhöõng thoâng tin ñeå vaøo ñiaï chæ cuoái(URL). vd: Form: löu tröõ moät taäp taát caû caùc bieán gôûi ñeán HTTP request. vd: Cookies: chöaù taäp caùc cookie chæ ñoïc gôûi ñeán baèng Client Browser vôí yeâu caàu. ClientCertificate: Khi Client taïo moät taäp vôùi moät Server yeâu caàu söï baûo maät cao. ServerVarialbles: Khi Client gôûi moät yeâu caàu vaø thoâng tin ñöôïc ñöa tôùi Server, noù khoâng chæ gôûi qua maø coøn thoâng tin vieäc ai taïo trang, teân Server vaø coång maø yeâu caàu gôûi ñeán. vd: Response Object: cung caáp nhöõng coâng cuï caàn thieát ñeå gôûi baát cöù nhöõng gì caàn thieát trôû veà Client. Taäp caùc Response Object: Ñoái töôïng response löu tröõ chæ taäp: cookies. Caùc taäp cookie laø nhöõng taäp vaên baûn nhoû (giôùi haïn 4KB) ñöôïc chöùa treân oå ñóa cöùng cuaû Client maø nhöõng taäp naøy löu tröõ thoâng tin veà ngöôøi duøng. vd: Taïo moät cookie treân maùy Client. Response.Cookies(“BookBought”) =“Beggining ASP” Nhöõng ñaëc tính coù theå duøng: Domain: moät cookie chæ ñöôïc gôûi ñeán trang ñaõ yeâu caàu beân trong vuøng töø nôi noù ñöôïc taïo. Path: moät cookie chæ ñöôïc gôûi ñeán trang ñaõ yeâu caàu beân trong ñöôøng daãn naøy. Haskeys: ñònh roõ cookie söû duïng moät trong hai loaïi: index/ dictionary object hay laø khoâng duøng. Secure: ñònh roõ cookie laø an toaøn. Moät cookie an toaøn laø neáu gôûi qua giao thöùc HTTP. Nhöõng phöông thöùc cuaû Response Object: Write: ghi bieán, chuoãi, cho pheùp ta gôûi thoâng tin trôû veà Browser. Vd: text = “Hello World!” Response.Write text My message is AddHeader: cho pheùp ta theâm hoaëc thay ñoåi giaù trò ôû phaàn ñaàu HTTP. vd: Response.AddHeader “CustomServerApp”, “BogiePicker/1.0” AppendToLog: cho pheùp theâm moät chuoãi vaøo baûn ghi taäp tin cuaû Web Server, cho pheùp theâm tuøy yù caùc thoâng ñieäp vaøo baûn ghi taäp tin. BinaryWrite: cho pheùp ta chuyeån ñoåi voøng caùc kyù töï thöôøng khi döõ lieäu ñöôïc gôûi trôû veà Client. Clear: cho pheùp ta xoaù boû baát cöù vuøng nhôù beân ngoaøi HTML. End: cho pheùp ngöøng vieäc xöû lyù taäp tin ASP vaø döõ lieäu ñeäm hieän thôøi quay trôû veà Browser. Flush: cho pheùp döõ lieäu ñeäm hieän thôøi quay trôû veà Browser vaø giaûi phoùng boä ñeäm. Redirect: cho pheùp ta boû qua söï ñieàu khieån cuaû trang hieän thôøi noái keát vaøo trang Web khaùc. vd: <% If (Not Session(“LoggedOn”)) Then Response.Redirect “login.asp” End If %> Nhöõng ñaëc tính cuaû Response Object: Buffer: ñònh roõ trang. CacheControl: xaùc ñònh Proxy Server ñöôïc cho pheùp phaùt sinh ra do ASP. Charset: noái theâm teân kyù töï vaøo ñaàu content-type. ContentType: HTTP content type cho phaàn traû lôøi. Expires: Soá laàn phaùt sinh giöaõ laàn löu tröõ vaø phaàn keát thuùc cho moät trang löu tröõ treân Browser. ExpiresAbsolute: Ngaøy giôø ñöôïc phaùt sinh treân Browser. IsClientConnected: Client ngöng vieäc keát noái töø Server. Status: giaù trò cuaû HTTP status quay trôû veà Server. Application Object: Moãi öùng duïng ñöôïc trình baøy bôûi moät application object. Ñaây laø ñoái töôïng ñöôïc chöaù caùc bieán vaø caùc ñoái töôïng cho phaïm vi öùng duïng caùch duøng. Nhöõng taäp caùc Application object: Content: chöùa taát caû caùc maãu tin theâm vaøo öùng duïng thoâng qua caùc leänh script. StaticObjects: Chöùa taát caû caùc ñoái töôïng theâm vaøo öùng duïng baèng theû . Nhöõng phöông thöùc cuaû Application Object: Lock: ngaên chaën caùc Client khaùc töø vieäc caäp nhaät ñaëc tính öùng duïng. Unlock: cho pheùp caùc Client caäp nhaät ñaëc tính öùng duïng. Nhöõng söï kieän cuaû Application Object: OnStart: xaûy ra khi trang Web trong öùng duïng ñöôïc tham chieáu laàn ñaàu. OnEnd: xaûy ra khi öùng duïng keát thuùc, khi Web Server ngöng hoaït ñoäng. Session Object: ñöôïc duøng ñeå kieåm tra Browser khi noù ñieàu höôùng qua trang Web. Taäp caùc Session Object: Content: chöaù taát caû caùc maåu tin theâm vaøo session thoâng qua caùc leänh script. StaticObject: chöaù taát caû caùc ñoái töôïng theâm vaøo session baèng theû . Nhöõng phöông thöùc cuaû Session Object: Abandon: Huyû moät session vaø giaûi phoùng noù ra khoûi nguoàn. Nhöõng ñaëc tính cuaû Session Object: CodePage: laáy ñoaïn maõ seõ duøng cho symbol mapping. LCID: laáy nôi ñònh danh. SessionID: quay trôû veà ñònh danh phieân laøm vieäc cho ngöôøi duøng. Timeout: laáy khoaûng thôøi gian cho traïng thaùi phieân laøm vieäc cho öùng duïng trong vaøi phuùt. Nhöõng söï kieän cuaû Session Object: OnStart: xaûy ra khi Server taïo moät session môùi. OnEnd: xaûy ra khi moät session ñaõ giaûi phoùng hay heát giôø laøm vieäc. Server Object: duøng ñeå taïo caùc component. Nhöõng ñaëc tính cuaû Server Object: ScriptTimeOut: khoaûng thôøi gian daøi khi script chaïy tröôùc khi xaûy ra loãi. Nhöõng phöông thöùc cuaû Server Object: CreateObject: Taïo moät ñoái töôïng hay Server component. HTMLEncode: ÖÙng duïng HTML vaøo chuoãi chæ ñònh. MapPath: chuyeån ñöôøng daãn aûo vaøo ñöôøng daãn vaät lyù. Urlencode: aùp duïng ñiaï chæ URL. ObjectContext Object: khi chuùng ta duøng MTS (Microsoft transaction Server) quaûn lyù moät giao taùc, chuùng ta coù chöùc naêng beân trong script hoaøn thaønh (hay abort) giao taùc. Nhöõng phöông thöùc cuaû ObjectContext Object: SetComplete: Khai baùo maø script khoâng caàn nguyeân nhaân cho giao taùc khoâng hoaøn thaønh. SetAbort: Abort moät giao taùc. Nhöõng söï kieän cuaû ObjectContext Object: OntransactionCommit: Xaûy ra sau khi giao taùc cuaû script hoaøn taát. Ontransaction Abort: Xaûy ra neáu giao taùc khoâng hoaøn taát. Quaûn lyù ASP vaø Session: Moät trong nhöõng lôïi ích cuaû ASP laø noù coù phieân laøm vieäc (session) quaûn lyù toát ñöôïc xaây döïng trong chöông trình. Caùc theû ñònh daïng cuaû ASP: Caùc ñoaïn maõ chöông trình ñeàu chöaù ôû trong theû . vd: Ñaây laø moät ví duï veà ñoaïn maõ ASP naèm trong theû ñònh daïng <% x=x+1 y=y-1 %> ActiveX Server Components: ActiveX Server component (tröôùc coøn goïi laø automation Server) thieát keá chaïy treân Web Server nhö laø moät phaàn cuaû öùng duïng treân Web component chöaù ñöïng nhöõng ñaëc tröng maø ta khoâng caàn phaûi taïo ra laïi nhöõng ñaëc tröng naøy. Component thöôøng ñöôïc goïi laø nhöõng taäp tin *.asp. IV.4. Öu ñieåm vaø khuyeát ñieåm ASP IV.4.1. Öu ñieåm ASP boå sung cho caùc coâng ngheä ñaõ coù töø tröôùc nhö CGI (common gateway interface), Giuùp ngöôøi duøng xaây duïng caùc öùng duïng Web vôùi nhöõng tính naêng sinh ñoäng. Deã daøng töông thích vôùi caùc coâng ngheä cuûa MicroSoft. ASP söû duïng ActiveX data object (ADO) ñeå thao taùc vôùi cô sôû döõ lieäu heát söùc tieän lôïi. Vôùi nhöõng gì ASP cung caáp, caùc nhaø phaùt trieån öùng duïng Web deã daøng tieáp caän coâng ngheä naøy vaø nhanh choùng taïo ra caùc saûn phaåm coù giaù trò. ASP coù tính naêng môû. Noù cho pheùp caùc nhaø laäp trình xaây döïng caùc component vaø ñaêng kyù söû duïng deã daøng. Hay noùi caùch khaùc ASP coù tính naêng COM (component object model) IV.4.2. Khuyeát ñieåm ASP chæ chaïy vaø töông thích treân moâi tröôøng Window ñieàu naøy laøm ASP bò haïn cheá raát nhieàu. Duøng ASP chuùng ta seõ gaëp khoâng ít khoù khaên trong vieäc can thieäp saâu vaøo heä thoáng nhö caùc öùng duïng CGI. ASP khoâng ñöôïc söï hoå trôï nhieàu töø caùc haõng thöù ba. Caùc öùng duïng ASP chaïy chaäm hôn coâng ngheä Java servlet. Tính baûo maät thaáp. Khoâng gioáng nhö CGI hay Java servlet, caùc maõ ASP ñeàu coù theå ñoïc ñöôïc neáu ngöôøi duøng coù quyeàn truy caäp vaøo Web Server. Coù leõ ñaây laø lyù do quan troïng nhaát ñeå ngöôøi duøng khoâng choïn coâng ngheä ASP. Toùm laïi: Ta coù theå deã daøng nhìn thaáy vieäc taïo moät trang Web ñoäng chæ söû duïng. ASP laø neàn taûng cho vieäc taïo vaø quaûn lyù caùc öùng duïng cuaû trang. Web ñoäng thöông maïi (dynamic Web-based commerce). Caùc coâng cuï phaùt trieån phöùc taïp, quaûn lyù caùc phieân laøm vieäc (session) deã daøng keát hôïp laïi vôùi caùc component vaø caùc heä thoáng cuøng hoå trôï cho taát caû caùc trình duyeät Browser ñöôïc giôùi thieäu. CHÖÔNG V. GIÔÙI THIEÄU SÔ LÖÔÏC VEÀ VBSCRIPT V.1. Kieåu Döõ Lieäu Cuûa Vbscript VBScript coù moät kieåu döõ lieäu duy nhaát ñöôïc goïi laø Variant. Variant laø moät kieåu döõ lieäu ñaëc bieät coù theå chöùa caùc kieåu thoâng tin khaùc nhau tuøy thuoäc vaøo caùch söû duïng cuûa noù. Variant cuõng laø kieåu döõ lieäu duy nhaát ñöôïc traû veà bôûi taát caû caùc haøm trong VBScript. Ví duï moät Variant coù theå chöùa döõ lieäu laø soá hoaëc chuoãi, noù ñöôïc coi laø soá hoaëc laø chuoãi tuøy thuoäc vaøo ngöõ caûnh söû duïng cuûa noù. Variant coù theå chöùa caùc kieåu döõ lieäu Subtype nhö trong baûng sau : Subtype Dieãn giaûi Empty Variant maëc ñònh giaù trò 0 ñoái vôùi bieán kieåu soá hoaëc laø chuoãi coù chieàu daøi laø 0 (“”) ñoái vôùi bieán chuoãi. Null Variant laø Null. Boolean True hoaëc False. Byte Chöùa integer töø 0 tôùi 255. Integer Chöùa integer töø -32,768 tôùi 32,767. Currency -922,337,203,685,477.5808 tôùi 922,337,203,685,477.5807. Long Chöùa integer töø -2,147,483,648 tôùi 2,147,483,647. Single Chöùa töø -3.402823E38 tôùi 3.402823E38. Double Chöùa -4.94065645841247E-324 tôùi 4.94065645841247E-324 Date (Time) Chöùa moät soá töôïng tröng cho ngaøy töø 1/1/100 tôùi 31/12/ 9999 String Chöùa moät chuoãi coù chieàu daøi coù theå tôùi khoaûn 2 trieäu kí töï Object Chöùa moät object. Error Chöùa soá cuûa loãi. Bieán: Bieán laø moät vò trí xaùc ñònh trong boä nhôù maùy tính coù giaù trò thay ñoåi trong luùc Script ñang chaïy. Ta coù theå tham khaûo ñeán giaù trò cuûa bieán hoaëc thay ñoåi giaù trò cuûa noù baèng caùch duøng teân cuûa bieán. Trong VBScript bieán luoân luoân laø moät kieåu döõ lieäu cô baûn ñoù laø Variant. Khai baùo bieán : Khai baùo bieán baèng caùch duøng töø khoùa Dim, Public vaø Private . Ví duï : Dim MyVar Dim Top, Bottom, Left, Right Bieán coù theå ñöôïc khai baùo ôû baát kyø nôi naøo trong Script. Qui taéc ñaët teân bieán : _ Bieán phaûi baét ñaàu baèng kí töï chöõ _ Khoâng chöùa caùc kí töï ñaëc bieät _ Khoâng quaù 255 kí töï _ Khoâng ñöôïc truøng teân trong phaïm vi khai baùo. Phaïm vi cuûa bieán : Khi ta khai baùo moät bieán trong Procedure thì chæ trong Procedure môùi coù theå truy xuaát hoaëc thay ñoåi giaù trò cuûa noù, luùc ñoù noù ñöôïc goïi laø bieán cuïc boä (Caáp Procedure ). Ñoâi khi ta caàn söû duïng bieán ôû phaïm vi lôùn hôn ví duï nhö khi söû duïng ôû taát caû Procedure trong Script thì ta khai baùo ôû beân ngoaøi Procedure (Caáp Script). Thôøi gian soáng cuûa bieán : _ Caáp Script : Baét ñaàu töø luùc khai baùo ñeán luùc keát thuùc Script. _ Caáp Procedure : Baét ñaàu töø luùc khai baùo cho ñeán luùc keát thuùc Procedure . Gaùn trò cho bieán : Ví duï : Myvar = 10 Bieán maûng (Array) : Ví duï : Dim A(10) A(0) = 1 A(1) = 2 . . . . . . . A(10) = 11 Ta gaùn giaù trò cho moãi phaàn töû cuûa maûng baèng caùch söû duïng teân maûng vaø chæ soá. Phaàn töû ñaàu tieân cuûa maûng coù chæ soá laø 0. Bieán maûng khoâng giôùi haïn soá phaàn töû trong moät chieàu (dimension) vaø ta coù theå khai baùo moät bieán maûng coù tôùi 60 chieàu, nhöng thoâng thöôøng ta chæ söû duïng toái ña töø 3 ñeán 4 chieàu. Maûng nhieàu chieàu ñöôïc khai baùo nhö sau : Ví duï : MyArray(5,10) Ta cuõng coù theå khai baùo bieán maûng coù kích thöôùc thay ñoåi trong luùc chaïy Script vaø ñöôïc goïi laø maûng ñoäng (dynamic). Ví duï : Dim MyArray( ) ReDim MyArray(20) Haèng: Taïo haèng : Taïo haèng trong VBScript baèng caùch duøng töø khoùa Const vaø sau ñoù gaùn giaù trò cho noù. Ví duï : Const MyString MyString = “This is my string” Const MyAge MyAge = 32 Löu yù raèng giaù trò cuûa haèng chuoãi phaûi ñöôïc ñaët trong 2 daáu nhaùy keùp (“ “). Giaù trò cuûa haèng ngaøy thaùng phaûi ñaët trong 2 daáu (#). Ví duï : Const MyDate MyDate = #16-06-68# Toaùn Töû (Operator): Ñoä öu tieân cuûa caùc toaùn töû : VBScript coù ñaày ñuû caùc loaïi toaùn töû vaø coù ñoä öu tieân tuaàn töï theo caùc nhoùm sau : Caùc toaùn töû toaùn hoïc, caùc toaùn töû so saùnh, toaùn töû noái chuoãi, vaø caùc toaùn töû Logic. _ Caùc toaùn töû trong ngoaëc öu tieân hôn beân ngoaøi. _ Neáu hai toaùn töû cuøng ñoä öu tieân nhö nhau ví duï nhö toaùn töû coäng (+) vaø tröø (-) hay nhaân (*) vaø chia (/) thì theo thöù töï öu tieân töø traùi sang phaûi. Baûng caùc toaùn töû : Toaùn hoïc So saùnh Logic Dieãn giaõi Kí hieäu Dieãn giaõi Kí hieäu Dieãn giaõi Kí hieäu Muõ ^ So saùnh baèng = Phuû ñònh Not Ñaûo daáu - So saùnh khaùc Pheùp vaø And Nhaân * So saùnh nhoû hôn < Pheùp hoaëc Or Chia / So saùnh lôùn hôn > Pheùp Xor Xor Chia nguyeân \ Nhoû hôn hoaëc baèng <= Töông ñöông Eqv Phaàn dö Mod Lôùn hôn hoaëc baèng >= Imp Coäng + So saùnh hai ñoái töôïng Is Tröø - Noái chuoãi & V.2. Caùc caáu truùc ñieàu khieån chöông trình V.2.1. Caáu truùc reõ nhaùnh Neáu ta muoán chaïy moät leänh ñôn khi ñieàu kieän If laø ñuùng thì ta chæ söû duïng moät leänh If . . .then . Ta cuõng coù theå duøng If. . .then. . .Else ñeå xaùc ñònh thöïc thi moät trong 2 khoái leänh. Moät khoái thöïc thi khi ñieàu kieän If laø True Khoái coøn laïi thöïc thi khi ñieàu kieän If laø False. V.2.2. Caáu truùc laëp Söû duïng töø khoùa While : Ví duï : Sub ChkFirstWhile() Dim counter, myNum counter = 0 myNum = 20 Do While myNum > 10 myNum = myNum – 1 counter = counter + 1 Loop End Sub Sub ChkLastWhile() Dim counter, myNum counter = 0 myNum = 9 Do myNum = myNum – 1 counter = counter + 1 Loop While myNum > 10 End Sub Söû duïng töø khoùa Until : Ví duï : Sub ChkFirstUntil() Dim counter, myNum counter = 0 myNum = 20 Do Until myNum = 10 myNum = myNum – 1 counter = counter + 1 Loop End Sub Sub ChkLastUntil() Dim counter, myNum counter = 0 myNum = 1 Do myNum = myNum + 1 counter = counter + 1 Loop Until myNum = 10 End Sub Caùch duøng Exit Do ñeå thoaùt khoûi voøng laëp: Ví duï : Sub ExitExample() Dim counter, myNum counter = 0 myNum = 9 Do Until myNum = 10 myNum = myNum – 1 counter = counter + 1 If myNum < 10 Then Exit Do Loop End Sub For . . .Next : ñöôïc söû duïng khi bieát tröôùc soá laàn laëp. Sau moãi laàn laëp bieán ñeám töï ñoäng taêng leân moät. Ví duï : Sub DoMyProc50Times() Dim x For x = 1 To 50 MyProc Next End Sub Töø khoùa Step : Sau moãi laàn laëp, bieán ñeám ñöôïc taêng theâm moät giaù trò baèng vôùi step Ví duï : Sub TwosTotal() Dim j, total For j = 2 To 10 Step 2 total = total + j Next MsgBox “The total is “ & total End Sub Töø khoùa Exit For : thoaùt khoûi voøng laëp For . . . Next V.3. Procedures Trong VBScript coù hai loaïi Procedure laø Sub vaø Function. Sub Procedure : Moät Sub Procedure laø moät loaït caùc leänh VBScript ñöôïc ñaët trong hai töø khoùa Sub vaø End Sub. Sub Procedure thöïc thi caùc leänh beân trong noù nhöng khoâng traû laïi giaù trò. Sub coù caùc ñoái soá laø haèng, bieán hoaëc laø bieåu thöùc ñöôïc truyeàn vaøo khi ta thöïc hieän leänh goïi Sub. Neáu Sub khoâng coù ñoái soá thì sau teân Sub phaûi keøm theo caëp daáu ngoaëc roãng. Function Procedure : Function laø moät loaït caùc leänh VBScript ñöôïc ñaët trong hai töø khoùa Function vaø End Function. Function coù theå traû laïi giaù trò. Function coù caùc ñoái soá laø haèng, bieán hoaëc laø bieåu thöùc ñöôïc truyeàn vaøo khi ta thöïc hieän leänh goïi Function. Neáu Function khoâng coù ñoái soá thì sau teân Function phaûi keøm theo caëp daáu ngoaëc roãng. Moät Function traû laïi giaù trò baèng caùch gaùn giaù trò cho teân cuûa noù. Kieåu giaù trò traû laïi cuûa Function luoân luoân laø Variant. CHÖÔNG VI. GIÔÙI THIEÄU VEÀ sql server VI.1. Quaûn lyù Device VI.1.1. Ñònh nghóa Device laø moät file cuûa heä ñieàu haønh, duøng ñeå löu tröõ caùc database vaø caùc transaction log hoaëc duøng ñeå backup. Caùc device coù extersion laø *DAT. Device ñöôïc taïo laø MASTER.DAT, MSDB.DAT vaø MSDBLOG .DAT, ñaây laø caùc device chöùa database cô sôû cuûa MS-SQL Server giuùp toaøn boä heä thoáng hoaït ñoäng ñöôïc. Kích thöôùc toái thieåu cuûa MASTER laø 25Mb, ñöôïc xaùc ñònh luùc caøi ñaët. VI.1.2. Caùc loaïi Device Database device: device duøng ñeå löu tröõ database vaø transaction log. Dump device: ñöôïc duøng ñeå backup database vaø transaction log. Caùc database device coù theå ñaët thuoäc tính 12 default. Ñieàu naøy coù nghóa laø khi chuùng ta taïo database maø khoâng xaùc ñònh teân device chöùa noù thì MS-SQL Server seõ taïo default device. VI.2. Database VI.2.1. Ñònh nghóa Database laø moät taäp hôïp ñöôïc toå chöùc ñeå chöùa data, taäp hôïp naøy coù caáu truùc logic vaø ñöôïc hieåu bôûi MS-SQL Server, MS-SQL Server môû roäng khaùi nieäm data, cho pheùp bao goàm soá lieäu vaø caùc loaïi object khaùc nhau nhö view, stored procedure, triggers,…. VI.2.2. Transaction Log Transaction log laø taäp hôïp nhaät kyù caùc quaù trình data ñöôïc thay ñoåi, nhôø vaøo quaù trình naøy, khi caäp nhaät soá lieäu, neáu quaù trình caäp nhaät bò hö nöõa chöøng thì MS-SQL Server coù theå döïa vaøo transaction log ñeå khoâi phuïc giaù trò cuûa database tröôùc khi quaù trình caäp nhaät hö xaûy ra. Khi ta taïo database ta coù theå khai baùo kích thöôùc, vò trí cuûa transaction log. Neáu ta khoâng khai baùo, MS-SQL Server seõ töï ñoäng taïo. Ta coù theå yeâu caàu MS-SQL Server thöïc hieän transaction cho caùc leänh cuûa mình baèng caùch duøng leänh sau ôû baét ñaàu taäp hôïp leänh: BEGIN TRANSACTION [transaction_name] Vaø baùo keát thuùc baèng leänh: COMMIT TRANSACTION [transaction_name] Thöïc chaát, transaction log laø moät baûng chöùa trong database, baûng naøy teân laø syslogs. Löu yù laø moät device coù theå chöùa nhieàu database. VI.3. Caùc loaïi Object trong Database VI.3.1. Table Table duøng ñeå löu caùc soá lieäu cuûa chuùng ta vaø ñöôïc toå chöùc thaønh haøng vaø coät (record and field). Moãi moät coät xaùc ñònh moät loaïi soá lieäu khaùc nhau. Coät: moãi coät caàn ñöôïc xaùc ñònh teân, loaïi soá lieäu, chieàu daøi vaø coù ñöôïc laø null(nullabiliti) hay khoâng. Teân coät phaûi duy nhaát trong moät baûng (khoâng truøng teân coät khaùc). Category Datatype Comments String Char(n), varchar Stores character strings Binary Binary(n), varbinary Stores binary information in two byte pairs Interger Int ,smallint, tinyint Stores interger values Approximate Numeric Float, real Stores approximate numeric information Exact Numeric Decimal,numeric Stores exact numeric information Special Bit ,text ,image Stores a single bit, character information greater than bytes or image data Data and time Datatime ,smalldatetime Stores dates and times Money Money,smalltime Stores currency values Auto_incrementing Identify ,timestap Store valuesthat are incremented or set by the SQL Server User-defined You are create your own datatypes VI.3.2. Nullability Neáu giaù trò cuûa coät khoâng caàn coù moät giaù trò naøo ñoù, coät ñöôïc goïi laø nullability. Khoâng caàn giaù trò khoâng coù nghóa coù giaù trò laø khoâng. VI.3.3. View View cho pheùp ta taïo nhöõng soá lieäu choïn loïc töø haøng vaø coät cuûa moät hoaëc nhieàu baûng, ñieàu naøy coù nghóa cho pheùp ngöôøi söû duïng choïn loïc moät soá doøng vaø coät thoõa nhöõng ñieàu kieän naøo ñoù. VI.3.4. Söû duïng View coù nhöõng thuaän lôïi sau Ñieàu khieån nhöõng gì ngöôøi söû duïng ñöôïc quyeàn xem, giuùp cho tính chaát deã duøng vaø baûo maät cuûa database Server, laøm ñôn giaûn vieäc giao tieáp vôùi ngöôøi söû duïng baèng caùch taïo view töø nhöõng leänh truy xuaát thöôøng duøng. Cuù phaùp taïo View: Createview[owner,]view_name[(column_name[,column_name])][withenctyption] As select_statement Ví duï: Create view * from tblSinhVieân,tblKhoahoc VI.3.5. Stored procedure Khi chuùng ta thi haønh moät leänh, toaøn boä leänh ñoù seõ chuyeån veà MS-SQL Server döôùi nguyeân daïng vaên baûn cuûa noù, khi MS-SQL Server nhaän ñöôïc leänh naøy, noù seõ phaân tích, bieân dòch thi haønh vaø traû veà keát quaû cho Users. Neáu moãi taäp leänh naøo ñoù ñöôïc thöôøng xuyeân thi haønh, thì MS-SQL Server seõ thöôøng xuyeân laëp laïi quaù trình phaân tích, bieân dòch gioáng nhau, stored procedure nhaèm laøm giaûm quaù trình naøy. VI.3.6. Trigger Trigger laø moät loaïi stored procedure ñaëc bieät seõ töï ñoäng thi haønh khi User caäp nhaät data naøo ñoù ñaõ ñöôïc l._.

Các file đính kèm theo tài liệu này:

  • docDA0658.DOC