Tải bản đầy đủ (.doc) (83 trang)

MÔ HÌNH CLIENT/SERVER

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.05 MB, 83 trang )

Thiết kế WebSite đấu gi qua mạng Internet Trang 1
PHẦN I
CƠ SỞ LÝ THUYẾT
CHƯƠNG 1 TỔNG QUAN INTERNET & INTRANET
1.1. INTERNET LÀ GÌ ?
Là một mạng máy tính toàn cầu trong đó các máy truyền thông với nhau theo
một ngôn ngữ chung (TCP/IP) , không một ai làm chủ và điều khiển tất cả.
Là một liên mạng kết nối những mạng được điều hành và làm chủ một cách riêng
lẻ lại cùng nhau.
Mỗi máy trên Internet được gọi là một Host. Mỗi host có khả năng như nhau về
truyền thông tới máy khác trên Internet. Một số host được nối tới mạng bằng đường nối
Dial-up tạm thời, một số host khác được nối bằng đường nối mạng thật sự 100% (như
ethernet, token ring, ...)
Ở các host trên Internet có sự kết hợp các chương trình Server và các chương
trình Client, chúng cung cấp thông tin và những dịch vụ tới người sử dụng.
1.2. INTRANET LÀ GÌ ?
Intranet dựa vào TCP/IP Network nhưng không nối kết tới Internet mà chỉ sử
dụng chuẩn truyền thông Internet và các công cụ của nó dùng để cung cấp thông tin tới
người sử dụng trên một mạng riêng. Ví dụ một công ty có thể cài đặt một Web server
chỉ cho các thành viên của công ty trao đổi thư từ tin tức,thông tin thương mại...Các
thành viên truy xuất thông tin bằng cách dùng các Web browser.
1.3. MÔ HÌNH CLIENT/SERVER
Máy server ở trạng thái hoạt động và chờ yêu cầu của client. Khi client có yêu
cầu, máy server đáp ứng yêu cầu đó.
Chương trình Client: là chương trình trên một host có sử dụng các thông tin
hay dịch vụ từ những chương trình khác trên Internet. Như vậy có thể nói client chính là
những khách hàng. Ví dụ về một số chương trình client: web browser trình bày nội dung
được cung cấp bởi những web server. Các chương trình Internet mail client mà người sử
dụng dùng làm việc với các thông điệp mail được cung cấp bởi các Mail Server. FTP
client lấy các tập tin từ FTP server. Các Chat client cho phép hội đàm với người khác
qua Chat Server. Address Book cho phép tìm địa chỉ Internet Mail trong LDAP


server, ...
Thiết kế WebSite đấu gi qua mạng Internet Trang 2
Chương trình Server: là chương trình trên một Host cung cấp thông tin hay
dịch vụ được yêu cầu từ những chương trình client khác trên Internet. Server là những
nhà sản xuất, nhà phục vụ. Những chương trình Server tập trung hóa các quá trình và
các thông tin làm cho nó có thể được xử lý bởi các chương trình client.


Mô hình Client/Server rất có ích đối với tổ chức có đông người cần truy cập
nhanh lượng dữ liễu lớn. Mạng Client/Server là phương pháp hiệu quả nhất để cung
cấp :
 Khả năng quản lý và truy cập dữ liệu cho những chương trình ứng dụng như là:
• Bảng tính điện tử
• Kế toán
• Giao tiếp, truyền thông
• Quản lý tài liệu
 Quản lý mạng
 Lưu trữ tập tin tập trung
Quản lý cơ sở dữ liệu là ứng dụng phổ biến nhất trong môi trường Client/Server
vì thế sẽ tập trung trình bày càch thức vận hành của các hệ thống quản lý cơ sở dữ liệu
(DMBS).
 Mô hình thực hiện của công nghệ Client/Server :
 Mô hình Client/Server :
Máy Server
Máy Client
Một mô hình Client/Server đơn giản.
SERVERCLIENT
Request
Database
Web

browser
Response
Thiết kế WebSite đấu gi qua mạng Internet Trang 3
Hầu hết mạng máy tính đều hoạt động theo mô hình Client/Server. Nói một cách
đơn giản mạng Client/Server là mạng trong đó máy Client đưa ra yêu cầu, và một máy
tính đóng vai trò máy Server sẽ đáp ứng yêu cầu đó.
Qui trình hoạt động giữa Client/Server :
Câu hỏi cơ sở dữ liệu được gởi từ máy Client nhưng được xử lý trên máy Server, chỉ có
kết quả được trả về máy Client qua mạng. Toàn bộ tiến trình tiếp nhận và yêu cầu thông tin
gồm 6 bước :
1. Máy Client đưa ra yêu cầu cung cấp dữ liệu .
2. Yêu cầu được dịch sang SQL.
3. Yêu cầu SQL được gửi ngang qua mạng đến máy Server.
4. Máy Server cơ sở dữ liệu tiến hành tìm kiếm trên máy tính nơi dữ liệu tồn tại.
5. Dữ liệu tìm được theo yêu cầu được gởi trả lại máy Client.
6. Dữ liệu được cung cấp cho người dùng.
Trong môi trường Client/Server , có hai phần chính :
• Chương trình ứng dụng, thường gọi là Client.
• Bộ phục vụ cơ sở dữ liệu , thường được gọi là Server.
Thiết kế WebSite đấu gi qua mạng Internet Trang 4
 Máy Client :
Người dùng đưa ra yêu cầu tại Client. Máy Client chạy một chương trình ứng
dụng có chức năng :
• Cung cấp giao diện cho người dùng.
• Định dạng yêu cầu cung cấp dữ liệu .
• Hiển thị dữ liệu nó nhận lại từ máy Server.
Trong môi trường Client/Server, máy Server không chứa phần mềm giao diện
người dùng. Máy Client có nhiệm vụ trình bày dữ liệu theo hình thức hữu ích. Chẳng
hạn với giao diện người dùng và lập báo biểu.
Chương trình ứng dụng trên máy Server tiếp nhận những chỉ thị từ người dùng,

chuẩn bị chúng cho máy Server, rồi gởi một yêu cầu cung cấp thông tin cụ thể đến máy
Server. Máy Server xử lý yêu cầu, định vị thông tin tích hợp, rồi gởi thông tin tìm được
qua mạng đến máy Client. Máy Client sau đó sẽ “đẩy” thông tin ra giao diện để hiển thị
thông tin trước người dùng.
 Máy phục vụ :
Máy Server trong môi trường Client/Server chuyên dùng để lưu trữ và quản lý dữ
liệu. Đây là nơi xảy ra hầu hết hoạt động thực của cơ sở dữ liệu. Máy Server tiếp nhận
các yêu cầu có cấu trúc từ phía máy Client, xử lý chúng , rồi gởi trả thông tin được yêu
cầu và trở lại máy Client qua mạng.
1.4. PERSONAL WEB SERVER LÀ GÌ ?
Personal Web Server (PWS) là một Web server chạy trong môi trường Windows
9x trên máy PC. Personal Web Server truyền tải thông tin bằng cách dùng Hypertext
Transfer Protocol (HTTP), Personal Web Server cũng có thể dùng phương thức FTP. Nó
có thể chạy trên Windows Workstation.
Máy Server
Máy Client
Thiết kế WebSite đấu gi qua mạng Internet Trang 5
 Personal Web Server làm việc như thế nào ?
Web là một hệ thống yêu cầu (Request) và đáp ứng (Response). Web browser
yêu cầu thông tin bằng cách gửi một URL tới Web server, Web server đáp ứng lại bằng
cách trả lại một trang HTML cho Web browser.
HTML có thể là một trang Web tĩnh được lưu sẵn ở trên Web server hoặc có thể
là một trang Web động mà server tạo ra khi đáp ứng yêu cầu của người sử dụng hoặc là
một trang ở thư mục nào đó trên server.
 Web Browser URL Request
Mỗi trang Web trên Intranet hoặc Internet có một URL duy nhất. Web browser
yêu cầu một trang bằng cách gửi một URL tới một Web server. Web server sử dụng
thông tin trong URL để xác định và cho hiển thị trang Web theo yêu cầu của Browser.
Cú pháp URL là một chuỗi văn bản tuần tự gồm có : Protocol, Domain Name, và
đường dẫn (Path) tới thông tin yêu cầu. Protocol là chuẩn truyền thông dùng để truyền

tải thông tin như là : HTTP, FTP và Gopher. Domain Name chính là Domain Name
System (DNS) của máy tính chứa thông tin. Path là đường dẫn tới thông tin yêu cầu trên
máy tính.
Ví dụ:
Phương thức Tên Domain Đường dẫn (Path)
Http:// Www.microsoft.com /backoffice
Https://
(secure
HTTP)
Www.company.com /catalog/orders.htm
Gopher:// Gopher.college.edu /research/astronomy/index.htm
Ftp:// Orion.bureau.gov /stars/alpha quadrant/starlist.txt
Thiết kế WebSite đấu gi qua mạng Internet Trang 6
Một URL cũng có thể chứa thông tin mà Web server cần phải xử lý trước khi trả
lại một trang, dữ liệu trong URL được gắn thêm vào cuối đường dẫn. Web server gửi dữ
liệu này tới một chương trìng hay một Scirpt để xử lý và trả lại kết quả trong một trang
web.
Ví dụ:
Request Type URL
Static HTML page />ISAPI application />Internet Database Connector />Common Gateway Interface
(CGI) script
/> Web Server Response
Web server đáp ứng yêu cầu của Web browser bằng cách trả lại một trang
HTML. Trang trả lại có thể là trang HTML tĩnh, trang HTML động hoặc là trang trong
danh sách thư mục.
 Trang HTML tĩnh (Static Page)
Một trang HTML tĩnh là trang đã được chuẩn bị sẵn cho các yêu cầu nhất định và
được đặt sẵn trên Web server. Người sử dụng yêu cầu một trang HTML tĩnh bằng cách
gõ trực tiếp URL hoặc là Click vào Hyperlink của URL nào đó, URL được gửi tới
server. Server đáp ứng bằng cách trả lại trang HTML tĩnh.

 Trang động (Dynamic Page)
Các trang động được tạo ra trong quá trình đáp ứng cho yêu cầu của người sử
dụng. Một Web browser thu thập thông tin bằng cách thực hiện một trang có các
Thiết kế WebSite đấu gi qua mạng Internet Trang 7
Textbox, Menu, Checkbox... cho phép người sử dụng điền vào hoặc lựa chọn. Khi người
sử dụng click vào một nút (button) trên Form và khi submit dữ liệu từ Form được gửi tới
Web server. Server đưa dữ liệu này tới một Script hoặc một trình ứng dụng để xử lý.
Sau đó server gửi lại kết quả cho browser bằng một trang HTML.
 Ưu, nhược điểm của PWS
Cung cấp một môi trường phát triển tiện lợi và không đắt, không cần thêm phần
cứng mạnh. Một bản sao của Web Server có thể lưu trên ổ cứng cục bộ và mọi thao tác
sẽ thực hiện trên đó mà không ảnh hưởng đến trang Web thật trong thời gian thiết kế.
Việc lưu lại và xem site trên ổ đĩa cục bộ cho phép người lập trình kiểm tra quá trình
làm việc mà không phải lặp đi lặp lại việc truyền tập tin. Cuối giai đoạn phát triển, tất cả
các mã chương trình sẽ được truyền bằng FTP hay HTTP, công việc truyền tập tin một
lần này ít tốn kém về thời gian cũng như tài nguyên hơn các thao tác truyền tập tin nhiều
lần.
Tuy nhiên PWS không có độ tin cậy cao như mô hình NT Server/IIS,
Win2000/IIS WinXP/IIS.
1.5. INTERNET INFORMATION SERVER LÀ GÌ ?
IIS là Web Server chạy trên WinNT, Win 2000 và Win XP có thể quản lý các site
thương mại.
IIS hoạt động tương tự như PWS nhưng dưới quy mô lớn và có độ tin cậy hơn.
Thiết kế WebSite đấu gi qua mạng Internet Trang 8
CHƯƠNG 2 ACTIVE SERVER PAGES
2.1. GIỚI THIỆU ACTIVE SERVER PAGES
2.1.1. Active Server Pages là gì?
ASP là một ngôn ngữ kịch bản dùng để xây dựng các ứng dụng trên môi trường
internet. Như tên gọi của nó, ASP giúp người xây dựng ứng dụng web tạo ra các trang
web có nội dung linh hoạt.

Với các người dùng khác nhau khi truy cập vào những trang web này có thể sẽ
nhận được các kết quả khác nhau. Nhờ những đối tượng có sẵn (Built_in Object) và
khả năng hổ trợ các ngôn ngữ script như VBScript và Jscript, ASP giúp người xây dựng
ứng dụng dễ dàng và nhanh chóng tạo ra các trang web chất lượng. Những tính năng
trên giúp người phát triển ứng dụng nhanh chóng tiếp cận ngôn ngữ mới, điều này là
một ưu điểm không nhỏ của ASP.
Active Server Pages chạy trên các môi trường sau đây:
- Microsoft Internet Information Server version 3.0 trở lên trên Windows NT,
Win 2000 và WinXP.
- Microsoft Peer Web Sevices version 3.0 trên Windows NT Workstation.
- Microsoft Personal Web Server trên Windows 9x.
2.1.2. Hoạt động của một trang ASP
Khi một trang ASP được yêu cầu bởi web browser, web server sẽ duyệt tuần tự
trang ASP này và chỉ dịch các script ASP. Tùy theo người xây dựng trang web này quy
định mà kết quả do web server dịch sẽ trả về lần lượt cho trình duyệt của người dùng
hay là chỉ trả về khi dịch xong tất cả các script. Kết quả trả về này mặc định là một trang
theo cấu trúc của ngôn ngữ HTML.
2.1.3. Mô hình của Active Server Pages
Các Script của ASP chứa trong các text file có đuôi là .asp. Trong Script có chứa
các lệnh của một ngôn ngữ script nào đó.
Browser gửi một Request tới Server yêu cầu một file ASP. Khi Web Server nhận
được request của browser, nó sẽ đọc từ đầu đến cuối file ASP sau đó thực hiện các lệnh
script và trả lại kết quả cho browser dưới dạng file HTML.
Thao tác giữa client và server trong một ứng dụng web có thể được thể hiện khái
quát như sau:
Thiết kế WebSite đấu gi qua mạng Internet Trang 9
2.2. CÁCH VIẾT CÁC FILE ASP SCRIPT
Một file ASP có tên mở rộng .asp và là một file text như những file HTML khác.
Một file .asp có thể chứa bất cứ sự kết hợp nào sau đây:
 Text

 HTML tag
 Các lệnh script của một ngôn ngữ script nào đó chẳng hạn VBScript hay
JScript.
Một script là một chuỗi các lệnh script thực hiện một công việc nào đó, nó có thể là:
 Gán trị cho biến
 Yêu cầu Webserver gửi thông tin đến Browser gọi là Output expression (ví
dụ: <%=GCM (“tham số”)%>)
 Kết hợp các lệnh script thành các thủ tục hay hàm.
Việc thi hành một script là quá trình gửi chuỗi các lệnh tới Scripting Engine, tại
đây ASP sẽ thông dịch các lệnh này và thi hành nó. Script được viết bằng một ngôn ngữ
với các luật được đặc tả nào đó, nếu ta muốn sử dụng một scripting language nào thì
trên server phải chạy Scripting Engine cho ngôn ngữ đó. Ví dụ, VBScript là ngôn ngữ
script mặc định cho Active Server Pages, vì vậy scripting engine cho VBScript được cài
đặt thường trú trên server. ASP cũng cung cấp sẵn Scripting Engine cho JScript.
HTTP
Mô hình ứng dụng Web thể hiện qua công nghệ ASP
Trình duyệt
Web
CLIENT
ADO
ASP ODBC
OLEDB
DBMS
SQL
Server
DB Server
Web Server
Thiết kế WebSite đấu gi qua mạng Internet Trang 10
 Cú pháp của ASP
ASP chỉ cung cấp một môi trường để xử lý các script mà ta chèn vào trong các

file .asp chứ ASP không phải là một ngôn ngữ script. Tuy nhiên, ASP qui định việc chèn
các script phải tuân theo cú pháp nhất định của ASP như sau:
2.2.1. Delimiter (dấu ngăn cách)
Trong trang ASP ta sử dụng các dấu <% và %> để ngăn cách phần văn bản
HTML với phần script, bất cứ một phát biểu script nào cũng đều phải nằm giữa 2 dấu
ngăn cách <% và %> .
Ví dụ:
<%sport=“climbing”%> sẽ gán chuỗi “climbing” cho biến sport. Hoặc <
%=sport%> để xuất giá trị của biến sport ra Browser (biểu thức này được gọi là
Output Expression)
2.2.2. Statement (câu lệnh)
Một câu lệnh, trong VBScript hay trong ngôn ngữ Script khác là một cấu trúc
dùng để thực hiện một thao tác, phát biểu phải được khai báo hoặc định nghĩa trong
ngôn ngữ script mà ta sử dụng.
Ví dụ: Đoạn script sau dùng câu lệnh If … Then … Else của VBScript.
<% If (Time >=#12:00:00 AM#) then
greeting= “Good Morning”
Else
greeting= “Hello !”
End If %>
<FONT Color= “Green”>
<%=greeting%>
</FONT>
2.2.3. Kết hợp HTML trong các câu lệnh
Chúng ta có thể chèn HTML text giữa các phát biểu của script.
Ví dụ:
<FONT Color= “Green”>
<% If (Time >=#12:00:00 AM#) then%>
Good Morning!
Thiết kế WebSite đấu gi qua mạng Internet Trang 11

<% Else %>
Hello !
<%End If %>
</FONT>
2.2.4. Script tag và việc tạo thủ tục với ngôn ngữ Script
Các thủ tục phải được đặt bên trong tag <SCRIPT> và </SCRIPT>, và cho phép
ta sử dụng ngôn ngữ script khác với ngôn ngữ mặc định đã cài đặt trong môi trường
ASP (là VBScript).
Ví dụ:
<HTML>
<BODY>
<% Call MyFuction%>
</BODY>
</HTML>
<SCRIPT RUNAT=SERVER LANGUAGE=JSCRIPT>
function MyFunction()
{
Response.Write (“MyFunction Called”)
}
</SCRIPT>
Trong ví dụ trên hàm MyFunction được định nghĩa với ngôn ngữ JScript khác
với ngôn ngữ mặc định là VBScript.
2.2.5. Include file
Khi tạo một ứng dụng Web, bao gồm nhiều trang ASP, nếu như toàn bộ các trang
này đều cần sử dụng những thông tin chung như các hằng, hyperlink, … để tránh việc
định nghĩa lại các giá trị này ở mỗi trang ASP cho phép ta include file bằng cách sử
dụng dẫn hướng tiền xử lý sau:
<!-- #include virtual | file = “filename” --!>
Trong đó file được include phải có phần mở rộng là .inc, filename bao gồm cả
đường dẫn và tên file. Tham số virtual chỉ định đường dẫn bắt đầu bằng một Virtual

Thiết kế WebSite đấu gi qua mạng Internet Trang 12
Directory. Tham số file chỉ định đường dẫn bắt đầu với tên thư mục chứa filename cần
include.
2.3. CÁC BUILT-IN OBJECT CỦA ASP
ASP cung cấp sẵn 5 đối tượng (object) khi sử dụng không cần phải tạo ra các
instance cho chúng, mỗi đối tượng thực hiện một số chức năng riêng khác nhau. Các
đối tượng này được gọi là các Built-in-Object, bao gồm:
 Request: lấy thông tin từ một user
 Response: gửi thông tin tới một user
 Server: điều khiển môi trường hoạt động của ASP
 Session: lưu giữ thông tin về 1 session của user
 Application: chia sẻ thông tin giữa các user trong cùng một ứng dụng
Cú pháp của các đối tượng
 Cú pháp của các đối tượng không phụ thuộc vào scripting language mà người
lập trình sử dụng.
 Để truy xuất thông tin của một đối tượng ta dùng các phương thức (method) và
các thuộc tính (property).
Sử dụng các Method
Một method là một procedure hoạt động trên một đối tượng nào đó. Cú pháp
tổng quát của method là:
Object.Method [parameters]
parameter là các thông số của method
Sử dụng các Property
Một property là một tính chất được đặt tên của một đối tượng. Chúng định nghĩa
các tính chất của đối tượng như kích thước, màu, vị trí trên màn hình hay thể hiện các
trạng thái của đối tượng như được phép (enable) hay không được phép (disable). Cú
pháp tổng quát của property là:
Object.Property [parameters]
parameter là các thông số của Property
Parameter thường là các biến, dữ liệu, chuỗi ký tự, hoặc là một URL.

Thiết kế WebSite đấu gi qua mạng Internet Trang 13
2.3.1. Request object
Request Object lấy các giá trị mà client browser gởi lên server thông qua một
HTTP request. Đây là cách mà các ứng dụng ASP lấy được thông tin gửi tới từ user, ví
dụ: khi user Submit thông tin từ một FORM.
Request Object cho phép truy xuất tới bất kỳ thông tin nào do user gởi tới bằng
giao thức HTTP như:
1. Các thông tin chuẩn nằm trong các biến Server (variable server)
2. Các tham số được gửi tới bằng phương thức POST
3. Các thông tin được gửi tới bằng phương thức GET
4. Các cookies (là các thông tin của user được gửi kèm theo) tới từ Browser.
5. Các Client Certificates
Request Object có 5 collection sau:
 QueryString Nhận giá trị của các biến trong HTML querystring, đó là
giá trị được gởi lên theo sau dấu chấm hỏi (?) trong
HTML request.
 Form Nhận các giá trị của các phần tử trên FORM sử dụng
POST method.
 Cookies Cho phép nhận những giá trị của cookies trong một
HTML request
 ServerVariable Nhận các giá trị của các biến môi trường.
 ClientCertificate Nhận certificate fields từ request của Web browser.
Cú pháp tổng quát khi sử dụng Request object là:
Request.CollectionName(variable)
Variable là tên biến trong Collection muốn truy xuất thông tin. Cũng có thể sử
dụng cú pháp:
Request(variable)
Khi đó thứ tự tìm kiếm sẽ tuân theo danh sách các collection trên và khi gặp biến
đầu tiên trùng tên thì trả về giá trị của biến đó. Vì thế nếu có nhiều hơn một biến với
cùng một tên trong các collection khác nhau thì nên sử dụng dạng cú pháp tổng quát.

Sau đây là một số ứng dụng của đối tượng Request:
Lấy thông tin từ FORM
Thiết kế WebSite đấu gi qua mạng Internet Trang 14
HTML Form là cách thức thông thường để trao đổi thông tin giữa Web Server và
user. HTML Form cung cấp nhiều cách nhập thông tin của user như: text box, radio button,
check box, submit, reset, password, … và hai phương thức gửi thông tin là POST hoặc GET.
Ứng dụng ASP có thể sử dụng Form để tạo ra sự liên lạc dữ liệu giữa các trang
theo một trong ba cách:
 File .htm chứa các form và gửi (submit) giá trị của nó tới một file .asp
 File .asp có thể tạo Form và gửi giá trị tới một file .asp khác.
 File .asp có thể tạo Form và gửi thông tin tới ngay chính nó.
Khi lấy thông tin từ Form, đối tượng Request có thể lấy các loại thông tin khác
nhau, bằng cách:
Sử dụng QueryString
QueryString collection chứa toàn bộ thông tin được gửi tới từ Form bằng phương
thức GET. Các giá trị gởi từ Form chứa trong một chuỗi query (query string) và được
add vào URL (bắt đầu từ dấu chấm hỏi (?) trở về sau là phần query string được thêm
vào). Điều này có thể thấy rõ khi quan sát hộp Address của Browser.
Ví dụ:
<FORM NAME= “frmDetails” ACTION=“GetDetails.asp”
METHOD=GET>
Name: <INPUT TYPE=TEXT NAME=“txtName”>
Age: <INPUT TYPE=TEXT NAME=“txtAddress”>
<INPUT TYPE=SUBMIT>
</FORM>
Khi user nhập giá trị Minh và 30 vào hai hộp Name và Age sau đó nhấn Submit
thì hộp Address của browser sẽ có dạng như sau:
http://company/asptest/GetDetails.asp?
txtName=Minh&txtAge=30
Hạn chế của phương thức GET : Chiều dài tối đa của URL là 1000 ký tự, như

vậy nếu gởi một loạt thông tin từ form, thông tin sẽ bị cắt bớt.
Sử dụng Form collection
Thay vì add thông tin gửi đi từ Form vào URL như một querystring, một phương
thức khác là POST, đặt thông tin gửi đi vào bên trong HTTP header.
Ví dụ:
Thiết kế WebSite đấu gi qua mạng Internet Trang 15
<FORM NAME= “frmDetails” ACTION=“GetDetails.asp”
METHOD=POST>
Name: <INPUT TYPE=TEXT NAME=“txtName”>
Age: <INPUT TYPE=TEXT NAME=“txtAddress”>
<INPUT TYPE=SUBMIT>
</FORM>
Khi user nhập giá trị vào 2 hộp Name và Age sau đó nhấn Submit thì hộp
Address của browser sẽ trông có dạng như sau:
http://company/asptest/GetDetails.asp
Tại thời điểm này, các giá trị gửi từ Form không thể truy xuất bằng QueryString
collection. Thay vào đó, Active Server Pages hiện thực một Form collection chứa toàn
bộ thông tin gửi từ Form sử dụng phương thức POST.
Gửi thông tin trong cùng một file .asp
ASP cho phép một file .asp có chứa Form, khi user điền các giá trị vào Form rồi
gửi (Submit) thì chính file .asp đó sẽ nhận các thông tin này và xử lý.
Ví dụ: file examp.asp có nội dung như sau:
<HTML>
<BODY>
<%
If IsEmpty(Request(“Email”)) Then
Msg= “Please enter your email address”
Else If InStr(Request(“Email”), “@”)=0 Then
Msg= “Please enter an email address in the form servername@location”
Else

Msg= “This script could process the valid email address now”
End If
%>
<FORM METHOD=POST ACTION=“examp.asp”>
<PRE>
Email: <INPUT TYPE=TEXT NAME=”Email” SIZE=30
VALUE = “<%=Request(“Email”)%”>
Thiết kế WebSite đấu gi qua mạng Internet Trang 16
<%=Msg%><P>
<INPUT TYPE=SUBMIT VALUE=”Submit”>
</PRE>
</FORM>
</BODY>
</HTML>
Khi user điền vào Form địa chỉ Email và Submit thì file examp.asp này sẽ nhận
thông tin bằng phát biểu:
VALUE = <%=Request(“Email”)%>
đoạn script sẽ tuỳ thuộc giá trị chuỗi ký tự nhận được có ký tự @ hay không để trả lời
với user cũng chính bằng văn bản HTML nhúng trong examp.asp.
Gửi thông tin giữa các file .asp
Ví dụ:
Form được để trong examp1.asp, các thông tin mà user sẽ submit lên server khi
user đang ở trang examp1.asp sẽ được file examp2.asp nhận và xử lý. Để làm được điều
này, trong trang examp1.asp có đoạn code HTML sau:
<FORM name=”form1” Action=”examp.asp” method=POST>
Name: <Input type=TEXT Name=”txtName”>
</FORM>
và đoạn code sau trong trang examp2.asp dùng để nhận các thông tin sẽ submit từ
form1.
<%

name=“” +Request(“txtname”)
%>
Khi đó giá trị mà user đã gõ vào Form1 sẽ được lấy và lưu vào biến Name ở
examp2.asp.
2.3.2. Response object
Việc gửi thông tin tới cho user được thực hiện nhờ đối tượng Response qua việc
gọi các phương thức sau:
1. Response.Write : Gửi thông tin trực tiếp tới user
Thiết kế WebSite đấu gi qua mạng Internet Trang 17
2. Response.Redirect : Gửi thông tin trực tiếp tới user ở một URL khác với URL đã
yêu cầu.
3. Response.ContentType: Thay đổi kiểu của nội dung cần gửi.
4. Response.Cookies : Thiết lập các giá trị cookies.
5. Response.Buffer : Đệm thông tin xuất.
Gửi văn bản tới user :
Response.Write[variant]
trong đó variant là dữ liệu bất kỳ mà ngôn ngữ script đang sử dụng chấp nhận.
Chuyển hướng kết nối đến URL khác :
Response.Redirect URL
Thiết lập HTTP ContentType :
Response.ContentType=ContentType
Ví dụ:
<% Response.ContentType=”text/plain” %>
Browser sẽ hiển thị trang nhận được như một văn bản bình thường chứ không
phải như một văn bản HTML.
Sử dụng Cookies Collection
Một cookies được coi như một dấu hiệu đi kèm theo user trong quá trình trao đổi
thông tin giữa Web client và Web server. Các script của ASP có thể dùng Response để
lấy hoặc thiết lập giá trị của cookies bằng cách sử dụng cookies colletion theo cú pháp:
Response.Cookies(cookie)[(key)][.attribute]

trong đó cookie là tên của cookie. key là thông số tùy chọn. Nếu key được đặc tả thì
cookie là từ điển và key sẽ được thiết lập giá trị, .attribute là các thuộc tính của cookie
đó.
Bufferring Response
Thuộc tính Buffer chỉ định rằng trang xuất (page out) có được đệm lại hay
không. Khi một trang bị đệm lại thì server sẽ không gửi đáp ứng nào tới client cho đến
khi tất cả các server script trong trang hiện hành đã được xử lý, hoặc là cho đến khi
phương thức Flush hoặc End được gọi.
Thuộc tính Buffer mặc định cho tất cả trang ASP là True trong ASP 3.0, trong khi ở các
phiên bản trước mặc định là False. Để thiết lập trị Buffer gọi:
Thiết kế WebSite đấu gi qua mạng Internet Trang 18
<% Response.Buffer=True %>
2.3.3. Session object
Đối tượng Session dùng để lưu trữ các thông tin của một user-session. Các giá trị
lưu trữ trong session sẽ không bị loại bỏ đi khi user chuyển từ trang này sang trang khác
trong một ứng dụng và có thể nhìn thấy được bởi tất cả các trang ASP trong ứng dụng,
chúng chỉ bị loại bỏ khi user session-end. Web server tự động tạo ra Session object khi
một trang web trong ứng dụng được yêu cầu bởi một user mà user này chưa có một
session. Server sẽ tự động hủy bỏ user-session khi nó hết hạn hoặc bị bỏ (abandon).
Cú pháp:
Session.Properties | Method
Properties
 SessionID trả về số định danh session cho user. Mỗi session sẽ được server
cho một số định danh duy nhất khi nó được tạo ra.
 Timeout chỉ thời gian sống của session object, nếu user không refresh hay
request một trang trong khoảng thời gian qui định, session sẽ kết thúc.
Method
Abandon hủy bỏ một session.
Events
Session_OnStart xảy ra khi user request lần đầu tiên 1 trang của ứng dụng

Session_OnEnd xảy ra khi session end, hoặc khi không có request nào trong
khoảng timeout (mặc nhiên là 20 phút)
Các thông tin lưu giữ trong Session được giữ nguyên trong suốt thời gian session
tồn tại và có giá trị trong cả tầm vực của session.
Ví dụ:
<%Session(“username”)=”John” Session(“age”)=35%>
2.3.4. Application object
Application dùng để chia xẻ thông tin giữa các user của một ứng dụng nào đó.
Một ứng dụng ASP được định nghĩa là tất cả các file .asp trong một thư mục ảo và các
thư mục con của nó. Bởi vì Application object có thể được chia xẻ bởi nhiều user, nên
hai phương thức Lock và Unlock bảo đảm nhiều user không thể thay đổi một property
đồng thời.
Methods:
Thiết kế WebSite đấu gi qua mạng Internet Trang 19
Lock: Ngăn chặn các user khác bổ sung property của Application object. Method
này sẽ khóa các client khác không cho thay đổi các biến được lưu trữ trong application
object, đảm bảo tại một thời điểm chỉ có một user được phép thay đổi và truy xuất các
biến của object này.
Unlock: Cho phép các user khác bổ sung các biến của Application object.
Events:
Application_OnStart Event-procedure được thi hành trước khi một
session mới được tạo ra.
Application_OnEnd Event-procedure được thi hành khi thoát khỏi
application, ngay sau Session_OnEnd event.
2.3.5. Server object
Property
ScriptTimeOut khoảng thời gian chạy của một script
Methods
CreateObject tạo một instance cho một server component
Cú pháp: Server.CreateObject(ProgID), trong

đó ProgID là tên của đối tượng cần tạo.
HTMLEncode áp dụng sự mã hóa HTML lên một string được chỉ
định
MapthPath ánh xạ một đường dẫn tương đối hoặc virtual tới một
thư mục vật lý trên server.
URLEncode mã hóa một string thành dạng URL
2.4. SỬ DỤNG CÁC COMPONENT CỦA ASP
Ngoài các Built-in object, ASP còn cung cấp sẵn một số ActiveX Server
component, được thiết kế để chạy trên các Web server như là một phần của các ứng
dụng Web. Mỗi một server component là một thư viện các Class (hay Object) được
thiết kế ở dạng Automation Server, thực hiện một nhóm công việc chung nhất cho một
thao tác nào, ví dụ như việc truy xuất cơ sở dữ liệu, truy xuất file… nhờ đó ta không
phải tạo lại các chức năng này nữa. Tuy nhiên, ASP vẫn cho phép người lập trình có thể
tạo riêng server component của mình và add vào ứng dụng Web.
Các component được cài sẵn trong Active Server Pages gồm:
Thiết kế WebSite đấu gi qua mạng Internet Trang 20
 Adrotator
 Browser Capabilities
 Database Access
 Content Linking
 File Access
 Tạo các instance của các component
Dùng phương thức CreateObject của đối tượng Sever, cú pháp như sau:
Server.CreateObject(“ComponentName”)
Ví dụ: Tạo một đối tượng connection là Conn từ ADO component
<% Set Conn=Server.CreateObject(“ADODB.Connection”)%>
Trong phạm vi của Đồ án tốt nghiệp là tìm hiểu các công cụ của ASP hỗ trợ cho
việc phát triển ứng dụng Web database, nên phần tiếp theo đồ án sẽ trình bày ADO
component với các method và property của nó là điểm mạnh nhất của ASP trong việc
truy xuất cơ sở dữ liệu.

 Database Access Component
Database Access component còn gọi là thư viện ADO (ActiveX Data Object),
các object của ADO cung cấp cơ chế tạo kết nối (connection) với hầu hết các kiểu
database, cũng như việc truy xuất, cập nhật các database này.
 ADO Interface
Các đối tượng trong ADO giao tiếp với database thông qua ODBC (Open
Database Connectivity), chúng có thể được sử dụng với bất kỳ loại database nào nếu
như có ODBC driver hỗ trợ. ASP cài đặt sẵn hầu hết các driver thông dụng như: Foxpro,
Access, SQL server, Oracle.
Với Data Provider đại diện cho các phần mềm driver, nó cho phép ta giao tiếp
với các loại dữ liệu khác nhau.
Active Server Pages
ActiveX Database
Component
ActiveX Data
Objects
ODBC
Driver
Data Provider
Interface
Data Source
Thiết kế WebSite đấu gi qua mạng Internet Trang 21
 Các Object trong ADO
Gồm: Connection, RecordSet và Command. Sử dụng Connection ta có thể thiết
lập sự liên kết với cơ sở dữ liệu, thông qua đó ta có thể lấy ra các record hoặc cập nhật
một record bằng cách sử dụng Command object. Kết quả thực hiện các query trên
database sẽ được lưu vào đối tượng RecordSet, trên đối tượng này ta có thể duyệt và lấy
ra một hay nhiều record.
2.4.1. Connection object
Trước tiên ta phải tạo instance cho đối tượng connection bằng phát biểu sau:

<%
Set Connection_Name=Server.CreateObject(“ADODB.Connection”)
%>
Khi cần có một liên kết cố định cho tất cả các trang ta có thể thiết lập cho đối
tượng connection ở mức Application như sau:
<%
Sub Application_OnStart()
Set Connection_Name=Server.CreateObject(“ADODB.Connection”)
End Sub
%>
Hoặc thiết lập cho đối tượng connection ở mức Session:
<%
Sub Session_OnStart()
Set Connection_Name=Server.CreateObject(“ADODB.Connection”)
End Sub
%>
 Các phương thức của đối tượng connection
1. Open method : được sử dụng để mở một liên kết với Database. Ngay sau khi
tạo instance cho Connection object, ta có thể mở một kết nối tới Data Source để truy
xuất dữ liệu, cú pháp như sau:
Connection.Open ConnectionString [User] [Password]
Thiết kế WebSite đấu gi qua mạng Internet Trang 22
trong đó ConnectionString là chuỗi định nghĩa tên của Data Source (DSN), tên này do
ODBC tạo ra. [User] và[Password] là tên User và Password được database cho phép
mở.
2. Execute method: cho phép thực thi một câu lệnh tác động lên Data Source.
Connection.Execute(CommandText,RecordsAffected,Options)
Trong đó CommandText là chuỗi lệnh cần thực hiện, thông số option các các giá trị
khác nhau qui định loại CommandText
Giá trị Danh hiệu hằng tương ứng Loại của CommandText

0 adCmdUnknown Mặc định khi định nghĩa
1 adCmdText Là một câu lệnh ví dụ như
SQL
2 adCmdTable Tên của table mà ta sẽ tạo
một Recordset từ đó
4 adCmdStoreProc Một Stored procedure
trong Data source
Thông thường các giá trị trên được gán sẵn vào các danh hiệu hằng và được đặt
trong file include có tên adovbs.inc.
3. Close method: đóng các kết nối đã mở.
Connection.Close
2.4.2 . Command object
Thay vì dùng phương thức Execute của Connection để query hay update data
source, ta có thể sử dụng đối tượng Command
Methods
CreateParameter: dùng để tạo một đối tượng Parameter
Execute dùng để thực thi câu lệnh được đặc tả trong thuộc tính
CommandText.
Properties
Thiết kế WebSite đấu gi qua mạng Internet Trang 23
ActiveConnection Chỉ định đối tượng connection nào được sử dụng trong đối
tượng Command
CommandText Chỉ định câu lệnh cần thực hiện trên cơ sở dữ liệu
CommandTimeout Xác định thời gian thực thi lệnh, giá trị thời gian này tính
theo second.
CommandType Cho biết kiểu của query đặc tả trong CommandText
Prepared Tạo ra lệnh chuẩn bị trước khi thực thi.
2.4.3. Recordset object
Là kết quả trả về khi thực thi một query, thực chất nó là một bảng trong bộ nhớ,
ta có thể truy xuất các record của nó qua các phương thức và thuộc tính.

Methods
Open Mở recordset mới
AddNew Tạo một record trong Recordset
Update Cập nhật các thay đổi vào record hiện hành
Delete Xóa record hiện hành
Move Dịch chuyển con trỏ record hiện hành
MoveFirst Đến record đầu tiên
MoveNext Đến record kế tiếp
MovePrevious Trở về record trước đó
MoveLast Đến record cuối cùng
Requery Thực hiện lại query tạo ra recordset
GetRow Chứa các record vào một array
Close Đóng lại đối tượng Recordset
Properties
AbsolutePosition Số thứ tự vị trí (vật lý) của record hiện tại
BOF Là True nếu con trỏ nằm trước record đầu tiên
EOF Là True nếu con trỏ nằm ở sau record cuối cùng
CursorType Kiểu của con trỏ được sử dụng trong recordset
RecordCount Trả về tổng số record trong recordset
Thiết kế WebSite đấu gi qua mạng Internet Trang 24
Tạo Recordset
Trước tiên ta tạo instance cho recordset bằng phát biểu:
Recordset_name= Server.CreateObject(“ADODB.Recordset”)
Sau đó dùng phương thức Execute của đối tượng Connection hay Command để
tạo ra recordset
Recordset_name=ConnectionObject.Execute(CommandText, Recordaffected, Options)
hoặc
Recordset_name=CommandObject.Execute(CommandText,Recordaffected, Options)
Ta cũng có thể dùng phương thức Open của Recordset:
Recordset_name.Open(Source,ActiveConnection,CursorType, LockType, Options)

Trong đó:
- Source là một CommandObject hay một lệnh SQL hoặc là Stored Procedure.
- ActiveConnection là tên của Connection đã được mở kết nối với database.
- CursorType là kiểu con trỏ sử dụng với recordset, thông số này có kiểu số và
được gán trị qua các tên hằng tương ứng như sau:
 adOpenForwardOnly = 0 là giá trị mặc định, chỉ cho phép duyệt các record theo
một chiều từ trên đầu đến cuối, không cho phép cập nhật hay xóa bỏ các record trong
đó.
 adOpenKeyset = 1 Chế độ này cho phép cập nhật các record, nhưng cấm truy xuất
đến record của user khác thêm vào recordset.
 adOpenDymamic = 2 Chế độ này cho phép tất cả thao tác trên như: thêm vào, loại
bỏ, cập nhật và duyệt theo tất cả chiều lên xuống tùy ý.
 adOpenStatic = 3 Gần giống như chế độ OpenForwardOnly.
LockType là kiểu Locking sử dụng khi mở Recordset.
 adLockreadOnly = 1 không thể thay đổi dữ liệu khi mở với khóa này
 adLockpessimistic = 2 cho phép thay đổi dữ liệu trên Recordset, sự thay đổi này sẽ
có tác dụng ngay lập tức trên data source
 adLockOptimistic = 3 locking record hiện hành chỉ khi ta gọi phương thức
Update.
 adLockBatchOptimistic = 4 thực hiện việc cập nhật theo lô (batch update)
Thiết kế WebSite đấu gi qua mạng Internet Trang 25
Làm việc với Recordset thông qua Fields Collection
Ta có thể truy xuất tới các Fields của từng record trong Recordset bằng cách sử
dụng collection Fields với các thuộc tính Count, Item
- Recordset_name.Fields.Item(“tênfields”) trả về nội dung của field đó trong
record hiện hành.
- Recordset_name.Fields.Item(Index) trả về nội dung của Field thứ index trong
record hiện hành.
- Recordset_name.Fields(“Index”) trả về tên của field thứ index trong record hiện
tại.

Chú ý: Chỉ số của các field trong record được đánh số từ 0 cho tới giá trị
Recordset_name.Fields.Count –1
2.5.ƯU ĐIỂM VÀ NHƯỢC ĐIỂM CỦA ASP
Ưu điểm :
 ASP bổ sung cho các công nghệ đã có từ trước như CGI (Common Gateway
Interface), Giúp người dùng xây dụng các ứng dụng web với những tính năng sinh
động. Tuy nhiên, khác với CGI, các trang ASP không cần phải hợp dịch.
 Dễ dàng tương thích với các công nghệ của MicroSoft. ASP sử dụng ActiveX Data
Object (ADO) để thao tác với cơ sở dữ liệu hết sức tiện lợi.
 Với những gì ASP cung cấp, các nhà phát triển ứng dụng web dễ dàng tiếp cận công
nghệ này và nhanh chóng tạo ra các sản phẩm có giá trị. Điều này hết sức có ý nghĩa
trong điều kiện phát triển như vũ bảo của tin học ngày nay. Nó góp phần tạo nên một
đội ngũ lập trình web lớn mạnh.
 ASP có tính năng mở. Nó cho phép các nhà lập trình xây dựng các component và
đăng ký sử dụng dễ dàng. Hay nói cách khác ASP có tính năng COM(Component
Object Model)
Khuyết điểm :
 ASP chỉ chạy và tương thích trên môi trường Window điều này làm ASP bị hạn chế
rất nhiều.
 Dùng ASP chúng ta sẽ gặp không ít khó khăn trong việc can thiệp sâu vào hệ thống
như các ứng dụng CGI.
 ASP không được sự hổ trợ nhiều từ các hãng thứ ba.

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×