Đề tài “ Xây dựng Web site khối phổ thông chuyên Toán-Tin trường đại học Sư phạm Hà nội” ra đời nhằm mục đích phục vụ cho việc quản lý thông tin của giáo viên và học sinh cũng như việc tìm hiểu thông tin của học sinh cũ về khối. Thực chất đây là một bài toán quản lí trên Web. Như vậy, Web site này không đơn giản là cung cấp thông tin mà nó phải có khả năng xử lý dữ liệu, trả kết qủa động về cho máy khách. Mọi người có thể tìm hiểu thông tin về khối, trao đổi thảo luận với nhau thông qua diễn đàn, ... Ngoài những chức năng trên thì em đ• đưa vào trang quản lí nhiều chức năng phục vụ cho người quản trị Web site, mở ra khả năng làm việc thông qua mạng. Người quản trị có khả năng ngồi ở nhà có thể truy cập vào trang quản lý của mình (có mật khẩu riêng và địa chỉ URL khác) để thay đổi, cập nhật thông tin về điểm, ... Về nội dung báo cáo chia làm 5 chương như sau: Chương 1 Mạng máy tính và Internet: đưa ra các khái niệm về mạng máy tính như mạng máy tính là gì, mô hình OSI, giao thức TCP/IP, ... Giới thiệu Internet , Interanet và các ứng dụng của nó. Chương 2 Tổng quan về CSDL - Vấn đề tích hợp Web với CSDL: trình bày các kiến thức cơ bản về CSDL. Nghiên cứu các giải pháp tích hợp Web với CSDL phục vụ cho việc xây dựng Web database. Chương 3 Công nghệ ASP: Nêu ra vấn đề lựa chọn công nghệ thực hiện đề tài. Trình bày ASP và công nghệ được sử dụng trong đề tài. Chương 4 Phân tích và thiết kế hệ thống: Đi sâu vào việc xây dựng đề tài. Chương 5 Giới thiệu chương trình: Hướng dẫn cài đặt, triển khai chương trình. Nêu lên các mặt mạnh và hạn chế của chương trình.
Trang 1Giới thiệu đề tài
Đề tài “ Xây dựng Web site khối phổ thông chuyên Toán-Tin trờng đại học
S phạm Hà nội” ra đời nhằm mục đích phục vụ cho việc quản lý thông tin của
giáo viên và học sinh cũng nh việc tìm hiểu thông tin của học sinh cũ về khối.Thực chất đây là một bài toán quản lí trên Web Nh vậy, Web site này không đơngiản là cung cấp thông tin mà nó phải có khả năng xử lý dữ liệu, trả kết qủa động
về cho máy khách Mọi ngời có thể tìm hiểu thông tin về khối, trao đổi thảo luậnvới nhau thông qua diễn đàn,
Ngoài những chức năng trên thì em đã đa vào trang quản lí nhiều chức năngphục vụ cho ngời quản trị Web site, mở ra khả năng làm việc thông qua mạng Ngờiquản trị có khả năng ngồi ở nhà có thể truy cập vào trang quản lý của mình (có mậtkhẩu riêng và địa chỉ URL khác) để thay đổi, cập nhật thông tin về điểm,
Về nội dung báo cáo chia làm 5 chơng nh sau:
Chơng 1 Mạng máy tính và Internet: đa ra các khái niệm về mạng máy
tính nh mạng máy tính là gì, mô hình OSI, giao thức TCP/IP, Giới thiệuInternet , Interanet và các ứng dụng của nó
Chơng 2 Tổng quan về CSDL - Vấn đề tích hợp Web với CSDL : trình
bày các kiến thức cơ bản về CSDL Nghiên cứu các giải pháp tích hợp Web vớiCSDL phục vụ cho việc xây dựng Web database
Chơng 3 Công nghệ ASP: Nêu ra vấn đề lựa chọn công nghệ thực hiện đềtài Trình bày ASP và công nghệ đợc sử dụng trong đề tài
Chơng 4 Phân tích và thiết kế hệ thống: Đi sâu vào việc xây dựng đề tài.Chơng 5 Giới thiệu chơng trình: Hớng dẫn cài đặt, triển khai chơng trình.Nêu lên các mặt mạnh và hạn chế của chơng trình
Em đã cố hết sức để hoàn thành đề tài ở mức tốt nhất có thể Tuy nhiên, dothời gian thực hiện đề tài không phải là dài và khối lợng công việc lại lớn Mặtkhác, trớc khi nhận đề tài, nghiệp vụ xây dựng Web còn rất mới đối với emnên em phải nghiên cứu nhiều về vấn đề về lý thuyết nên chơng trình cònnhiều thiếu sót, hạn chế, em rất mong đợc sự chỉ bảo, góp ýcủa thày cô giáo
và các bạn để em có thể nâng cấp chơng trình hoàn thiện hơn
Trang 2đề tài Xin cảm ơn sự góp ý quý báu của bạn bè cùng lớp đã quan tâm và chia sẻkhó khăn trong quá trình thực hiện đề tài.
Nhân đây, em cũng xin bày tỏ lòng biết ơn đối với các thày, cô giáo trongkhoa Toán ứng dụng nói riêng và các thày cô giáo của trờng Đại học Bách Khoa
Hà nội nói chung đã truyền đạt kiến thức cho em trong suốt 5 năm học tập tại tr ờng Những kiến thức đó là hành trang không thể thiếu cùng em trong quá trìnhcông tác sau này
-Đợc trở thành sinh viên của trờng Đại học Bách Khoa Hà nội là niềm vinh dựlớn đối với em và em cố gắng phấn đấu học tập và lao động để xứng đáng vớiniềm vinh dự đó
Chơng 1 Mạng máy tính và internet
1.1 Mạng máy tính.
1.1.1 Khái niệm về mạng máy tính.
Mạng máy tính là một tập hợp các máy tính đợc nối với nhau bởi các đờng truyền vật lý theo một kiến trúc nào đó
Đờng truyền vật lý dùng để chuyển các tín hiệu điện tử giữa các máy tính.Các tín hiệu điện tử đó biểu thị các giá trị dữ liệu dới dạng các xung nhị phân (on
- off) Tất cả các dữ liệu đợc truyền giữa các máy tính đều thuộc một dạng sóng
điện từ (EM) nào đó, trải qua các tần số radio tới sóng cực ngắn (viba) và tiahồng ngoại Tuỳ theo tần số sóng điện từ có thể dùng các đờng truyền vật lý khácnhau để truyền các tín hiệu
Kiến trúc mạng máy tính thể hiện cách nối các máy tính với nhau ra sao và tập hợp tất cả các quy tắc, quy ớc mà tất cả các thực thể tham gia truyền thông
2
Trang 3trên mạng phải tuân theo để cho mạng hoạt động tốt Cách nối các máy tính đợc
gọi là hình trạng (topolopy) của mạng (gọi tắt là topo) Còn các tập quy tắc, quy
-ớc truyền thông thì đợc gọi là giao thức (protocol) của mạng
1.1.2 Mô hình mạng OSI.
Khi thiết kế mạng, các nhà thiết kế tự do lựa chọn kiến trúc mạng của mình
Từ đó dẫn đến tình trạng không tơng thích giữa các mạng: phơng pháp truy nhập
đờng dẫn khác nhau, sử dụng họ giao thức khác nhau Sự không tơng thích đó
là trở ngại cho sự tơng tác của ngời sử dụng các mạng khác nhau Nhu cầu trao
đổi thông tin càng lớn thì trở ngại đó càng không thể chấp nhận đợc với ngời sửdụng Sự thúc bách của khách hàng đã khiến cho các nhà sản xuất và các nhànghiên cứu – thông qua các tổ chức chuẩn hoá quốc gia và quốc tế – tích cựctìm kiếm một sự hội tụ cho các sản phẩm mạng trên thị trờng
Vì lý do trên, vào năm 1984 Tổ chức tiêu chuẩn hoá ISO đã xây dựng một môhình tham chiếu cho việc kết nối đến các hệ thống mở (Reference Model forOpen Systems Interconnection hay gọn hơn: ISO Reference Model) để làm chuẩncho các nhà thiết kế và chế tạo các sản phẩm về mạng Mô hình này gồm bảytầng nh sau:
Trang 4Hình 1.1 Mô hình mạng OSI Application layer: chứa các dịch vụ phục vụ cho ngời dùng nh truyền
nhận file hay email,
Presentation layer: chứa các dịch vụ về thao tác dữ liệu nh nén, giải
nén, Cấp này không có các dịch vụ thông tin của riêng nó
Session layer: chứa các dịch vụ cho phép trao đổi thông tin giữa các quá
trình, tạo và kết thúc kết nối của các quá trình trên các máy khác nhau
Transport layer: chứa các dịch vụ tìm và sửa lỗi nhằm bảo đảm tính đúng
đắn của dữ liệu nhận
Network layer: quản lý việc kết nối trong mạng liên quan đến địa chỉ của
máy tính gửi và máy tính nhận cũng nh sự tắc nghẽn giao thông của mạng
Datalink layer: bảo đảm các gói dữ liệu đợc gửi đi thông qua mạng vật lý Physical layer: phục vụ cho việc gửi các dữ liệu là các bít thô thông qua
kênh truyền
Do đặc tính của mô hình OSI, dữ liệu gửi phải đi qua tất cả 14 cấp để đến
đợc chơng trình nhận ở mỗi cấp, dữ liệu sẽ bị trễ một khoảng thời gian Điều nàylàm giảm hiệu suất của mạng Mô hình TCP/IP có u điểm hơn và hiện đang đợc
Ip Physical layer Ethernetx.25, token ring
Trang 5Application layer: chứa các ứng dụng có sử dụng mạng Lớp này tơng
ứng với hai lớp trên cùng ( application và presentation layer) của mô hình OSI
Transport layer: cung cấp các dịch vụ truyền nhận dữ liệu giữa các quá
trình với nhau Các quá trình này có thể trao đổi thông tin với nhau thông qua địachỉ của máy tính gửi/ nhận và cổng thông tin Cấp này tơng ứng với hai cấp kếtiếp (session và transport layer) của mô hình OSI
Network layer: đảm nhận việc xác định, tìm đờng và phân phối các gói
thông tin tới địa chỉ đích Network layer trong mô hình TCP/IP tơng ứng với hailớp network và datalink của mô hình OSI
Physical layer: sử dụng các giao tiếp chuẩn hiện có nh Ethernet,
Tokenring, để phục vụ cho việc gửi và nhận dữ liệu
TCP là giao thức truyền điều khiển “có liên kết”, nó gửi từng gói dữ liệu
đi, nơi nhận dữ liệu theo giao thức này phải có trách nhiệm thông báo và kiểm tradữ liệu đã đủ hay cha, có lỗi hay không có lỗi, nếu dữ liệu bị mất hay hỏng TCP
sẽ yêu cầu gửi lại dữ liệu cho đến khi hết các lỗi Trớc khi truyền dữ liệu bao giờcũng có sự kết nối giữa máy gửi và máy nhận (do đó mới gọi là “có liên kết”).Truyền dữ liệu theo TCP đảm bảo việc truy cập, truyền dữ liệu trên mạng làkhông mất mát Nó thích hợp cho các ứng dụng đòi hỏi độ tin cậy khi truyền dữliệu, nhng lại không thích hợp cho các ứng dụng đòi hỏi lu thông trên mạng rộngrãi Muốn gửi gói dữ liêu (datagram) đến nhiều đích, TCP phải thiết lập đến mộtmạch ảo Đây là một tiến trình tiêu thụ thời gian và tập trung tài nguyên Đối vớicác ứng dụng phụ thuộc vào việc truyền rộng rãi, UDP là một giao thức lớp vậnchuyển thích hợp hơn
UDP có thể truyền dữ liệu mà không đòi hỏi phải thiết lập một mạch dữ
liệu Mỗi đơn vị dữ liệu đợc gởi với một địa chỉ nguồn và đích đầy đủ và chỉ sốcổng liên quan cho việc truyền dữ liệu UDP là một giao thức vận chuyển “khôngliên kết”vì nó không sử dụng một kết nối đợc thiết lập để truyền dữ liệu và nócũng không có cơ chế để kiểm tra dữ liệu UDP có xu thế hoạt động nhanh hơnTCP Tuy nhiên, UDP không bảo đảm rằng đến theo thứ tự nó đợc gửi Một thuậnlợi lớn của UDP so với TCP là giao thức này thích hợp cho những ứng dụng đợctruyền rộng rãi Một gói dữ liệu có thể truyền trên mạng bằng cách xác định một
địa chỉ truyền rộng rãi (broadcast address) trên địa chỉ đích
IP là giao thức liên mạng cung cấp khả năng kết nối các mạng con thành
liên mạng để truyền dữ liệu Vai trò của IP tơng tự giao thức tầng mạng trong môhình OSI, nó giải mã các địa chỉ và tìm đờng để đa dữ liệu đến đích
TCP/IP có những đặc điểm sau đây – những đặc điểm đã làm nó trở nênphổ biến:
Trang 6- Tính độc lập về topolopy của mạng: TCP/IP đợc dùng trên mạng bus, rimg
và star Nó có thể dùng trong mạng cục bộ (LAN) cũng nh mạng diện rộng(WAN)
- Tính độc lập về phần cứng mạng: TCP/IP có thể dùng Ethernet,tokenring,
- Chuẩn nghi thức mở: Với chuẩn TCP/IP có thể hiện thực trên bất kỳ phầncứng hay hệ điều hành nào Do đó, TCP/IP là tập nghi thức lý tởng để kết hợpphần cứng cũng nh phần mềm khác nhau
- Sơ đồ địa chỉ toàn cầu: mỗi máy tính trên mạng TCP/IP có một đia chỉ xác
định duy nhất Mỗi packed dữ liệu đợc gửi trên mạng TCP/IP có một header gồm
địa chỉ của máy đích cũng nh địa chỉ của máy nguồn
- Khung Client-Server: TCP/IP là khung cho những ứng dụng client-servermạnh hoạt động trên mạng cục bộ và mạng diện rộng
- Chuẩn nghi thức ứng dụng: TCP/IP không chỉ cung cấp cho mọi ngời lậptrình phơng thức truyền dữ liệu trên mạng giữa các ứng dụng mà còn cung cấpnhiều nghi thức ở mức ứng dụng (những nghi thức hiện thực các chức năng thờngdùng nh email, truyền nhận file)
1.2 INTERNET.
1.2.1 Giới thiệu về internet.
Internet là một mạng máy tính có phạm vi toàn cầu bao gồm nhiều mạngnhỏ cũng nh các máy tính riêng lẻ đợc kết nối với nhau để có thể liên lạc và trao
đổi thông tin Trên quan điểm Client/ Server thì có thể xem là Internet nh làmạng của các mạng của các Server, có thể truy xuất bởi hàng triệu Client
Việc chuyển và nhận thông tin trên Internet đợc thực hiện bằng giao thứcTCP/IP ( trình bày ở phần 1.3)
Internet bắt nguồn từ APANET trực thuộc Bộ quốc phòng Mỹ và đợc mởrộng cho các viện nghiên cứu, sau này đợc phát triển cho hàng triệu ngời cùng sửdụng nh ngày hôm nay Ban đầu các nhà nghiên cứu liên lạc với nhau qua mạngbằng dịch vụ th điện tử, sau đó phát sinh thêm một số mạng máy tính nh mạngUsernet, ngày nay là dịch vụ bảng tin điện tử Mạng này đợc thiết lập lần đầu tiên
ở University of North Carolina, mà qua đó ngời dùng có thể gửi và đọc các thông
điệp theo các đề tài tự chọn ở việt Nam thì mạng Trí Tuệ Việt Nam của công tyFPT là mạng đầu tiên đợc xây dựng theo dạng bảng tin điện tử
Các nhà khoa học khắp nơi trên thế giới tham gia vào hệ thống thông tin
mở này, những ngời dùng với mục đích thơng mại và công chúng cũng tham giavào hệ thống này thông qua các nhà cung cấp dịch vụ Internet Vì thế gây ra sự
6
Trang 7phát triển bùng nổ thông tin liên lạc toàn cầu qua mạng máy tính Đó chính làmạng Internet hiện nay.
1.2.2 Các dịch vụ thông tin trên Internet.
Cùng với TCP/IP, các chuẩn cho tầng ứng dụng cũng đợc phát triển ngàycàng phổ biến trên Internet Các ứng dụng có sớm nhất là Telnet, FTP, SMTP vàDNS đã trở thành những dịch vụ thông tin quen thuộc trên Internet Với sự pháttriển của công nghệ thông tin và nhu cầu xã hội, danh sách các dịch vụ thông tintrên Internet ngày càng dài thêm với sự đóng góp sản phẩm của nhiều nhà cungcấp dịch vụ khác nhau Sau đây là một vài dịch vụ điển hình nhất:
1.2.2.1 Dịch vụ tên miền (DNS)
Việc định danh các phần tử của liên mạng bằng các con số nh trong địa chỉ
IP rõ ràng không làm cho ngời sử dụng hài lòng bởi chúng khó nhớ, dễ nhầm lẫn.Vì thế ngời ta đã xây dựng hệ thống đặt tên cho các phần tử của Internet, chophép ngời dùng chỉ cần nhớ các tên chứ không cần nhớ địa chỉ IP nữa
Cũng giống nh địa chỉ IP, tên mỗi máy tính trên mạng phải là duy nhất.Ngoài ra cần phải có cách để chuyển đổi tơng ứng giữa các tên và các địa chỉ số
Đối với một một liên mạng tầm cỡ toàn cầu nh Internet phải có một hệ thống đặttên trực tuyến và phân tán thích hợp Hệ thống này đợc gọi là DNS ( DomainName System) Đây là một phơng pháp quản lý các tên bằng cách giao tráchnhiệm phân cấp cho các nhóm tên Mỗi cấp trong hệ thống đợc gọi là một miền( domain), các miền đợc tách nhau bởi dấu chấm Ví dụ: java.sun.com
1.2.2.2 Đăng nhập từ xa (Telnet)
Telnet cho phép ngời sử dụng từ một trạm làm việc của mình có thể đăngnhập vào một trạm ở xa qua mạng và làm việc với hệ thống y nh là một trạm cuốinối trực tiếp với trạm từ xa đó Để khởi động Telnet, từ trạm làm việc của mìnhngời sử dụng chỉ việc gõ:
telnet < domain name or IP address >
Sau đó, nếu mạng hoạt động tốt thì ngời sử dụng chỉ việc làm theo cácthông báo hiển thị trên màn hình Telnet có một tập lệnh điều khiển hỗ trợ choquá trình thực hiện
1.2.2.3 Truyền tệp (FTP).
Dịch vụ truyền tệp trên Internet đợc đặt tên theo giao thức mà nó sử dụng
là FTP ( File Transfer Protocol)
FTP cho phép chuyển các tệp từ một trạm này sang trạm khác, bất kể cáctrạm đó ở đâu và sử dụng hệ điều hành gì, chỉ cần chúng đợc nối Internet và cài
đặt FTP
Để khởi động FTP, từ trạm làm việc của mình ta chỉ cần gõ:
ftp < domain name or IP address>
Trang 8FTP sẽ thiết lập liên kết với trạm ở xa và lúc đó ta sẽ phải làm các thao tác
Khi sử dụng chơng trình FTP để kết nối vào một anonymous FTP host, nóhoạt động giống nh nghi thức FTP, ngoại trừ khi nó đòi hỏi một User ID, đó làanonymous Khi nó đòi hỏi password, chúng ta đánh vào một xâu ký tự bất kỳ
Khi ngời quản trị hệ thống cài đặt một máy tính nh là một anonymous FTPhost, định rõ những th mục dùng cho việc truy cập chung Nh một biện pháp antoàn, hầu hết những anonymous FTP host cho phép User download file, nhngkhông cho phép upload file ( chép lên Server)
1.2.2.4 Th điện tử ( Email).
Đây là một trong những dịch vụ thông tin phổ biến nhất trên Internet hiệnnay Tuy nhiên, khác với các dịch vụ DNS, Telnet, FTP, th điện tử không phải làdịch vụ “từ đầu - đến cuối” (end to end), nghĩa là máy gửi th và máy nhận thkhông cần thiết phải liên kết trực tiếp với nhau để thực hiện việc chuyển th Nó
là dịch vụ kiểu “ lu và chuyển tiếp” (Store and Forward) Th điện tử đợc chuyển
từ máy này sang máy khác cho đến máy đích ( giống nh trong hệ thống bu chínhthông thờng: th đợc chuyển đến tay ngời nhận sau khi đi qua một số bu cụctrung chuyển) Hình sau cho sơ đồ ví dụ hoạt động của mạng th điện tử:
8
Trang 9Mỗi ngời dùng ( Client) đều phải kết nối với một Email Server gần nhất( đóng vai trò bu cục địa phơng) Sau khi soạnh thảo xong th và đề rõ địa chỉ đích( ngời nhận), ngời sử dụng sẽ gửi th đến Email Server của mình đã đăng ký.Email Server này có nhiệm vụ chuyển th đến đích hoặc đến một Email Servertrung gian khác Th sẽ chuyển đến Email Server của ngời nhận và đợc lu tại đó.
Đến khi ngời nhận thiết lập một kết nối đến Email Server đó thì th sẽ đợc chuyển
về máy của ngời nhận, nếu không thì th vẫn tiếp tục đợc giữ tại Server để đảmbảo không bị mất th Giao thức truyền thống sử dụng cho hệ thống điện tử củaInternet là SMTP ( Simple Mail Transfer Protôcl) Giao thức này đợc đặc tả tronghai chuẩn là RFC 822 ( định nghĩa cấu trúc của th) và RFC 821 ( đặc tả trao đổi
th giữa hai trạm của mạng) Hệ thống địa chỉ th điện tử trên Internet không chỉ
định danh cho các host của mạng mà phải xác định rõ ngời sử dụng trên các host
đó để trao đổi th Dạng tổng quát của địa chỉ Email là:
Login-name@host-name
Ví dụ: hoanhn@yahoo.com
Trang 101.2.2.5 Nhóm tin ( New groups)
Đây là dịch vụ cho phép nhiều ngời sử dụng ở nhiều nơi khác nhau cócùng mối quan tâm có thể tham gia vào một “nhóm tin” và trao đổi các vấn đềquan tâm của mình thông qua các nhóm tin này Có thể có nhiều nhóm tin khácnhau nh: nhóm tin về nhạc cổ điển, nhóm tin về hội hoạ, Trong mỗi nhóm tin
có thể có nhiều nội dung thảo luận khác nhau Tên nhóm tin đợc cấu trúc theokiểu phân cấp, các cấp phân cách bởi một dấu chấm
Ví dụ: Rec music Classic
Trên Internet có nhiều Server tin khác nhau, trong đó tin tức đợc thu thập
từ nhiều nguồn khác nhau Các Server tin cũng có thể tạo các nhóm tin cục bộ
đáp ứng nhu cầu của ngời sử dụng
Ngời sử dụng tơng tác với một Server tin thông qua một chơng trình đợc
đặt tên là chơng trình đọc tin (News Reader) Và ngời sử dụng chỉ biết đến mộtServer tin duy nhất, đó là Server mà mình kết nối vào Mọi sự trao đổi, tơng tácgiữa các Server tin và các nhóm tin hoàn toàn “trong suốt” đối với ngời sử dụng.Với dịch vụ này, một ngời sử dụng có thể nhận đợc các thông tin mà mình quantâm của nhiều ngời từ khắp nơi, đồng thời có thể gửi thông tin của mình đi chonhững ngời này
1.2.2.6 Tìm kiếm tệp (Archie).
Archie là một dịch vụ Internet cho phép tìm kiếm theo chỉ số (index) cáctệp khả dụng trên các Server công cộng (Archie Server) của mạng Ngời sử dụng
có thể yêu cầu Archie tìm các tệp có chứa một xâu văn bản hoặc chứa một từ nào
đó Archie sẽ trả lời bằng tên các tệp thoả mãn yêu cầu và chỉ ra tên của cácServer chứa các tệp đó
Để dùng Archie, ta phải chọn một Archie Server Sau đó, có thể dùngTelnet để truy cập tới Server và tìm kiếm tệp mong muốn Ta cũng có thể dùng
th điện tử ( chứa các lệnh tìm kiếm mong muốn) gửi tới địa chỉ Archie@Servertrong đó Server chính là Archie Server mà ta đã chọn, và chờ đợi để nhận th trảlời ( về kết quả tìm kiếm) từ Server
Ngoài dịch vụ tìm kiếm tệp hiện nay còn có các dịch vụ tìm kiếm khác nhtìm kiếm thông tin theo thực đơn Gopher, tìm kiếm thông tin theo chỉ số WAIS(Wide Area Infomation Server)
1.2.2.7 World Wide Web (WWW).
WWW là một dịch vụ thông tin mới nhất và hấp dẫn nhất trên Internet Nó
dựa trên kỹ thuật biểu diễn thông tin có tên là siêu văn bản (hypertext), trong đó
các từ đợc chọn trong văn bản có thể đợc “mở rộng” bất kỳ lúc nào để cung cấp
các thông tin chi tiết Sự mở rộng ở đây đợc hiểu theo nghĩa là chúng có các liên
10
Trang 11kết tới các tài liệu khác ( có thể là văn bản, âm thanh, ) có chứa các thông tin bổ
sung
Thuật ngữ World Wide Web đợc công bố lần đầu tiên vào tháng 8/1991trên nhóm tin alt.hypertext Từ đó nhiều nhà phát triển đã tham gia phát triểnWeb trên các hệ điều hành khác nhau (Unix, Macintosh, Window, ) Web sửdụng một ngôn ngữ có tên là HTML HTML cho phép đọc và liên kết các kiểu dữliệu khác nhau trên cùng một trang thông tin Để thực hiện việc truy nhập, liênkết các tài nguyên khác nhau theo kỹ thuật siêu văn bản, WWW sử dụng kháiniệm URL (Uniform Resource Locator) Đây chính là một dạng tên để định danhduy nhất cho một tài liệu hoặc một dịch vụ Web
Hoạt động của Web dựa trên mô hình Client/Server Tại trạm Client, ngời
sử dụng sẽ dùng Web Browser để gửi yêu cầu tìm kiếm các tập tin HTML đếnWeb Server ở xa trên mạng Internet nhờ địa chỉ URL Web Server nhận yêu cầurồi gửi kết quả trả về cho Client
Với sự hấp dẫn của mình, Web đã phát triển mạnh tới mức mà ngời ta gọi
là “ bùng nổ Web” Ngày nay, Web không chỉ đơn thuần là cung cấp thông tintrên Internet mà nó đã đợc ứng dụng rộng rãi trong lĩnh vực thơng mại nh quảngcáo, đặt hàng trực tuyến,
1.2.3 Interanet.
Do nhận thức đợc vai trò của thông tin trong hoạt động kinh tế thị trờngcạnh tranh gay gắt nên các tổ chức , doanh nghiệp đều tìm mọi cơ hội và biệnpháp để xây dựng và hoàn thiện các hệ thống thông tin nội bộ của mình Hệthống này bao gồm một cơ sở hạ tầng truyền thông máy tính và một tập hợp cácchơng trình ứng dụng nhằm tin học hoá các hoạt động tác nghiệp của đơn vị Với
hệ thống này, thông tin nội bộ phải luôn chính xác, tin cậy, hiệu quả, đặc biệt
hệ thống phải có khả năng truyền thông với thế giới bên ngoài qua mạng toàn cầuInternet khi cần thiết
Từ những mục tiêu trên, ngời ta thấy cần phải xây dựng một mạng thôngtin nội bộ cho các đơn vị, nó đợc gọi là mạng Internet
Cũng nh Internet, Interanet đã phát triển không ngừng và ngày càng thuhút đợc sự quan tâm của ngời sử dụng lẫn nhà cung cấp Song song với việc pháttriển các công cụ tiện ích và các dịch vụ thông tin cho Internet, ngời ta cũng tậptrung vào việc chọn lựa các giải pháp cho Interanet Một số sản phẩm nh LotusNotes, Novell GroupWise, Microsoft Exchange, đều đã hớmg mục tiêu đếnInteranet
Mạng nội bộ có thể là mạng cục bộ LAN, hoặc kết nối các máy tính vùngrộng hơn WAN
Trang 121.3 Mô hình ứng dụng Client- Server và ứng dụng trên Web
Client - Server l m t mô hình tính toán khi máy Client g i m t yêu c uà một mô hình tính toán khi máy Client gởi một yêu cầu ột mô hình tính toán khi máy Client gởi một yêu cầu ởi một yêu cầu ột mô hình tính toán khi máy Client gởi một yêu cầu ầu
n o ó t i máy server Yêu c u thà một mô hình tính toán khi máy Client gởi một yêu cầu đó tới máy server Yêu cầu thường là để truy xuất thông tin như ới máy server Yêu cầu thường là để truy xuất thông tin như ầu ường là để truy xuất thông tin nhưng l à một mô hình tính toán khi máy Client gởi một yêu cầu đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưể truy xuất thông tin như truy xu t thông tin nhất thông tin như ư
nh ng yêu c u trong database, hay yêu c u ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ầu ầu đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưể truy xuất thông tin như ử lý như cập nhật x lý nh c p nh tư ập nhật ập nhậtdatabase ho c ch y m t s quá trình n o ó Máy client th c hi n yêuặc chạy một số quá trình nào đó Máy client thực hiện yêu ạy một số quá trình nào đó Máy client thực hiện yêu ột mô hình tính toán khi máy Client gởi một yêu cầu ố quá trình nào đó Máy client thực hiện yêu à một mô hình tính toán khi máy Client gởi một yêu cầu đó tới máy server Yêu cầu thường là để truy xuất thông tin như ực hiện yêu ện yêu
c u, v máy server áp ng yêu c u n y L i ích c a h th ng client-ầu à một mô hình tính toán khi máy Client gởi một yêu cầu đó tới máy server Yêu cầu thường là để truy xuất thông tin như ứng yêu cầu này Lợi ích của hệ thống client- ầu à một mô hình tính toán khi máy Client gởi một yêu cầu ợi ích của hệ thống client- ủa hệ thống client- ện yêu ố quá trình nào đó Máy client thực hiện yêuserver l t n d ng à một mô hình tính toán khi máy Client gởi một yêu cầu ập nhật ụng được sức mạnh của mỗi máy đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưượi ích của hệ thống client-c s c m nh c a m i máyứng yêu cầu này Lợi ích của hệ thống client- ạy một số quá trình nào đó Máy client thực hiện yêu ủa hệ thống client- ỗi máy ho c h i u h nh.ặc chạy một số quá trình nào đó Máy client thực hiện yêu ện yêu đó tới máy server Yêu cầu thường là để truy xuất thông tin như ều hành à một mô hình tính toán khi máy Client gởi một yêu cầuClient th c hi n m t s ng d ng v m t logic v th hi n cho ngực hiện yêu ện yêu ột mô hình tính toán khi máy Client gởi một yêu cầu ố quá trình nào đó Máy client thực hiện yêu ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy ều hành ặc chạy một số quá trình nào đó Máy client thực hiện yêu à một mô hình tính toán khi máy Client gởi một yêu cầu ể truy xuất thông tin như ện yêu ường là để truy xuất thông tin như ử lý như cập nhậti s
d ng, trong khi server th c hi n vi c x lý phía sau v các ch c n ng vụng được sức mạnh của mỗi máy ực hiện yêu ện yêu ện yêu ử lý như cập nhật à một mô hình tính toán khi máy Client gởi một yêu cầu ứng yêu cầu này Lợi ích của hệ thống client- ăng về ều hành
c s d li uơ sở dữ liệu ởi một yêu cầu ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ện yêu .
12
Trang 13Hình 1.4 Mơ hình client – server.
Cấu hình cơ bản của ứng dụng Client - Server :
Hình 1.5 Cấu hình cơ bản của ứng dụng Client – Server
i v i ng d ng trên Web, trình duy t (browser) ph c v nh l
Đố quá trình nào đĩ Máy client thực hiện yêu ới máy server Yêu cầu thường là để truy xuất thơng tin như ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy ện yêu ụng được sức mạnh của mỗi máy ụng được sức mạnh của mỗi máy ư à một mơ hình tính tốn khi máy Client gởi một yêu cầuclient chung, g i yêu c u v m t trang web, nh n h i áp l ngơn ngởi một yêu cầu ầu ều hành ột mơ hình tính tốn khi máy Client gởi một yêu cầu ập nhật ồi đáp là ngơn ngữ đĩ tới máy server Yêu cầu thường là để truy xuất thơng tin như à một mơ hình tính tốn khi máy Client gởi một yêu cầu ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhậtHTML, v hi n th nĩ cho ngà một mơ hình tính tốn khi máy Client gởi một yêu cầu ể truy xuất thơng tin như ị nĩ cho người sử dụng Web server nhận yêu cầu thơng ường là để truy xuất thơng tin như ử lý như cập nhật ụng được sức mạnh của mỗi máyi s d ng Web server nh n yêu c u thơngập nhật ầuqua giao th c d ch chuy n siêu v n b n (HTTP) v tr v thơng tin c nứng yêu cầu này Lợi ích của hệ thống client- ị nĩ cho người sử dụng Web server nhận yêu cầu thơng ể truy xuất thơng tin như ăng về ản (HTTP) và trả về thơng tin cần à một mơ hình tính tốn khi máy Client gởi một yêu cầu ản (HTTP) và trả về thơng tin cần ều hành ầuthi t trong d ng HTML m client cĩ th hi u ết trong dạng HTML mà client cĩ thể hiểu được Tương tự như mơ ạy một số quá trình nào đĩ Máy client thực hiện yêu à một mơ hình tính tốn khi máy Client gởi một yêu cầu ể truy xuất thơng tin như ể truy xuất thơng tin như đĩ tới máy server Yêu cầu thường là để truy xuất thơng tin nhưượi ích của hệ thống client-c Tươ sở dữ liệung t nh mơực hiện yêu ưhình client-server, ta cĩ th phân b vi c x lý ng d ng v qu n lý c sể truy xuất thơng tin như ố quá trình nào đĩ Máy client thực hiện yêu ện yêu ử lý như cập nhật ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy à một mơ hình tính tốn khi máy Client gởi một yêu cầu ản (HTTP) và trả về thơng tin cần ơ sở dữ liệu ởi một yêu cầu
d li u th nh t ng ph n v i nh ng m c ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ện yêu à một mơ hình tính tốn khi máy Client gởi một yêu cầu ừng phần với những mức độ khác nhau giữa máy client và ầu ới máy server Yêu cầu thường là để truy xuất thơng tin như ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ứng yêu cầu này Lợi ích của hệ thống client- đĩ tới máy server Yêu cầu thường là để truy xuất thơng tin nhưột mơ hình tính tốn khi máy Client gởi một yêu cầu khác nhau gi a máy client vững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật à một mơ hình tính tốn khi máy Client gởi một yêu cầumáy server Hình1.3 mơ t c u trúc c a m t ng d ng web i n hình :ản (HTTP) và trả về thơng tin cần ất thơng tin như ủa hệ thống client- ột mơ hình tính tốn khi máy Client gởi một yêu cầu ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy đĩ tới máy server Yêu cầu thường là để truy xuất thơng tin như ể truy xuất thơng tin như
Client Request
Response Server
- Quản lý dữ liệu
- Lệnh SQL truy xuất database
- Chương trình ứng dụng
Application Server
Client
Trang 14Hình 1.6 Mô hình web điển hình
So v i ng d ng client - server, u i m chính c a ng d ng trên webới máy server Yêu cầu thường là để truy xuất thông tin như ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy ư đó tới máy server Yêu cầu thường là để truy xuất thông tin như ể truy xuất thông tin như ủa hệ thống client- ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy
l vi c tri n khai ng d ng V i ng d ng client-server, ta ph i c i à một mô hình tính toán khi máy Client gởi một yêu cầu ện yêu ể truy xuất thông tin như ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy ới máy server Yêu cầu thường là để truy xuất thông tin như ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy ản (HTTP) và trả về thông tin cần à một mô hình tính toán khi máy Client gởi một yêu cầu đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưặc chạy một số quá trình nào đó Máy client thực hiện yêut
l i th nh ph n trên client m i khi thay ạy một số quá trình nào đó Máy client thực hiện yêu à một mô hình tính toán khi máy Client gởi một yêu cầu ầu ỗi máy đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưổi và cập nhật ứng dụng Trong à một mô hình tính toán khi máy Client gởi một yêu cầu ập nhậti v c p nh t ng d ng Trongập nhật ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy
m t ng d ng web, v i m i tính n ng hay vi c c p nh t m i ng d ng, taột mô hình tính toán khi máy Client gởi một yêu cầu ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy ới máy server Yêu cầu thường là để truy xuất thông tin như ỗi máy ăng về ện yêu ập nhật ập nhật ới máy server Yêu cầu thường là để truy xuất thông tin như ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máykhông ph i ản (HTTP) và trả về thông tin cần đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưưa ra m t chột mô hình tính toán khi máy Client gởi một yêu cầu ươ sở dữ liệung trình th c thi m i trên m i máy desktopực hiện yêu ới máy server Yêu cầu thường là để truy xuất thông tin như ỗi máy
c a ngủa hệ thống client- ường là để truy xuất thông tin như ử lý như cập nhật ụng được sức mạnh của mỗi máyi s d ng Browser ph c v nh l client chung, cung c p vi cụng được sức mạnh của mỗi máy ụng được sức mạnh của mỗi máy ư à một mô hình tính toán khi máy Client gởi một yêu cầu ất thông tin như ện yêutruy c p t i thông tin hi n có trên server Chi phí trong vi c ki m soátập nhật ới máy server Yêu cầu thường là để truy xuất thông tin như ện yêu ện yêu ể truy xuất thông tin nhưphiên b n, phân b ph n m m, v qu n tr h th ng gi m i r t nhi uản (HTTP) và trả về thông tin cần ố quá trình nào đó Máy client thực hiện yêu ầu ều hành à một mô hình tính toán khi máy Client gởi một yêu cầu ản (HTTP) và trả về thông tin cần ị nó cho người sử dụng Web server nhận yêu cầu thông ện yêu ố quá trình nào đó Máy client thực hiện yêu ản (HTTP) và trả về thông tin cần đó tới máy server Yêu cầu thường là để truy xuất thông tin như ất thông tin như ều hành
i v i ng d ng trên Web Hình 1.4 mô t c u hình c b n c a ng
đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưố quá trình nào đó Máy client thực hiện yêu ới máy server Yêu cầu thường là để truy xuất thông tin như ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy ản (HTTP) và trả về thông tin cần ất thông tin như ơ sở dữ liệu ản (HTTP) và trả về thông tin cần ủa hệ thống ứng yêu cầu này Lợi ích của hệ thống
client-d ng trên Webụng được sức mạnh của mỗi máy
Hình 1.7 Cấu hình cơ bản của ứng dụng trên Web
Client
Web browser
Internet
Khác v i ng d ng ch y trên máy tính ới máy server Yêu cầu thường là để truy xuất thông tin như ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy ạy một số quá trình nào đó Máy client thực hiện yêu đó tới máy server Yêu cầu thường là để truy xuất thông tin nhươ sở dữ liệu ẻ khi mà việc xử lý đượcn l khi m vi c x lý à một mô hình tính toán khi máy Client gởi một yêu cầu ện yêu ử lý như cập nhật đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưượi ích của hệ thống client-c
th c hi n trên m i máy tính, ng d ng Web t p trung x lý trên serverực hiện yêu ện yêu ỗi máy ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy ập nhật ử lý như cập nhật(g m m t hay nhi u server) Vì browser ch ồi đáp là ngôn ngữ ột mô hình tính toán khi máy Client gởi một yêu cầu ều hành ỉ đưa ra giao diện người sử đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưưa ra giao di n ngện yêu ường là để truy xuất thông tin như ử lý như cập nhậti s
d ng, to n b ng d ng ụng được sức mạnh của mỗi máy à một mô hình tính toán khi máy Client gởi một yêu cầu ột mô hình tính toán khi máy Client gởi một yêu cầu ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưượi ích của hệ thống client- đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưặc chạy một số quá trình nào đó Máy client thực hiện yêuc t trên server :
14
Web Browser Internet/Intranet Web server Network
Application Server Network Database
Trang 15Application Server (Server ng d ng) : l ph n m m cung c p các d chứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy à một mô hình tính toán khi máy Client gởi một yêu cầu ầu ều hành ất thông tin như ị nó cho người sử dụng Web server nhận yêu cầu thông
v ụng được sức mạnh của mỗi máy đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưể truy xuất thông tin như ỗi máy ợi ích của hệ thống client- h tr cho các ng d ng Web l m ch c n ng k t n i ngứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy à một mô hình tính toán khi máy Client gởi một yêu cầu ứng yêu cầu này Lợi ích của hệ thống client- ăng về ết trong dạng HTML mà client có thể hiểu được Tương tự như mô ố quá trình nào đó Máy client thực hiện yêu ường là để truy xuất thông tin nhưi dùng
u cu i v i c s d li u c ng tác Nó ho t ng nh m t môi gi i
đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưầu ố quá trình nào đó Máy client thực hiện yêu ới máy server Yêu cầu thường là để truy xuất thông tin như ơ sở dữ liệu ởi một yêu cầu ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ện yêu ột mô hình tính toán khi máy Client gởi một yêu cầu ạy một số quá trình nào đó Máy client thực hiện yêu đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưột mô hình tính toán khi máy Client gởi một yêu cầu ư ột mô hình tính toán khi máy Client gởi một yêu cầu ới máy server Yêu cầu thường là để truy xuất thông tin nhưtrung gian gi a trình duy t Web v Database Server, nh ó không c nững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ện yêu à một mô hình tính toán khi máy Client gởi một yêu cầu ờng là để truy xuất thông tin như đó tới máy server Yêu cầu thường là để truy xuất thông tin như ầu
ph i c i ản (HTTP) và trả về thông tin cần à một mô hình tính toán khi máy Client gởi một yêu cầu đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưặc chạy một số quá trình nào đó Máy client thực hiện yêu ứng yêu cầu này Lợi ích của hệ thống client-t ng d ng òi h i cao v m t b o trì cho ngụng được sức mạnh của mỗi máy đó tới máy server Yêu cầu thường là để truy xuất thông tin như ỏi cao về mặt bảo trì cho người dùng đầu ều hành ặc chạy một số quá trình nào đó Máy client thực hiện yêu ản (HTTP) và trả về thông tin cần ường là để truy xuất thông tin nhưi dùng đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưầuu
cu i ố quá trình nào đó Máy client thực hiện yêu
Trong hình 1.8 dưới máy server Yêu cầu thường là để truy xuất thông tin như đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưi ây, ta có m t giao di n, nh ng ột mô hình tính toán khi máy Client gởi một yêu cầu ện yêu ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưố quá trình nào đó Máy client thực hiện yêu ượi ích của hệ thống client-i t ng bêntrong đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưể truy xuất thông tin như ực hiện yêu th c hi n công vi c n o ó cùng v i nh ng d ch v Hình v choện yêu ện yêu à một mô hình tính toán khi máy Client gởi một yêu cầu đó tới máy server Yêu cầu thường là để truy xuất thông tin như ới máy server Yêu cầu thường là để truy xuất thông tin như ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ị nó cho người sử dụng Web server nhận yêu cầu thông ụng được sức mạnh của mỗi máy ẽ cho
th y t t c nh ng công vi c chính ất thông tin như ất thông tin như ản (HTTP) và trả về thông tin cần ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ện yêu đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưều hành đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưặc chạy một số quá trình nào đó Máy client thực hiện yêuu t trên server, trên browser(client) ch còn m i user-interface.ỉ đưa ra giao diện người sử ỗi máy
Trang 16i v i Web server, thay vì user-interface, ta s có Web-interface ây
Đố quá trình nào đó Máy client thực hiện yêu ới máy server Yêu cầu thường là để truy xuất thông tin như ẽ cho Đ
l m t l p chà một mô hình tính toán khi máy Client gởi một yêu cầu ột mô hình tính toán khi máy Client gởi một yêu cầu ới máy server Yêu cầu thường là để truy xuất thông tin như ươ sở dữ liệung trình tươ sở dữ liệung tác v i Web server nh m m c ích giaoới máy server Yêu cầu thường là để truy xuất thông tin như ằm mục đích giao ụng được sức mạnh của mỗi máy đó tới máy server Yêu cầu thường là để truy xuất thông tin như
ti p v i client Web-interface óng vai trò nh l p keo gi a nh ng ết trong dạng HTML mà client có thể hiểu được Tương tự như mô ới máy server Yêu cầu thường là để truy xuất thông tin như đó tới máy server Yêu cầu thường là để truy xuất thông tin như ư ới máy server Yêu cầu thường là để truy xuất thông tin như ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưố quá trình nào đó Máy client thực hiện yêui
tượi ích của hệ thống client-ng v trang HTML à một mô hình tính toán khi máy Client gởi một yêu cầu đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưượi ích của hệ thống client-c g i t i browser c a client Web-interface cungử lý như cập nhật ới máy server Yêu cầu thường là để truy xuất thông tin như ủa hệ thống
client-c p HTML client-cho browser thông qua Web server v nh n nh ng input t userất thông tin như à một mô hình tính toán khi máy Client gởi một yêu cầu ập nhật ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ừng phần với những mức độ khác nhau giữa máy client vàthông qua browser v Web server Có nhi u công ngh à một mô hình tính toán khi máy Client gởi một yêu cầu ều hành ện yêu đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưượi ích của hệ thống client-c dùng đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưể truy xuất thông tin như xây
d ng Web-interface n y, ch ng h n nh CGI, ISAPI, ASP Gi a nh ngực hiện yêu à một mô hình tính toán khi máy Client gởi một yêu cầu ẳng hạn như CGI, ISAPI, ASP Giữa những ạy một số quá trình nào đó Máy client thực hiện yêu ư ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhậtcông ngh n y, có nh ng u v nhện yêu à một mô hình tính toán khi máy Client gởi một yêu cầu ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ư à một mô hình tính toán khi máy Client gởi một yêu cầu ượi ích của hệ thống client- đó tới máy server Yêu cầu thường là để truy xuất thông tin như ể truy xuất thông tin nhưc i m khác nhau, tu theo yêu c uỳ theo yêu cầu ầu
c a ng d ng m ta s ch n công ngh thích h p.ủa hệ thống client- ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy à một mô hình tính toán khi máy Client gởi một yêu cầu ẽ cho ọn công nghệ thích hợp ện yêu ợi ích của hệ thống
Database
Trang 17Chơng 2: tổng quan về Cơ sở dữ liệu – vấn đề vấn đề
tích hợp web với cơ sở dữ liệu2.1 Tổng quan về cơ sở dữ liệu (CSDL)
2.1.1 Thế nào là một CSDL?
CSDL là một tập hợp các dữ liệu có liên hệ với nhau đợc tổ chức và lu trữlại trên các thiết bị lu trữ tin Nó cho phép nhiều ngời sử dụng, nhiều chơng trìnhứng dụng với các mục đích khác nhau đồng thời truy cập và khai thác
2.1.2 Các mô hình CSDL.
Nhìn chung mọi ứng dụng CSDL đều bao gồm các phần:
Thành phần xử lý ứng dụng ( Application procesing compoents)
Thành phần phần mềm CSDL ( Database software components)
Bản thân CSDL (The database itselt)
Thông thờng có 5 mô hình kiến trúc dựa trên cấu hình phân tán về truy nhập dữliệu của hệ thống máy tính Client/Server:
Mô hình CSDL tập trung (Centralized database model)
Mô hình CSDL theo kiểu File-Server (File-Server databasemodel)
Mô hình xử lý từng phần CSDL (Database extract processingmodel)
Mô hình CSDL Client/ Server ( Client/ Server database model)
Mô hình CSDL phân tán (Distributed database model)
Trang 18Ví dụ ngời dùng máy tính cá nhân có thể chạy các chơng trình ứng dụng
có sử dụng phần mềm CSDL Oracle để truy nhập tới CSDL nằm trên đĩa cứngcủa một cá nhân đó Khi các thành phần ứng dụng, phần mềm CSDL và bản thânCSDL cùng nằm trên một máy tính thì ứng dụng đã thích hợp với mô hình tậptrung
Hầu hết công việc xử lý luồng thông tin chính đợc thực hiện bởi nhiều tổchức mà vẫn phù hợp với mô hình tập trung Ví dụ một bộ xử lý mainframe chạyphần mềm CSDL IMS hoặc DB2 của IBM có thể cung cấp cho các trạm làm việc
ở các vị trí phân tán sự truy cập nhanh chóng tới CSDL trung tâm Tuy nhiên,trong rất nhiều hệ thống nh vậy, cả ba thành phần của ứng dụng CSDL đều thựchiện trên cùng một máy mainframe do đó cấu hình này cũng tơng tự mô hình tậptrung
2.1.2.2 Mô hình CSDL theo kiểu File – Server
Trong mô hình CSDL theo kiểu File – Server các thành phần ứng dụng vàphần mềm CSDL ở trên một hệ thống máy tính và các file vật lý tạo nên CSDLnằm trên hệ thống máy tính khác Một cấu hình nh vậy thờng đợc dùng trong môitrờng cục bộ, trong đó một hay nhiều hệ thống máy tính đóng vai trò của Server,
lu giữ các file dữ liệu cho hệ thống máy tính khác thâm nhập tới Trong môi ờng File-Server, phần mềm mạng đợc thi hành và làm cho phần mềm ứng dụngcũng nh phần mềm CSDL trên hệ thống của ngời dùng cuối coi các file hoặcCSDL trên Server thực sự nh là trên máy tính của chính họ
tr-Mô hình File-Server rất giống với mô hình tập trung Các file CSDL nằmtrên máy khác với các thành phần ứng dụng và phần mềm CSDL Tuy nhiên, cácthành phần ứng dụng và các phần mềm CSDL có thể có cùng một thiết kế để vậnhành một môi trờng tập trung Thực chất phần mềm mạng đã làm cho phần mềmứng dụng và phần mềm CSDL tởng rằng chúng đang truy xuất CSDL trong môitrờng cục bộ Một môi trờng nh vậy có thể phức tạp hơn môi trờng tập trung bởivì phần mềm mạng có thể phải thực hiện cơ chế đồng thời cho phép nhiều ngời
sử dụng cuối có thể truy cập vào cùng CSDL
2.1.2.3 Mô hình xử lý từng phần CSDL
Trong một mô hình khác trong đó một CSDL ở xa có thể đợc truy cập bởiphần mềm CSDL, đợc gọi là xử lý dữ liệu từng phần Với mô hình này, ngời sửdụng có thể ở tại một máy tính cá nhân kết nối với hệ thống máy tính ở xa nơi códữ liệu mong muốn Ngời sử dụng sau đó có thể tác động trực tiếp đến phần mềmchạy trên máy ở xa và tạo yêu cầu để lấy dữ liệu từ CSDL đó Ngời sử dụng cũng
có thể chuyển dữ liệu từ máy tính ở xa về chính máy tính của mình vào đĩa cứng
và có thể thực hiện việc sao chép bằng phần mềm CSDL trên máy cá nhân
18
Trang 19Với cách tiếp cận này, ngời sử dụng phải biết chắc chắn là dữ liệu nằm ở
đâu và làm nh thế nào để truy nhập và lấy dữ liệu từ một máy tính ở xa Phầnmềm ứng dụng đi kèm cần phải có trên cả hai hệ thống máy tính để kiểm soát sựtruy cập và chuyển dữ liệu giữa hai hệ thống Tuy nhiên, phần mềm CSDL chạytrên hai máy không cần biết rằng việc xử lý CSDL từ xa đang diễn ra vì ngời sửdụng tác động tới chúng một cách độc lập
2.1.2.4 Mô hình CSDL Client/Server
Trong mô hình CSDL Client/Server, CSDL nầm trên một máy khác vớimột máy có thành phần xử lý ứng dụng Nhng phần mềm CSDL đợc tách ra giữa
hệ thống Client chạy các chơng trình ứng dụng và hệ thống Server lu trữ dữ liệu
Trong mô hình này, các thành phần xử lý ứng dụng trên hệ thống Client đa
ra yêu cầu cho phần mềm CSDL chạy trên máy Client, phần mềm này sẽ kết nốivới phần mềm CSDL chạy trên Server Phần mềm CSDL trên Server sẽ truy cậpvào CSDL và gửi trả kết quả cho máy Client
Mới nhìn, mô hình CSDL Client/Server có vẻ giống nh mô hình Server Với mô hình File-Server, thông tin gắn với sự truy cập CSDL vật lý phảichạy trên toàn mạng Một giao tác yêu cầu nhiều sự truy cập dữ liệu có thể gây ratắc nghẽn lu lợng truyền trên mạng
File-Giả sử một ngời dùng cuối tạo một query để lấy dữ liệu tổng số, yêu cầu
đòi hỏi lấy dữ liệu từ 1000 bản ghi với cách tiếp cận File-Server nội dung của tấtcả 1000 bản ghi phải đa lên mạng, vì phần mềm CSDL chạy trên máy ngời sửdụng phải truy cập từng bản ghi để thoả mãn yêu cầu của ngời sử dụng Với cáchtiếp cận CSDL Client/Server, chỉ có query khởi động ban đầu và kết quả cuốicùng đa lên mạng, phần mềm CSDL chạy trên máy lu giữ CSDL sẽ truy cập cácbản ghi cần thiết, xử lý chúng và gọi các thủ tục cần thiết để đa ra kết quả cuốicùng
Trong mô hình CSDL Client/Server, thờng nói đến các phần mềm end software và back-end software Front-end software đợc chạy trên một máytính cá nhân hoặc chạy trên một workstation và đáp ứng yêu cầu đơn lẻ riêngbiệt, phần mềm này đóng vai trò của Client trong ứng dụng CSDL Client/Server
front-và thực hiện các chức năng hớng tới nhu cầu ngời dùng cuối cùng
Phần mềm front-end software thờng chia thành các phần sau:
End User database software: Phần mềm CSDL này có thể đợc thựchiện bởi ngời sử dụng cuối trên chính hệ thống của họ để truy nhập các CSDLcục bộ nhỏ cũng nh kết nối với các CSDL lớn hơn trên trên CSDL Server
Simple query and reporting software: Phần mềm này đợc thiết kế đểcung cấp các công cụ dễ dàng hơn trong việc lấy dữ liệu từ CSDL và tạo các báocáo đơn giản từ CSDL đã có
Trang 20 Data analysic software: Phần mềm này cung cấp các hàm về tìmkiếm, khôi phục, chúng có thể cung cấp các phân tích phức tạp cho ngời dùng.
Application development tools: Các công cụ này cung cấp các khảnăng về ngôn ngữ mà các nhân viên hệ thống thông tin chuyên nghiệp sử dụng đểxây dựng các ứng dụng CSDL của họ Các công cụ ở đây bao gồm các công cụ vềthông dịch, biên dịch đơn đến các công cụ CASE (Computer Aided SoftwareEnginerring), chúng tự động tất cả các bớc trong quá trình phát triển ứng dụng vàsinh ra chơng trình cho các ứng dụng CSDL
Database administration Tools: Các công cụ này cho phép ngời quảntrị CSDL sử dụng máy tính cá nhân hoặc trạm làm việc để thực hiện việc quản trịCSDL nh định nghĩa các cơ sở dữ liệu, thực hiện lu trữ hay phục hồi
Back-end software: Phần mềm này bao gồm phần mềm CSDLClient/Server và phần mềm chạy trên máy đóng vai trò là Server CSDL
2.1.2.5 Mô hình CSDL phân tán
Cả hai mô hình File-Server và Client/Server đều giả định là dữ liệu nằmtrên một bộ xử lý và chơng trình ứng dụng truy nhập dữ liệu nằm trên một máykhác, còn mô hình CSDL phân tán lại giả định bản thân CSDL có ở trên nhiềumáy khác nhau Mô hình này có nhiều u điểm nh: dễ mở rộng CSDL, hiệu năngcao Tuy nhiên, nó khá phức tạp, chi phí xây dựng cao và tính an toàn kém hơn
so với CSDL tập trung
1.1.3 ODBC v OLEDB, ADO à OLEDB, ADO
1.1.3.1 ODBC ( Open Database Connectivity)
Cú r t nhi u h th ng database khỏc nhau, n u khụng cú m t chu nất thụng tin như ều hành ện yờu ố quỏ trỡnh nào đú Mỏy client thực hiện yờu ết trong dạng HTML mà client cú thể hiểu được Tương tự như mụ ột mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầu ẩnchung đú tới mỏy server Yờu cầu thường là để truy xuất thụng tin nhưể truy xuất thụng tin như giao ti p gi a nh ng h database n y thỡ khi ng d ng chuy nết trong dạng HTML mà client cú thể hiểu được Tương tự như mụ ững yờu cầu trong database, hay yờu cầu để xử lý như cập nhật ững yờu cầu trong database, hay yờu cầu để xử lý như cập nhật ện yờu à một mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầu ứng yờu cầu này Lợi ớch của hệ thống client- ụng được sức mạnh của mỗi mỏy ể truy xuất thụng tin như
i t h database n y sang h database khỏc, mó c a ch
đú tới mỏy server Yờu cầu thường là để truy xuất thụng tin nhưổi và cập nhật ứng dụng Trong ừng phần với những mức độ khỏc nhau giữa mỏy client và ện yờu à một mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầu ện yờu ủa hệ thống client- ươ sở dữ liệung trỡnh ph iản (HTTP) và trả về thụng tin cầnthay đú tới mỏy server Yờu cầu thường là để truy xuất thụng tin nhưổi và cập nhật ứng dụng Trong ạy một số quỏ trỡnh nào đú Mỏy client thực hiện yờui l i cho phự h p ợi ớch của hệ thống client- Để truy xuất thụng tin như ản (HTTP) và trả về thụng tin cần gi i quy t tỡnh tr ng n y, ngết trong dạng HTML mà client cú thể hiểu được Tương tự như mụ ạy một số quỏ trỡnh nào đú Mỏy client thực hiện yờu à một mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầu ư i ta ó ờng là để truy xuất thụng tin như đú tới mỏy server Yờu cầu thường là để truy xuất thụng tin như đú tới mỏy server Yờu cầu thường là để truy xuất thụng tin nhưưa
ra m t chu n ột mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầu ẩn đú tới mỏy server Yờu cầu thường là để truy xuất thụng tin nhưể truy xuất thụng tin như cỏc ki u database khỏc nhau cú th giao ti p ể truy xuất thụng tin như ể truy xuất thụng tin như ết trong dạng HTML mà client cú thể hiểu được Tương tự như mụ đú tới mỏy server Yờu cầu thường là để truy xuất thụng tin nhưư c, ú lợi ớch của hệ thống client- đú tới mỏy server Yờu cầu thường là để truy xuất thụng tin như à một mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầuODBC (Open DataBase Connectivity)
Chu n ODBC, l m t t p m r ng c a nh ng thẩn à một mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầu ột mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầu ập nhật ởi một yờu cầu ột mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầu ủa hệ thống client- ững yờu cầu trong database, hay yờu cầu để xử lý như cập nhật ư vi n liờn k t ện yờu ết trong dạng HTML mà client cú thể hiểu được Tương tự như mụ đú tới mỏy server Yờu cầu thường là để truy xuất thụng tin nhưột mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầung(DLL), cung c p giao di n l p trỡnh ng d ng cất thụng tin như ện yờu ập nhật ứng yờu cầu này Lợi ớch của hệ thống client- ụng được sức mạnh của mỗi mỏy ơ sở dữ liệu s d li u chu n ODBCởi một yờu cầu ững yờu cầu trong database, hay yờu cầu để xử lý như cập nhật ện yờu ẩn
d a trờn phiờn b n ực hiện yờu ản (HTTP) và trả về thụng tin cần đú tới mỏy server Yờu cầu thường là để truy xuất thụng tin nhưư c chu n hoỏ c a SQL ODBC l m t l p n m gi aợi ớch của hệ thống client- ẩn ủa hệ thống client- à một mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầu ột mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầu ới mỏy server Yờu cầu thường là để truy xuất thụng tin như ằm mục đớch giao ững yờu cầu trong database, hay yờu cầu để xử lý như cập nhậtchươ sở dữ liệung trỡnh ng d ng v h th ng database V i ODBC v SQL, ta cúứng yờu cầu này Lợi ớch của hệ thống client- ụng được sức mạnh của mỗi mỏy à một mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầu ện yờu ố quỏ trỡnh nào đú Mỏy client thực hiện yờu ới mỏy server Yờu cầu thường là để truy xuất thụng tin như à một mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầu
th vi t mó truy xu t ể truy xuất thụng tin như ết trong dạng HTML mà client cú thể hiểu được Tương tự như mụ ất thụng tin như đú tới mỏy server Yờu cầu thường là để truy xuất thụng tin nhưết trong dạng HTML mà client cú thể hiểu được Tương tự như mụn cơ sở dữ liệu s d li u m khụng ph thu c v o b t kởi một yờu cầu ững yờu cầu trong database, hay yờu cầu để xử lý như cập nhật ện yờu à một mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầu ụng được sức mạnh của mỗi mỏy ột mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầu à một mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầu ất thụng tin như ỳ theo yờu cầu
h qu n tr cện yờu ản (HTTP) và trả về thụng tin cần ị nú cho người sử dụng Web server nhận yờu cầu thụng ơ sở dữ liệu s d li u n o ởi một yờu cầu ững yờu cầu trong database, hay yờu cầu để xử lý như cập nhật ện yờu à một mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầu
Chu n ODBC khụng ch ẩn ỉ đưa ra giao diện người sử đú tới mỏy server Yờu cầu thường là để truy xuất thụng tin nhưị nú cho người sử dụng Web server nhận yờu cầu thụngnh ngh a lu t v n ph m c a SQL m cũn ĩa luật văn phạm của SQL mà cũn định ập nhật ăng về ạy một số quỏ trỡnh nào đú Mỏy client thực hiện yờu ủa hệ thống client- à một mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầu đú tới mỏy server Yờu cầu thường là để truy xuất thụng tin nhưị nú cho người sử dụng Web server nhận yờu cầu thụngnhngh a giao di n l p trỡnh c a ngụn ng C cho m t databse SQL Do ú, ĩa luật văn phạm của SQL mà cũn định ện yờu ập nhật ủa hệ thống client- ững yờu cầu trong database, hay yờu cầu để xử lý như cập nhật ột mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầu đú tới mỏy server Yờu cầu thường là để truy xuất thụng tin như đú tới mỏy server Yờu cầu thường là để truy xuất thụng tin nhưố quỏ trỡnh nào đú Mỏy client thực hiện yờui
tư ng C hay C++ cú th truy xu t t i b t k DBMS n o cú driver ODBC ợi ớch của hệ thống client- ể truy xuất thụng tin như ất thụng tin như ới mỏy server Yờu cầu thường là để truy xuất thụng tin như ất thụng tin như ỳ theo yờu cầu à một mụ hỡnh tớnh toỏn khi mỏy Client gởi một yờu cầu
20
Trang 21ODBC l l p ph c v giao ti p gi a chà một mô hình tính toán khi máy Client gởi một yêu cầu ới máy server Yêu cầu thường là để truy xuất thông tin như ụng được sức mạnh của mỗi máy ụng được sức mạnh của mỗi máy ết trong dạng HTML mà client có thể hiểu được Tương tự như mô ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ươ sở dữ liệung trình ng d ng v hứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy à một mô hình tính toán khi máy Client gởi một yêu cầu ện yêu
i u h nh c ng nh
đó tới máy server Yêu cầu thường là để truy xuất thông tin như ều hành à một mô hình tính toán khi máy Client gởi một yêu cầu ũng nh ư h th ng file c a database ODBC nh n nh ng yêuện yêu ố quá trình nào đó Máy client thực hiện yêu ủa hệ thống client- ập nhật ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật
c u truy xu t thông tin t chầu ất thông tin như ừng phần với những mức độ khác nhau giữa máy client và ươ sở dữ liệung trình ng d ng, chuy n nó th nh ngônứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy ể truy xuất thông tin như à một mô hình tính toán khi máy Client gởi một yêu cầu
ng m database engine hi u ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật à một mô hình tính toán khi máy Client gởi một yêu cầu ể truy xuất thông tin như đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưư c ợi ích của hệ thống client- đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưể truy xuất thông tin như truy xu t thông tin t database Nhất thông tin như ừng phần với những mức độ khác nhau giữa máy client và ư
v y, nó cho phép chúng ta phát tri n t p h p các function v method ập nhật ể truy xuất thông tin như ập nhật ợi ích của hệ thống client- à một mô hình tính toán khi máy Client gởi một yêu cầu đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưể truy xuất thông tin nhưtruy xu t ất thông tin như đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưết trong dạng HTML mà client có thể hiểu được Tương tự như môn database m không c n ph i hi u sâu v database ó à một mô hình tính toán khi máy Client gởi một yêu cầu ầu ản (HTTP) và trả về thông tin cần ể truy xuất thông tin như ều hành đó tới máy server Yêu cầu thường là để truy xuất thông tin như
Ví d , MS Access cho phép chúng ta liên k t (link) hay g n (attach) m tụng được sức mạnh của mỗi máy ết trong dạng HTML mà client có thể hiểu được Tương tự như mô ắn (attach) một ột mô hình tính toán khi máy Client gởi một yêu cầu
b ng ản (HTTP) và trả về thông tin cần đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưết trong dạng HTML mà client có thể hiểu được Tương tự như môn database Khi th c hi n i u n y, Access s yêu c u chúng taực hiện yêu ện yêu đó tới máy server Yêu cầu thường là để truy xuất thông tin như ều hành à một mô hình tính toán khi máy Client gởi một yêu cầu ẽ cho ầu
ch n lo i database (database m Access tr c ti p h tr ), n u không cóọn công nghệ thích hợp ạy một số quá trình nào đó Máy client thực hiện yêu à một mô hình tính toán khi máy Client gởi một yêu cầu ực hiện yêu ết trong dạng HTML mà client có thể hiểu được Tương tự như mô ỗi máy ợi ích của hệ thống client- ết trong dạng HTML mà client có thể hiểu được Tương tự như mô
lo i database phù h p chúng ta có th ch n ODBC Khi ch n ODBC, nó sạy một số quá trình nào đó Máy client thực hiện yêu ợi ích của hệ thống client- ể truy xuất thông tin như ọn công nghệ thích hợp ọn công nghệ thích hợp ẽ cho
li t kê t t c các c u hình khác nhau m chúng ta ã th nh l p, v ch nện yêu ất thông tin như ản (HTTP) và trả về thông tin cần ất thông tin như à một mô hình tính toán khi máy Client gởi một yêu cầu đó tới máy server Yêu cầu thường là để truy xuất thông tin như à một mô hình tính toán khi máy Client gởi một yêu cầu ập nhật à một mô hình tính toán khi máy Client gởi một yêu cầu ọn công nghệ thích hợp
m t trong s ó b t k database engine n o.ột mô hình tính toán khi máy Client gởi một yêu cầu ố quá trình nào đó Máy client thực hiện yêu đó tới máy server Yêu cầu thường là để truy xuất thông tin như ất thông tin như ể truy xuất thông tin như à một mô hình tính toán khi máy Client gởi một yêu cầu
Khi ng d ng l m vi c v i ODBC, nó l m vi c v i data source vứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy à một mô hình tính toán khi máy Client gởi một yêu cầu ện yêu ới máy server Yêu cầu thường là để truy xuất thông tin như à một mô hình tính toán khi máy Client gởi một yêu cầu ện yêu ới máy server Yêu cầu thường là để truy xuất thông tin như à một mô hình tính toán khi máy Client gởi một yêu cầudatabase engine m nó tham kh o Khi thi t l p c u hình cho client m c ià một mô hình tính toán khi máy Client gởi một yêu cầu ản (HTTP) và trả về thông tin cần ết trong dạng HTML mà client có thể hiểu được Tương tự như mô ập nhật ất thông tin như à một mô hình tính toán khi máy Client gởi một yêu cầu à một mô hình tính toán khi máy Client gởi một yêu cầu
t nh ng k t h p driver v i database Nh ng k t h p n y s
đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưặc chạy một số quá trình nào đó Máy client thực hiện yêu ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ết trong dạng HTML mà client có thể hiểu được Tương tự như mô ợi ích của hệ thống client- ới máy server Yêu cầu thường là để truy xuất thông tin như ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ết trong dạng HTML mà client có thể hiểu được Tương tự như mô ợi ích của hệ thống client- à một mô hình tính toán khi máy Client gởi một yêu cầu ẽ cho đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưư c ợi ích của hệ thống client- đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưặc chạy một số quá trình nào đó Máy client thực hiện yêuttên v à một mô hình tính toán khi máy Client gởi một yêu cầu đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưư c s d ng khi chúng ta mu n yêu c u k t n i ợi ích của hệ thống client- ử lý như cập nhật ụng được sức mạnh của mỗi máy ố quá trình nào đó Máy client thực hiện yêu ầu ết trong dạng HTML mà client có thể hiểu được Tương tự như mô ố quá trình nào đó Máy client thực hiện yêu đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưể truy xuất thông tin như truy xu t ất thông tin như đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưết trong dạng HTML mà client có thể hiểu được Tương tự như môndatabase ó Nh ng k t h p gi a database v driver g i l nh ng Datađó tới máy server Yêu cầu thường là để truy xuất thông tin như ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ết trong dạng HTML mà client có thể hiểu được Tương tự như mô ợi ích của hệ thống client- ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật à một mô hình tính toán khi máy Client gởi một yêu cầu ọn công nghệ thích hợp à một mô hình tính toán khi máy Client gởi một yêu cầu ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhậtSource Name hay nh ng DSN Khi mu n m m t database thông quaững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ố quá trình nào đó Máy client thực hiện yêu ởi một yêu cầu ột mô hình tính toán khi máy Client gởi một yêu cầuODBC, chúng ta ph i cung c p DSN, UserID v Password ODBC s l yản (HTTP) và trả về thông tin cần ất thông tin như à một mô hình tính toán khi máy Client gởi một yêu cầu ẽ cho ất thông tin như
nh ng thông s m chúng ta ã thi t l p c u hình s n (trong Control Panelững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ố quá trình nào đó Máy client thực hiện yêu à một mô hình tính toán khi máy Client gởi một yêu cầu đó tới máy server Yêu cầu thường là để truy xuất thông tin như ết trong dạng HTML mà client có thể hiểu được Tương tự như mô ập nhật ất thông tin như ẵn (trong Control Panel
- ODBC32) đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưể truy xuất thông tin như ạy một số quá trình nào đó Máy client thực hiện yêu t o k t n i.ết trong dạng HTML mà client có thể hiểu được Tương tự như mô ố quá trình nào đó Máy client thực hiện yêu
Nh ng th nh ph n chung c a DSN :ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật à một mô hình tính toán khi máy Client gởi một yêu cầu ầu ủa hệ thống
client DSN : Tên DSN mà chúng ta đã đặt khi thiết lập cấu hình ODBC
- UID : UserID được sử dụng để login vào database
- PWD : Password được sử dụng khi login
Như v y, ập nhật đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưể truy xuất thông tin như truy xu t ất thông tin như đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưết trong dạng HTML mà client có thể hiểu được Tương tự như môn các database thông qua ODBC, ta ph i c iản (HTTP) và trả về thông tin cần à một mô hình tính toán khi máy Client gởi một yêu cầu
t driver cho database ó ODBC có nhi u driver h tr cho các
đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưặc chạy một số quá trình nào đó Máy client thực hiện yêu đó tới máy server Yêu cầu thường là để truy xuất thông tin như ều hành đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưể truy xuất thông tin như ỗi máy ợi ích của hệ thống
client-database khác nhau nh m chuy n các b ng tính hay các t p tin v n b nằm mục đích giao ể truy xuất thông tin như ản (HTTP) và trả về thông tin cần ập nhật ăng về ản (HTTP) và trả về thông tin cần
th nh data source H i u h nh c n c v o thông tin à một mô hình tính toán khi máy Client gởi một yêu cầu ện yêu đó tới máy server Yêu cầu thường là để truy xuất thông tin như ều hành à một mô hình tính toán khi máy Client gởi một yêu cầu ăng về ứng yêu cầu này Lợi ích của hệ thống client- à một mô hình tính toán khi máy Client gởi một yêu cầu đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưư c ghi b i ODBCợi ích của hệ thống client- ởi một yêu cầuAdministrator trong Registry đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưể truy xuất thông tin như xác đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưị nó cho người sử dụng Web server nhận yêu cầu thôngnh c p c a ODBC driver giao ti pất thông tin như ủa hệ thống client- ết trong dạng HTML mà client có thể hiểu được Tương tự như mô
v i data source ới máy server Yêu cầu thường là để truy xuất thông tin như
Vi c n p ODBC driver l "trong su t" (transparent) ện yêu ạy một số quá trình nào đó Máy client thực hiện yêu à một mô hình tính toán khi máy Client gởi một yêu cầu ố quá trình nào đó Máy client thực hiện yêu đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưố quá trình nào đó Máy client thực hiện yêui v i chới máy server Yêu cầu thường là để truy xuất thông tin như ươ sở dữ liệungtrình ng d ng Trong môi trứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy ư ng m ng, ODBC ờng là để truy xuất thông tin như ạy một số quá trình nào đó Máy client thực hiện yêu đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưản (HTTP) và trả về thông tin cầnm nh n luôn c vi cập nhật ản (HTTP) và trả về thông tin cần ện yêu
x lý nh ng v n ử lý như cập nhật ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ất thông tin như đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưều hành truy xu t d li u trên m ng nhất thông tin như ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ện yêu ạy một số quá trình nào đó Máy client thực hiện yêu ư vi c truy xu t ện yêu ất thông tin như đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưồi đáp là ngôn ngững
th i hay gi i quy t tranh ch p.ờng là để truy xuất thông tin như ản (HTTP) và trả về thông tin cần ết trong dạng HTML mà client có thể hiểu được Tương tự như mô ất thông tin như
Tóm l i, ODBC l m t giao ti p l p trình chu n cho ngạy một số quá trình nào đó Máy client thực hiện yêu à một mô hình tính toán khi máy Client gởi một yêu cầu ột mô hình tính toán khi máy Client gởi một yêu cầu ết trong dạng HTML mà client có thể hiểu được Tương tự như mô ập nhật ẩn ư i phát tri nờng là để truy xuất thông tin như ể truy xuất thông tin như
ng d ng v nh cung c p database Tr
ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy à một mô hình tính toán khi máy Client gởi một yêu cầu à một mô hình tính toán khi máy Client gởi một yêu cầu ất thông tin như ư c khi ODBC tr th nh m t chu nới máy server Yêu cầu thường là để truy xuất thông tin như ởi một yêu cầu à một mô hình tính toán khi máy Client gởi một yêu cầu ột mô hình tính toán khi máy Client gởi một yêu cầu ẩn
Trang 22không chính th c cho các chứng yêu cầu này Lợi ích của hệ thống client- ươ sở dữ liệung trình ng d ng trên Windows giao ti pứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy ết trong dạng HTML mà client có thể hiểu được Tương tự như mô
v i các h th ng database, ngới máy server Yêu cầu thường là để truy xuất thông tin như ện yêu ố quá trình nào đó Máy client thực hiện yêu ư i l p trình ph i s d ng các ngôn ngờng là để truy xuất thông tin như ập nhật ản (HTTP) và trả về thông tin cần ử lý như cập nhật ụng được sức mạnh của mỗi máy ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhậtriêng cho m i database m h mu n k t n i t i Khi ODBC ra ỗi máy à một mô hình tính toán khi máy Client gởi một yêu cầu ọn công nghệ thích hợp ố quá trình nào đó Máy client thực hiện yêu ết trong dạng HTML mà client có thể hiểu được Tương tự như mô ố quá trình nào đó Máy client thực hiện yêu ới máy server Yêu cầu thường là để truy xuất thông tin như đó tới máy server Yêu cầu thường là để truy xuất thông tin nhường là để truy xuất thông tin nhưi thìngư i l p trình không còn b n tâm v i u n y n a, h có th truy xu tờng là để truy xuất thông tin như ập nhật ập nhật ều hành đó tới máy server Yêu cầu thường là để truy xuất thông tin như ều hành à một mô hình tính toán khi máy Client gởi một yêu cầu ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ọn công nghệ thích hợp ể truy xuất thông tin như ất thông tin như
n các database khác nhau b ng các th t c v h m nh
đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưết trong dạng HTML mà client có thể hiểu được Tương tự như mô ằm mục đích giao ủa hệ thống client- ụng được sức mạnh của mỗi máy à một mô hình tính toán khi máy Client gởi một yêu cầu à một mô hình tính toán khi máy Client gởi một yêu cầu ư nhau Mã c aủa hệ thống chươ sở dữ liệung trình ng d ng không thay ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưổi và cập nhật ứng dụng Trongi khi data source chuy n t h th ngể truy xuất thông tin như ừng phần với những mức độ khác nhau giữa máy client và ện yêu ố quá trình nào đó Máy client thực hiện yêudatabase n y sang h th ng khác (ví d t Oracle sang SQL server).à một mô hình tính toán khi máy Client gởi một yêu cầu ện yêu ố quá trình nào đó Máy client thực hiện yêu ụng được sức mạnh của mỗi máy ừng phần với những mức độ khác nhau giữa máy client và
client-Ưu điểm và nhược điểm của ODBC
Vì ODBC cung c p vi c truy xu t ất thông tin như ện yêu ất thông tin như đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưết trong dạng HTML mà client có thể hiểu được Tương tự như môn b t k d ng database thôngất thông tin như ỳ theo yêu cầu ạy một số quá trình nào đó Máy client thực hiện yêu
d ng có s n, do ó t o nên s uy n chuy n trong nh ng ng d ng Ta cóụng được sức mạnh của mỗi máy ẵn (trong Control Panel đó tới máy server Yêu cầu thường là để truy xuất thông tin như ạy một số quá trình nào đó Máy client thực hiện yêu ực hiện yêu ể truy xuất thông tin như ể truy xuất thông tin như ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy
th chuy n ng d ng t h th ng database n y sang h th ng databaseể truy xuất thông tin như ể truy xuất thông tin như ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy ừng phần với những mức độ khác nhau giữa máy client và ện yêu ố quá trình nào đó Máy client thực hiện yêu à một mô hình tính toán khi máy Client gởi một yêu cầu ện yêu ố quá trình nào đó Máy client thực hiện yêukhác m không t n nhi u chi phí v công s c DSN c a ta có th thamà một mô hình tính toán khi máy Client gởi một yêu cầu ố quá trình nào đó Máy client thực hiện yêu ều hành à một mô hình tính toán khi máy Client gởi một yêu cầu ứng yêu cầu này Lợi ích của hệ thống client- ủa hệ thống client- ể truy xuất thông tin như
kh o ản (HTTP) và trả về thông tin cần đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưết trong dạng HTML mà client có thể hiểu được Tương tự như môn b t k m t database n o i u n y cho phép ta có th thamất thông tin như ỳ theo yêu cầu ột mô hình tính toán khi máy Client gởi một yêu cầu à một mô hình tính toán khi máy Client gởi một yêu cầu Đ ều hành à một mô hình tính toán khi máy Client gởi một yêu cầu ể truy xuất thông tin như
kh o ản (HTTP) và trả về thông tin cần đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưết trong dạng HTML mà client có thể hiểu được Tương tự như môn b t k m t database n o Nhất thông tin như ỳ theo yêu cầu ột mô hình tính toán khi máy Client gởi một yêu cầu à một mô hình tính toán khi máy Client gởi một yêu cầu ư v y, ta có th phát tri n ngập nhật ể truy xuất thông tin như ể truy xuất thông tin như ứng yêu cầu này Lợi ích của hệ thống
client-d ng theo m t h th ng client-database n y (ch ng h n nhụng được sức mạnh của mỗi máy ột mô hình tính toán khi máy Client gởi một yêu cầu ện yêu ố quá trình nào đó Máy client thực hiện yêu à một mô hình tính toán khi máy Client gởi một yêu cầu ẳng hạn như CGI, ISAPI, ASP Giữa những ạy một số quá trình nào đó Máy client thực hiện yêu ư Microsoft Access)nhưng l i bi n ạy một số quá trình nào đó Máy client thực hiện yêu ết trong dạng HTML mà client có thể hiểu được Tương tự như mô đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưổi và cập nhật ứng dụng Trongi th nh s n ph m s d ng h th ng database khác (víà một mô hình tính toán khi máy Client gởi một yêu cầu ản (HTTP) và trả về thông tin cần ẩn ử lý như cập nhật ụng được sức mạnh của mỗi máy ện yêu ố quá trình nào đó Máy client thực hiện yêu
d nhụng được sức mạnh của mỗi máy ư Microsoft SQL Server) b ng cách ằm mục đích giao đó tới máy server Yêu cầu thường là để truy xuất thông tin nhươ sở dữ liệun gi n l thay ản (HTTP) và trả về thông tin cần à một mô hình tính toán khi máy Client gởi một yêu cầu đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưổi và cập nhật ứng dụng Trongi driver đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưư cợi ích của hệ thống
client-s d ng DSN m chúng ta nh ngh a trong ng d ng.ử lý như cập nhật ụng được sức mạnh của mỗi máy à một mô hình tính toán khi máy Client gởi một yêu cầu đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưị nó cho người sử dụng Web server nhận yêu cầu thông ĩa luật văn phạm của SQL mà còn định ứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy
Vi c g i h m qua l p ODBC ện yêu ọn công nghệ thích hợp à một mô hình tính toán khi máy Client gởi một yêu cầu ới máy server Yêu cầu thường là để truy xuất thông tin như đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưết trong dạng HTML mà client có thể hiểu được Tương tự như môn database engine không ph i l khôngản (HTTP) và trả về thông tin cần à một mô hình tính toán khi máy Client gởi một yêu cầu
t n phí ODBC ph i h tr kh n ng chuy n ổi và cập nhật ứng dụng Trong ản (HTTP) và trả về thông tin cần ỗi máy ợi ích của hệ thống client- ản (HTTP) và trả về thông tin cần ăng về ể truy xuất thông tin như đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưổi và cập nhật ứng dụng Trongi các h m à một mô hình tính toán khi máy Client gởi một yêu cầu đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưư c g i tợi ích của hệ thống client- ọn công nghệ thích hợp ừng phần với những mức độ khác nhau giữa máy client và
ng d ng, vi c n y c n phí t n cho vi c x lý v l m quá trình truy xu tứng yêu cầu này Lợi ích của hệ thống client- ụng được sức mạnh của mỗi máy ện yêu à một mô hình tính toán khi máy Client gởi một yêu cầu ầu ổi và cập nhật ứng dụng Trong ện yêu ử lý như cập nhật à một mô hình tính toán khi máy Client gởi một yêu cầu à một mô hình tính toán khi máy Client gởi một yêu cầu ất thông tin nhưdatabase ch m i Hập nhật đó tới máy server Yêu cầu thường là để truy xuất thông tin như ơ sở dữ liệun n a, ODBC không h tr vi c truy xu t cững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật ỗi máy ợi ích của hệ thống client- ện yêu ất thông tin như ơ sở dữ liệu s dởi một yêu cầu ững yêu cầu trong database, hay yêu cầu để xử lý như cập nhật
li u ện yêu đó tới máy server Yêu cầu thường là để truy xuất thông tin nhưố quá trình nào đó Máy client thực hiện yêu ư ng (Object Database)i t ợi ích của hệ thống
client-1.1.3.2 OLEDB v ADO à OLEDB, ADO
OLEDB được thiết kế để thay thế ODBC như một phương thức truy cập
dữ liệu ODBC hiện thời là tiêu chuẩn phía Client được Windows sử dụng rấtphổ biến để truy cập các dữ liệu quan hệ vì nó thiết lập các Server cơ sở dữ liệucàng tổng quát càng tốt đến các ứng dụng Client OLEDB đi sâu hơn một bước,bằng cách làm cho tất cả nguồn dữ liệu trở thành tổng quát đối với ứng dụngClient
ADO là giao diện dựa trên đối tượng của công nghệ OLEDB ADO làcông nghệ truy cập cơ sở dữ liệu hướng đối tượng ADO hiện nay đượcMicrosoft xem là kĩ thuật để truy cập cơ sở dữ liệu từ Web Server Hình vẽ saucho ta cách nhìn tổng quát về ODBC và OLEDB:
22
Client Application
RDO (Remote Data Objects)
ADO (ActivexX Data Objects)
ADO (ActivexX Data Objects)
Data Objects)
ODBC Driver Maứnger
OLEDB
Relational Database
Document Server
Email Server Client Application
Trang 23Vậy ngoài ADO, có cách nào để đưa dữ liệu lên Web nữa không? Thực ra,trước khi có ADO, người ta thường dùng CGI (Common Gateway Interface)cùng với ODBC Hiện nay, đa số các trang Web động sử dụng cơ sở dữ liệu vẫncòn được tạo bằng CGI.
Phương pháp CGI đòi hỏi ta yêu cầu Web Server một trang Web HTMLbình thường Ở một nơi nào đó trong trang Web sẽ có lời gọi đến một ứng dụngCGI Giả sử ta sẽ dùng form ở những nơi ta muốn lưu chi tiết về người dùngtrong cơ sở dữ liệu:
<HTML>
<HEAD>
</HEAD>
<BODY>
<H3>To subscript to our email list, you must enter your details here: </H3>
<FORM ACTION= “/cgi-bin/maillist.pl” METHOD= “GET” >
<P>Name: <INPUT TYPE= “Text” NAME= “name” ></P>
Trang 24<P>Address: <INPUT TYPE= “Text” NAME= “address” ></P>
<P>Phone: INPUT TYPE= “Text” NAME= ”phone” ></P>
<P>Email: INPUT TYPE= “Text” NAME= ”email” ></P>
<INPUT TYPE= “submit” >
<INPUT TYPE= “reset” >
ra từ cơ sở dữ liệu và dùng nó để tạo ra một trang Web mới, sau đó trang này sẽđược gửi về trình duyệt
Mặc dù CGI được sử dụng rộng rãi nhưng nó có một số khuyết điểm Mộttrong những khuyết điểm đó là giảm tính trực tiếp trong tương tác giữa Server vàtrình duyệt vì Server buộc phải gọi ứng dụng CGI Một khó khăn khác là các mã
mà CGI chuyển nhận rất khó xử lý nên ta thường phải chọn một ngôn ngữ cócông cụ soạn thảo và giao tiếp tốt Ngoài ra CGI cũng không phải là phươngpháp nhanh nhất để truy xuất cơ sở dữ liệu Vì vậy ta thường dùng ADO vớinhiều ưu điểm hơn để kết nối với cơ sở dữ liệu cho Web
Có một lý do nữa để ta chọn lựa ADO, đó là ta phải nhận thấy rằng khôngphải tất cả dữ liệu đều được lưu trong cơ sở dữ liệu Ví dụ: một văn bản Wordhay một từ điển tự nó không phải là cơ sở dữ liệu Ta gọi tất cả các nguồn dữliệu là data store Nếu sử dụng ODBC thì ta chỉ có thể truy xuất với cơ sở dữliệu, tuy nhiên OLEDB cho phép người dùng truy xuất mọi data store OLEDB
có thể thay thế ODBC, tuy nhiên nó lại tồn tại ở lớp trên ODBC và cho phép ta
sử dụng các ODBC Driver có sẵn Ở OLEDB, Provider là khái niệm tươngđương với ODBC Driver Provider được hiểu đơn giản là một cái gì đó cung cấp
24
Trang 25dữ liệu Provider không giống như Driver Do không có nhiều OLEDB Providernhư ODBC Driver nên nếu ta muốn truy cập thông tin từ cơ sở dữ liệu, gần nhưchắc chắn bạn phải dùng ODBC cùng với OLEDB Giản đồ dưới đây cho thấychúng ta làm việc như thế nào:
Dù rằng OLEDB dễ dàng hơn ODBC nhưng nó cũng không hoàn toàn dễhiểu và chỉ có một số ít ngôn ngữ lập trình có thể xử lý nó như C++ Tuy nhiên,
nó có một vỏ bọc không những dấu bớt những phức tạp bên trong đối với người
sử dụng mà còn cho phép các ngôn ngữ khác (như nhôn ngữ kịch bản) có thể xử
lý Data Store Đó chính là ActiveX Data Objects hay gọi tắt là ADO ADO làmột phần tử COM( Component Object Model) và do đó có thể được dùng trongbất kì ngôn ngữ nào tương thích với COM ADO không độc lập với hệ điều hànhnhưng độc lập với ngôn ngữ lập trình vì thế nó có thể được xử lý bằng các ngônngữ như C++, VB, Java, Java Script hay VbScript
ADO được thiết kế để cung cấp một phương pháp truy cập dữ liệu cho tất
cả mọi người Để thực hiện điều đó, nó đưa ra một mô hình đối tượng sau:
Program
ActiveX Data Objects (ADO)
OLEDB Provider
OLEDB Provider
OLEDB Provider
OLEDB Provider
OLEDB Provider
ODBC
ODBC Data Access ServerSQL Exchange Non RelationalData Store
Trang 26Trong đó:
Đối tượng Connection:
Đối tượng Connection dùng để tạo một kết nối đến Data Store Khi kết nối đã được thiết lập, ta có thể dùng nó bao nhiêu lần tuỳ ý Mặc dù ta cần một kết nối trước khi ta
có thể truy xuất dữ liệu trong cơ sở dữ liệu nhưng thật ra ta không phải sử dụng đối tượng Connection để tạo kết nối Cả hai đối tượng Command và Recordset đều có thể tạo kết nối một cách độc lập.
Đối tượng Command:
Đối tượng Command được dùng để thực hiện các lệnh trên cơ sở dữ liệu.Những lệnh này không phải là lệnh kịch bản của ASP mà là các câu lệnh SQL.Các lệnh này dùng để lấy thông tin từ cơ sở dữ liệu hay thêm, xoá, sửa các mẩutin, các bảng mới vào cơ sở dữ liệu
Đối tượng Recordset:
Đối tượng Recordset là đối tượng thường dùng nhất trong ADO, vì thế cónhiều đặc tính và phương thức nhất Nó được dùng để giữ thông tin về cácRecordset mà ta tạo ra
Trang 27Chứa thụng tin về cỏc trường cú trong cỏc bản ghi của Recordset.
Tập Errors:
Chứa cỏc lỗi gặp phải trong quỏ trỡnh truy cập cơ sở dữ liệu
2 2 Vấn đề tích hợp Web với CSDL.
Nh vậy, vấn đề quản lý tốt Web Server dẫn đến việc xây dựng một CSDL
l-u trữ thông tin
Khi xây dựng một ứng dụng CSDL, ngoại trừ CSDL đó chỉ phục vụ chomục đích cá nhân, còn không thì phải xem xét việc tạo khả năng để nhiều ngời cóthể truy xuất đến CSDL Muốn vậy, thì cần có một hệ thống gồm nhiều máy tính,tất cả đều đợc kết nối với nhau và nối với Server chứa CSDL Khi đó sẽ nảy sinhmột số vấn đề sau:
Với trờng hợp những ngời muốn truy xuất đến ở xa Server, việc thiếtlập riêng một hệ thống mạng trên diện rộng là không khả thi
Các máy tính truy xuất đến CSDL có thể thuộc nhiều họ máy, chạy trênnhiều hệ điều hành khác nhau Do đó, cần phải xây dựng các ứng dụng thích hợpvới các nền tảng đó, và các ứng dụng này sẽ đợc phân tích tại mỗi Client Saumột thời gian khai thác, khi đó nhu cầu sửa đổi các ứng dụng Client thì phải sửacác ứng dụng trên từng Client
Các chuyên gia cho rằng World Wide Web là một giải pháp cho vấn đềnày, vì các lí do sau:
Trang 28Web đặt tại Web Server Điều này sẽ giảm thời gian và chi phí phát triển ứngdụng, giảm chi phí bảo trì và cập nhật các ứng dụng đó.
có những tính năng về mạng Chúng đợc thiết kế để chuyển và nhận thông tinqua Internet hay mạng cục bộ Vậy tại sao không sử dụng Internet cho mục đíchtruy cập CSDL
Nếu xét ở khía cạnh quản lí tốt tài liệu của Web Server hay ở khía cạnhkhai thác tốt CSDL trên phạm vi rộng đều dẫn đến một nhu cầu là tích hợp Webvới CSDL
Tích hợp Web với CSDL bao gồm việc tạo khả năng truy cập và cập nhậtdữ liệu thông qua Web Để thực hiện việc tích hợp Web với CSDL thì cần phảixây dựng lại hệ thống trong đó có cơ chế chuyển thông tin giữa trang Web vàCSDL, cơ chế truy cập đến CSDL và những trang Web động trong môi trờngWeb và phải có những tính năng nh là một hệ thống ứng dụng CSDL trên Web
Trong trang Web thì việc giao tiếp với ngời sử dụng đợc thực hiện thôngqua các “HTML Form ” Các form này chứa các phần tử dùng để nhập liệu nh làtextbox, chechbox, option button Khi hoàn tất việc nhập liệu bằng cách bấm vàomột nút để chấp nhận submit, hành động này sẽ gởi nội dung của form đến WebServer
Do World Wide Web là hệ thống Web Client/Server nên hệ thống ứngdụng CSDL trên Web sẽ mang những đặc điểm của một hệ thống ứng dụngCSDL Client/Server Vì vậy, việc nghiên cứu, tiếp cận để xây dựng hệ thống ứngdụng Client/Server là rất cần thiết Hiện nay, đa số nhà phát triển phần mềm chorằng cách tiếp cận dựa trên thành phần là cách tiếp cận tốt để phát triển các ứngdụng Client/Server
2.2.2 Các giải pháp tích hợp Web và CSDL.
Phần này sẽ nghiên cứu sự phát triển của mô hình Client/Server ứng dụngcho việc tích hợp Web site với CSDL Chúng ta sẽ xem xét nó ở hai khía cạnh:thứ nhất, sự liên lạc giữa Client và Server ; thứ hai, phơng pháp truy xuất CSDL
Mô hình Client/Server, trên thực tế, đã giúp cho việc giải quyết những bàitoán phức tạp một cách trở nên dễ dàng bằng cách phân chia bài toán đó thànhnhiều bài toán con và giải quyết từng bài toán con một Nhng quan trọng hơn hết
28
Trang 29không phải là việc giải đợc những bài toán lớn mà là cách thức giải bài toán Môhình Client/Server đã giúp phát triển một phơng thức phát triển ứng dụng mới làviệc phân chia ứng dụng thành nhiều lớp thực hiện những chức năng chuyên biệt.Một ứng dụng thông thờng đợc chia thành ba lớp:
Giao diện (Presentation logic): lớp này là cầu nối giữa ngời dùng vớiứng dụng, cung cấp những chức năng của ứng dụng cho ngời dùng và nhậnnhững lệnh từ ngời dùng cho ứng dụng Lớp này đợc thiết kế sao cho càng thânthiện với ngời dùng càng tốt
Chức năng (tạm dịch từ Business logic): đây là phần lõi của một
ch-ơng trình, cung cấp tất cả những chức năng có thể có của chch-ơng trình cho lớpgiao diện bên trên
CSDL (Data Access logic): lớp này là CSDL của ứng dụng, cung cấpkhả năng truy xuất đến CSDL cho lớp chức năng nếu cần
Việc phân chia ứng dụng thành nhiều lớp còn giúp cho ứng dụng dễ dàngthay đổi, cập nhật và đáng tin cậy hơn
ứng dụng đầu tiên của mô hình Client/Server là ứng dụng chia sẻ file (docác tổ chức có nhu cầu chia sẻ thông tin giữa các bộ phận trong tổ chức đợc dễdàng và nhanh chóng hơn) Trong ứng dụng này, thông tin đợc chứa trong cácfile và đợc đặt tại một máy (Server) của một phòng ban Khi một phòng ban khác
có nhu cầu trao đổi thông tin với phòng ban này thì sẽ sử dụng một máy (Client)kết nối với máy Server và tải những file thông tin cần thiết về
2.2.2.1 Mô hình hai mức (2-tier) Client/Server.
Mô hình hai mức là một sự phát triển từ ứng dụng chia sẻ file ở trên Trongứng dụng chia sẻ file, ta thay thế file Server bằng một hệ thống quản trị CSDL(DBMS) Khi client cần thông tin từ CSDL, nó sẽ yêu cầu DBMS thông qua mạngmáy tính giữa các phòng ban; DBMS xử lý yêu cầu và sau đó trả về cho Clientnhững thông tin client yêu cầu
Ưu điểm của mô hình hai mức so với ứng dụng chia sẻ file là làm giảm bớt
đợc lu thông trên mạng ở ứng dụng chia sẻ file, đơn vị truyền nhận giữa Client
và Server là một file, do đó, khi client yêu cầu thông tin từ Server thì Server sẽ trảcho Client toàn bộ một file có chứa thông tin đó Trong khi ở mô hình hai mứcthì Server có thể trả cho Client đúng những gì mà Client yêu cầu với đơn vịtruyền nhận có thể tính bằng byte Ngoài ra, hiện nay các DBMS còn cung cấpnhiều khả năng khác nh hỗ trợ giao dịch, cho phép nhiều ngời dùng cùng thao táctrên CSDL cùng lúc mà vẫn đảm bảo đợc tính toàn vẹn của dữ liệu
Trang 301) Tính toán tập trung ở Client (fat Client-thin Server): ở loạinày, phía Client phải đảm nhận cả hai lớp là giao diện và chức năng còn Serverchỉ làm nhiệm vụ của lớp CSDL.
Ưu điểm của mô hình loại này là đơn giản, thích hợp cho các ứng dụngnhỏ và vừa Tuy nhiên, nó cũng có một số nhợc điểm sau:
- Do phần tính toán nghiêng về phía Client nhiều nên đòi hỏi Client phải
đợc trả về cho ngời dùng sau khi đợc tính toán Mặt khác, do phần lõi của chơng
30
Database ServerDBMSData access logic
-presentation logic-business logic-presentation logic-business logic
Trang 31trình đợc đặt tập trung tại Server nên việc cập nhật chơng trình sẽ dễ dàng hơn.Tuy nhiên, do công việc đợc tập trung quá nhiều tại Server nên đòi hỏi cấu hìnhServer phải đủ mạnh, đặc biệt là khi có nhiều Client cùng truy xuất tới Servercùng lúc.
Database ServerDBMS
Data access logicData access logic
Data access logicData access logic-presentation logic
Trang 322.2.2.2 Mô hình ba mức(3-tier) Client/Server
Trong mô hình 3 mức, lớp chức năng của chơng trình đợc tách ra thànhmột mức tạo thành một mức riêng biệt Việc tách lớp này làm cho các phần củachơng trình độc lập hơn, đáng tin cậy hơn, chơng trình trở nên linh động hơntrong việc thay thế, nâng cấp và do đó, mô hình này rất thích hợp với ứng dụng
có yêu cầu thay đổi thờng xuyên nh ứng dụng Web
Để thấy đợc tính linh hoạt của mô hình ba mức, ta lấy một ứng dụng cócấu trúc theo mô hình ba mức, có mức giữa chức năng là các thành phần COMgiao tiếp với mức giao diện thông qua các nhập xuất chuẩn (standard I/O) và vớimức CSDL bằng các câu lệnh SQL thông qua ODBC hoặc ADO Khi đó, mứcCSDL của ứng dụng có thể là bất cứ DBMS nào mà ODBC hoặc ADO hỗ trợ nhAccess, SQL Server, và ứng dụng có thể là một ứng dụng stand-alone chạy trênmột máy hoặc trở thành một ứng dụng Web chạy trên nhiều máy khác nhau bằngcách nhúng thành phần COM này vào phần giao diện là một cửa sổ ứng dụnghoặc một trang Web
Chơng 3: Công nghệ ASP3.1 Lựa chọn công nghệ cho đề tài
Xây dựng Web site khối PTCTT đồng nghĩa với việc xây dựng một WebServer trên máy chủ chứa dữ liệu, các trang Web và các chơng trình phục vụ choviệc quản lý các thông tin nh: thông tin về giáo viên, học sinh, Web Server nàyphải có khả năng tơng tác với Client, xử lý dữ liệu do Client gửi đến, trả về kếtquả động tuỳ thuộc vào nội dung dữ liệu mà Client yêu cầu, Tức là chúng ta
32
Database Server
DBMSData access logic
Application Server-business logic
-presentation logic
Trang 33phải xây dựng các trang Web động Nếu không xây dựng những trang Web độngthì ngời thiết kế phải thiết kế lại những trang Web đó mỗi khi có yêu cầu cậpnhật.
Việc xây dựng các trang Web động có thể sử dụng các công nghệ nh:CGI, Perl, ISAPI, ASP, JSP,Servlet
CGI ( Cômmon Gateway Interface)
CGI là một phơng thức giao tiếp giữa Web Server và chơng trình ứng dụng.Một chơng trình CGI thực chất là một chơng trình exe (trên Windows) hoặc mộtchơng trình thực thi (trên Unix) Nó có thể đợc xây dựng từ nhiều ngôn ngữ nh C,Pascal, Visual Basic,
Thuận lợi của ứng dụng CGI là tính phổ biến và dễ viết (vì các ngôn ngữ
nh C, Pascal, Visual Basic là rất thông dụng) CGI cũng tỏ ra rất hiệu quả trongcác ứng dụng truy xuất Web trên Internet Ngày nay CGI hiện vẫn còn đợc sửdụng rộng rãi trên các trình Web Server chạy trên máy chủ Unix và Linux Tuynhiên, nó có nhợc điểm là tiêu tốn tài nguyên và hạn chế về tốc độ thực thi Mỗikhi có yêu cầu gửi từ Client, Web Server phải triệu gọi CGI theo các bớc:
- Nạp chơng trình vào bộ nhớ
- Thực thi chơng trình
- Trả kết quả về cho Client
- Giải phóng CGI khỏi bộ nhớ
Việc lu vết trạng thái trong mỗi kết nối giữa Client và Server của ứng dụng.Web CGI cũng rất khó quản lý
Perl (Practical Extraction and Report Language):
Perl là một ngôn ngữ lập trình dùng cho CGI, do Larry Wall tạo ra, đợcdùng khá rộng rãi trên Unix và Linux Perl khác biệt với các ngôn ngữ khác là
có tính chất xử lý text rất mạnh do có nhiều toán cũng nh hàm để hỗ trợ riêngcho xử lý text Nó có thể xử lý dễ dàng những tác vụ giống nh C hoặc Unixshell thờng làm trong việc viết một Script nhng có thể ngắn gọn và đơn giảnhơn Không giống nh các trình biên dịch C hay C++, Perl là một trình thôngdịch Vì là một ngôn ngữ lập trình cho nên Perl cũng có đầy đủ các công cụ
hỗ trợ cho nó nh tất cả các ngôn ngữ lập trình khác nh: biến, dãy, danhsách,
Perl đã mở rộng các chức năng của trình CGI phục vụ cho Web Server Mở
đầu cho thời kỳ viết ứng dụng biên dịch kịch bản (scipting) phục vụ cho phíamáy chủ (Server side) nh ASP, JSP,
IASP , Servlet, ASP, JSP:
Nh ta đã biết, nhợc điểm chính của chơng trình CGI là vấn đề tốc độ Mỗilần thực thi chơng trình CGI, Web Server phải nạp và giải phóng chơng trình
Trang 34CGI ra khỏi bộ nhớ Công nghệ Web đã đa ra rất nhiều giải pháp khắc phụcyếu điểm này.
Windows cung cấp cho ta cách thức xây dựng các chơng trình CGI ở dạng
th viện liên kết động DLL ứng dụng CGI kiểu mới này còn gọi là các ứngdụng ISAPI Chơng trình ISAPI chỉ phải nạp một lần vào bộ nhớ khi lần đầutiên Web Server gọi nó Do không phải nạp nhiều lần nên tốc độ thực thi đợccải thiện đáng kể Hơn nữa, các chơng trình ISAPI phục vụ Web Server hiệuquả và ít tốn tài nguyên hơn các chơng trình ISAPI thông thờng
Để viết ISAPI ta có thể sử dụng bất kỳ công cụ nào trên Windows hỗ trợviệc biên dịch th viện liên kết động DLL nh Visual Basic, Delphi,
Về phía Java, câu trả lời tơng tự cho ISAPI của Windows đó là Servlet.Servlet là các chơng trình java chỉ cần nạp một lần vào máy ảo Chức năngcủa nó cũng tơng tự nh các chơng trình CGI hay ISAPI
Đối với ngôn ngữ kịch bản, Microsoft đa ra phơng án thiết kế các trangASP, đó là sự kết hợp giữa các thẻ định dạng HTML và ngôn ngữ Vbscipt.Còn java đa ra phơng án thiết kế các trang JSP là sự kết hợp giữa HTML vàngôn ngữ java ASP và JSP cần một bộ diễn dịch (ASP, JSP engine) để thôngdịch chúng
Xét về phơng diện “sức mạnh” thì Servlet, ISAPI, ASP hay JSP có thể coi
là ngang nhau Tuy nhiên, trong đề tài này em chọn ASP làm công cụ pháttriển bởi nó đợc hỗ trợ thiết kế mạnh mẽ của Visual InterDev và FrontPage.Sau đây, em xin giới thiệu về ASP và một kỹ thuật lập trình liên quan – lậptrình COM
3.2.1 Những khái niệm mở đầu về ASP.
3.2.1.1 ASP là gì?
ASP (Microsort đ Active Server Page) là một môi trờng Server-sidescripting cho phép ta tạo ra và chạy các ứng dụng Wed động, tơng tác với Clientmột cách hiệu quả ASP hoạt động dựa vào các script do ngời lập trình tạo sẵn
Môi trờng hoạt động của ASP:
- Microsoft Internet Internet Server 3.0 trở lên chạy trên WinNT Server trở lên
- Microsoft Personal Web Server chạy trên Window 9x
3.2.1.2 Cấu trúc của một trang ASP.
Trang ASP đơn giản là một trang văn bản với phần mở rộng là asp, gồm
có 3 thành phần:
- Văn bản (Text)
- HTML tag (HTML: Hypertext Markup Langue)
34
Trang 35- Các đoạn script ASP.
Khi thêm một đoạn script vào HTML, ASP dùng dấu phân cách để phân biệtgiữa đoạn HTML và đoạn ASP
3.2.1.3 Client side scripting.
Một Client side scripting đợc thêm vào trang html sử dụng cặp tag
<script></script> Để định nghĩa ngôn ngữ script, ta sử dụng thuộc tính languagechèn vào tag <script>
Ví dụ:
<script language=VBscript>
</script>
ASP dùng Client side scripting để có thể tơng tác với các đối tợng nguyên
tố (các tag, hình ảnh, văn bản .), với các đối tợng brower (window, frame,history ) và bất kỳ thành phần ActiveX nào bên trong máy chủ Microsoft
3.2.1.4 Server side scripting:
ASP dùng Server side scripting để tạo tự động tạo các trang Web trả về choClient, những nội dung đợc phát sinh dựa trên những định nghĩa của User nh cáctham số, các HTTP request và bất kỳ tơng tác nào với các đối tợng khác (đối tợngASP, các đối tợng business Client/Server đa lớp, middleware truy cập DBS và các
hệ thống kế thừa, các thành phần BackOffice ) ASP cung cấp các đối tợng cósẵn và các component có ích (Active Server components và DB Accesscomponent) Các đối tợng có sẵn đơn giản hoá những nhiệm vụ của Server side
nh việc xử lý các HTTP request và respone, phiên làm việc của User và môi trờngweb
Server side scripting cũng sử dụng cặp tag <script></script> hoặc <% %>.Khác với Client side script, Server side sử dụng thêm thuộc tính runat=”Server”
<script language=[scriptname] runat=”Server”>
<script>
Mặc định của Server side scripting là Vbscript
Trang 363.2.1.5 Active Server Components.
Nh đã biết, ta có thể tạo các trang Web động bằng cách sử dụng Serverside script, và nó hầu nh không giới hạn đối với những gì ta muốn thực hiện Tiếntrình này giống nh việc viết một chơng trình ứng dụng hơn là tạo một trangHTML Tuy nhiên, Vbscript hay javascript cũng có những mặt hạn chế chẳnghạn nh nó không thể truy cập trực tiếp vào file hoặc các chơng trình ứng dụngkhác Và do đó sẽ gặp khó khăn khi viết các ứng dụng thơng mại phức tạp
Cách hay nhất để khắc phục những hạn chế của ngôn ngữ Script là tíchhợp các thành phần phần mềm (software components) viết bằng ngôn ngữ bậccao với ASP sử dụng chuẩn COM Các thành phần phần mềm ứng dụng theocách này thờng đợc gọi là Active Server Components ASP cung cấp sẵn một sốActive Server Component là:
3.2.1.6 Cách hoạt động của ASP.
Browser gởi một request đến Web Server yêu cầu một trang ASP Khi WebServer nhận đợc Request, nó sẽ đọc toàn bộ tập tin ASP và thực hiện các scripttrong trang ASP tơng ứng với giá trị của các giá trị của các tham số nhận từRequest Sau khi thực hiện xong nó sẽ trả kết quả về cho Browser dới dạng fileHTML
36
Trang 373.2.2 Mô hình các đối tợng trong ASP
Nhằm đem lại sự tiện lợi và dễ dàng trong việc xây dựng một ứng dụng trênWeb, ASP đã xây dựng sẵn 6 đối tợng rất mạnh Các đối tợng này không quan hệvới nhau theo mô hình phân cấp, cha-con, chúng liên hệ với nhau dựa trên vai trò
và tính năng mà chúng cung cấp Các đối tợng này bao gồm Server, Application.Session, Request, Response và ObjectContext xây dựng nên môi trờng cho cácứng dụng Active Server
Server Object
ApplicationObject
ApplicationObject
SessionObject
Trang 38Trong mô hình trên, đối tợng Application đợc dùng để chia sẻ thông tingiữa các User trong cùng một ứng dụng Mỗi Application bao gồm nhiều phiênlàm việc của user khác nhau mà đại diện cho mỗi phiên làm việc là một đối tợngSession Chúng ta dùng đối tợng Session này để lu trữ những thông tin riêng chỉdành cho user đó mà thôi Các biến trong đối tợng Session vẫn tồn tại khi usernhảy qua lại giữa các trang web trong ứng dụng đó.
Ngoài ra ASP còn cung cấp đối tợng Request cho phép nắm bắt các thôngtin đợc yêu cầu từ user và cho phép các ứng dụng chạy trên Server xử lý chúng.Server sẽ nhận những giá trị đợc đa đến qua yêu cầu HTTP và đặt chúng trong
đối tợng Request này
Ngợc lại, để gửi dữ liệu lại cho trình duyệt trên máy Client ta có đối tợngResponse Các hàm và thuộc tính của nó cho phép ta tạo và sửa đổi thông tinphản hồi về cho Client
Đối tợng ObjectContext đợc xây dựng nhằm quản lý các giao dịch dựa trênlệnh gọi ASP script đến Microsoft Transaction Server (MTS)
Trang 39Tập hợp Mô tả KiểuClientCertificate
Trị của các biến trong chuỗi truy vấn HTTPGiá trị của HTTP và các biến môi trờng
ReadOnlyReadOnlyReadOnlyReadOnlyReadOnly
TotalBytes Đây là thuộc tính cho biết số byte trong thân
của yêu cầu từ Client
ReadOnly
BinaryRead Đây là hàm dùng để nhận những dữ liệu gửi đến Server
nh là một phần của yêu cầu POST
Có hai cách cơ bản để trình duyệt gửi những thông tin đặc biệt đến WebServer: đó là thông tin từ phần <Form> trong trang đợc đa vào HTTP header hay
đợc đa trực tiếp từ chuỗi truy vấn trong địa chỉ liên kết URL Đó chính là vai tròcủa hai tập hợp Form và QueryString trong đối tợng Request
QueryString Collection:
QueryString Collection chứa toàn bộ thông tin đợc gửi tới Server từ Form bằng phơng thức Get Các giá trị này chứa trong một chuỗi Query và đợc thêm vào sau dấu ? bằng các cặp name=value theo mẫu:
Name1=value1&name2=value2
Ta có thể thấy rõ chuỗi URL khi quan sát hộp Address của Browser Ví dụ cómột Form
<FORM NAME=”frmDetail”ACTION=”GetDetail.asp”METHOD=GET>
Name:<INPUT TYPE=TEXT NAME=”txtName”>
Age:< INPUT TYPE=TEXT NAME=”txtAddress”>
Trang 40Cú pháp chung: Request.QueryString(“tên thành phần”)[.item]
Lu ý, ta có thể đa trực tiếp thông tin vào QueryString mà không cần dùngForm
Form Collection:
Khi phơng thức gửi dữ liệu của <Form> là Post thì tập hợp QueryString sẽrỗng, và lúc này dữ liệu đợc gửi đi trong phần header của HTTP Nếu quan sáthộp Address của browser thì ta không thấy đợc tên và giá trị dữ liệu nh trờng hợpGet
Để nhận dữ liệu tại Server, ta dùng cú pháp:
Request.Form(“tên thành phần”)[.item]
Chẳng hạn, nh để lấy giá trị của dữ liệu có tên là txtName ở trên:
Name=Request.Form(“txtName”)
So sánh giữa hai tập hợp QueryString và Form:
ở mỗi cách dùng một phơng pháp riêng đợc khái quát theo mô hình sau:
Theo phơng pháp dùng QueryString có hạn chế đó là giới hạn chiều dàicủa chuỗi địa chỉ URL ( khoảng 1000 ký tự) đây chính là yêu cầu của giao thứcHTTP Do đó, sẽ rất phiền phức khi có yêu cầu gửi đi quá dài
Mặt khác, giá trị mà ta gửi đi đợc hiển thị rõ ràng trong ô địa chỉ URL trêntrình duyệt máy Client nên dễ dàng bị ngời khác đọc đợc
40
Server (ASP Application)
Data is sent inside HTTP header
Data is sent inside HTTP header
Data read using Form collection
Data read using Form collection