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

Website quản lý album âm nhạc

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 (793.33 KB, 60 trang )

Website quản lý Album âm nhạc

GVHD:PGS-TS:
Nguyễn Văn Xuất

lời nói đầu
Ngày nay máy tính đang đóng góp hết sức quan trọng trong cuộc sống
của con ngời. Nó không đơn thuần chỉ là một cái máy tính, tính toán những
phép tính, thực thi những nhiệm vụ cứng nhắc theo một tác vụ nào đó... Mà
nó đà trở thành một công cụ để con ngời có thể vừa làm việc vừa giải trí. Một
trong những công cụ mà có thể khiến con ngời vừa làm việc vừa giải trí đó là
việc phát triển xây dựng các Website, internet và trang web không còn là
khái niêm xa lạ nữa, mọi lứa tuổi đều biết internet, nó con là công cụ không
thể thiếu đợc đối với mọi ngời và một số ngành nghề...
Trang web khác với hồ sơ khác theo cách thức chúng đợc thiết kế để
có thể hiểu đợc bởi trình duyệt. Microsoft Internet Explorer(IE) và Netscape
Navigator hiểu đợc các phần tử văn bản, đồ hoạ thậm trí các phần tử tơng tác,
nh các From nhập, âm thanh, video và cho phép mọi ngời có thể truy cập
chúng từ website. Internet đà dần đợc biết đến với tên gọi World, Wide, Web
và vị trí của mạng đợc gọi là Website. Có thể nói trang web là một công cụ
không thể thiếu đợc trong các lĩnh vực nh: Âm nhạc, du lịch, văn hoá... Ngày
nay âm nhạc là một nhu cầu không thể thiếu trong ®êi sèng cđa mäi ngêi.
ChÝnh v× vËy trang web ca nhạc nay giúp cho mọi ngời giải trí sau những
phút làm việc mệt mỏi và thêm yêu âm nhạc hơn.
Do con nhiều vấn đề nhiều yếu tố và các nguyên nhân khách quan
cũng nh chủ quan mà bài tập tốt nghiệp còn hạn chế và thiếu sót. Tuy nhiên
em đà thực sự cố gắng hết mình thực hiện tốt những vấn đề trong bài phân
tích, thiết kế và xây dựng trang web nên phần nào cũng có thể nói là đà hoàn
thành đợc mục tiêu mà khoá luận đà đặt ra.

CHơNG I :


CáC KHáI NIệM Cơ BảN Và NGôN NGữ HTML
1. CáC KHáI NIệM Cơ BảN :

Sinh viên thực hiện : Nguyễn Đăng Thành

1


Website quản lý Album âm nhạc

GVHD:PGS-TS:
Nguyễn Văn Xuất

URL: (Uniform Resource Locators) là một thuật ngữ để chỉ ra vị trí tài
nguyên (resource) trên Internet.Các kết nối từ một tài liệu HTML đến một
file hoặc một service khác phải đợc viết theo d¹ng sau:
scheme://server [:port]/path/ dataname[#anchor].
+ Scheme: ChØ ra lo¹i protocol mà tài nguyên sử dụng ( hay nói cách khác
là kiểu dữ liệu mà URL chỉ tới).
+ Server: Chỉ ra server mà trên đó chứa dữ liệu user cần.
+ Port: Là điểm truy cập dịch vụ ở lớp transport chỉ ra nếu server không
sử dụng port mặc nhiên.(vd port mac nhiên của Gopher Server là 70 )
+ Path/dataname: Đờng dẫn tơng đối hoặc tuyệt đối đến file trên
server.Đợc quy bởi quy ớc đặt tên chung ( Uniform Naming Convention )
+ #anchor: Chỉ ra vị trí trong một trang tài liệu HTML.
+ Đây là minh họa cho các khái niệm trên:
SCHEME
File
http
Gopher

*****

DATA TYPE
Data files
HTML Files
Gopher server
***********

SAMPLE URL

gorher://ttdt01/localweb
****************

- Ngoµi ra qua URLs, WWW còn cho phép sử dụng các services khác nh :
ftp, finger, usenet, telnet, E-mail, wais....
2. NGôN NGữ HTML :

2.1. Khái niệm:
HTML( HyperText Markup Language) là ngôn ngữ định dạng văn bản
siêu liên kết. Sự định dạng dựa trên các tag hoặc các đoạn mà đặc biệt để
đánh dấu một văn bản, một file ảnh, hoặc một đoạn phim..giúp cho Web
Browser thông dịch và hiển thị chúng lên màn hình của bạn. Html có những
phần mở rộng rất quan trọng cho phép những liên kết hypertext từ một tài
liệu này tới một tài liệu khác (có thể là một đoạn text, cũng có thể là một file
ảnh..)
2.2. Cấu trúc cơ bản của một file HTML nh sau:
< HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>

<BODY>
<H1>Đây là một đầu đề</H1>
...
</BODY>
</HTML>

Sinh viên thực hiện : Nguyễn Đăng Thành

2


Website quản lý Album âm nhạc

GVHD:PGS-TS:
Nguyễn Văn Xuất

Theo cấu trúc đà trình bày nh trên ta thấy một file HTML chia thành hai
phần cơ bản:
- Phần đầu : đợc bao bởi hai tag <head> ,</head> : tại đây định nghĩa
tên (hay đợc gọi là tiêu đề ) của trang web. Phần này đợc hiển thị trên
thanh tiêu đề của trang web đợc khai báo giữa hai tag <title> </title>
- Phần thân : đợc baobởi hai tag <body> , </body>: Trình bày nội dung
thể hiện trên trang web. Các nội dung cần hiển thị hoặc xử lý trên trang web
sẽ đợc định nghĩa trong phần body của file HTML.Để cho các trang web đợc
sinh động hơn ngôn ngữ HTML còn bao gồm rất nhiều tag dùng cho việc
định trang, liên kết các trang với nhau, thêm hình ảnh vào trang... (Các tag
này sẽ đợc định nghĩa trong phụ lục A).
2.3. PHầN MềM MICROSOFT FRONTPAGE:

Giới thiệu: Microsoft Fontpage là một phần mềm cho phép việc tạo và

quản lý các trang Web. Microsoft Fontpage thật sự là một phần mềm
mạnh,tiện ích với nhiều tính năng, Microsoft Fontpage dễ sử dụng phù hợp
với mọi đối tợng, tùy theo khả năng của ngời thiết kế và yêu cầu của ứng
dụng mà ta có thể tạo ra những trang web từ đơn giản đến phức tạp.
FrontPage bao gồm hai thành phần : Fontpage Explorer & Fontpage Editor.
Fontpage Explorer: T¬ng tù nh Explorer cđa Windows 95 , cho phép ngời
thiết kế có cái nhìn tổng quát về các trang Web đà tạo,mô hình liên kết giữa
các trang với nhau,đợc thể hiện dới dạng công cụ đồ họa. Và ở đây ta có thể
quyết định tạo trang Web của mình nh thế nào, sắp xếp các biểu tợng theo
những trật tự khác nhau sao cho trang Web của mình cho thích hợp.
Fontpage Editor: Đây là nơi mà bạn sẽ dùng để soạn thảo trang web cho
ứng dụng của bạn. Microsoft Frontpage có giao diện tơng tự nh
MicrosoftWord, ngoài những chức năng thông thờng của một phần mềm
soạn thảo Frontpage còn cho phép ngời sử dụng có thể tạo các frame khác
nhau trên màn hình hoặc tích hợp những phÇn tư nh Active Elements
(video,seach form..), Database, Form Fiedl, Java Applet, Activex Control,
script.. vào trang web của mình.Bên cạnh đó bạn có thể xem, và thêm một
đoạn chơng trình vào source html với các chức năng cần xử lý trong trang
web của bạn.

Sinh viên thực hiện : Nguyễn Đăng Thành

3


Website quản lý Album âm nhạc

GVHD:PGS-TS:
Nguyễn Văn Xuất


Mô hình của Front Page Explore

Mô hình của Front Page Editor

Sinh viên thực hiện : Nguyễn Đăng Thành

4


Website quản lý Album âm nhạc

Sinh viên thực hiện : Nguyễn Đăng Thành

GVHD:PGS-TS:
Nguyễn Văn Xuất

5


Website quản lý Album âm nhạc

GVHD:PGS-TS:
Nguyễn Văn Xuất

CHơNG II:ACTIVE SERVER PAGES Và NGôN NGữ LậP TRìNH
TRêN ASP
1. GIớI THIệU Về ACTIVE SERVER PAGES :

1.1. Active sever pages là gì :
Microsoft Active Server Pages là một môi trờng hỗ trợ cho các script

chạy trên server (Server-Side Scripting), cho phép ta dùng để tạo ra và chạy
các các ứng dụng Web server động. ASP hoạt động dựa vào các script do ngời lập trình tạo ra. Active Server Pages chạy trên các môi trờng sau đây:
- Microsoft Internet Information Server version 3.0 trªn Window NT
Server.
- Microsoft Peer Web Services version 3.0 trªn Window NT Workstation.
- Microsoft Personal Web Server trªn Windows 95.

ISAPI

The Internet
Or Intranet

Application

Internet
Informat
ion
Server

CGI
Application

Perl Awk
etc CGI
Script

1.2. Mô hình hoạt động của Active Server Page :

Active Server
Pages

DLLsCủa Asp
Mô Hình
Tổng interface
Quát Hoạt Động

Server Side
Inludes
(SSI)

1.3. Cách hoạt động của ASP :
Các script của ASP đợc chứa trong các text file cótên mở rộng là .asp .
Trong script có chứa các lệnh của một ngôn ngữ script nào đó.
Khi
một Web browser gửi request tới một file
.asp thì script chứa trong
VBScript
Active Database
file sẽ
đợc chạy để trả kết Jscript
quả
về
cho
browser
đó.
Khi
Web server nhận đợc
Interpretor
Compenents(AD
request tới một file .asp thìInterpreto


sẽ
đọc
từ
đầu
tới
cuối
file
.asp đó, thực hiện
O)
các lệnh script trong đó vàrtrả kết quả về cho Web
brower dới dạng của một
trang Html.
Active Server
Components

Custom
Components

ODBC Driver

DATA

Sinh viên thực hiện : Nguyễn Đăng Thành

Active Server Pages (.asp files)

6


Website quản lý Album âm nhạc


GVHD:PGS-TS:
Nguyễn Văn Xuất

.

Mô Hình Chi Tiết Hoạt Động của ASP

1.4. Cấu trúc của một file ASP :
Một file ASP có tên mở rộng là .asp, nó bao gồm các thành phần nh :
- Text
- HTML tags
- Script Commands
1.5. C¸c tÝnh chÊt cđa ASP:
Víi ASP ta có thể chèn các script thực thi đợc vào trực tiếp các file
HTML . Khi đó việc tạo ra trang HTML và xử lý script trở nên đồng thời,
điều này cho phép ta tạo ra các hoạt động của Web site một cách linh hoạt
uyển chuyển , có thể chen các thành phần HTML động vào trang Web tùy
vào từng trờng hợp cụ thể.
Sinh viên thực hiện : Nguyễn Đăng Thµnh

7


Website quản lý Album âm nhạc

GVHD:PGS-TS:
Nguyễn Văn Xuất

ASP cho ta các tính chất sau :

- Có thể kết hợp với file HTML.
- Dễ sử dụng tạo, các script dễ viết, không cần phải biên dịch
(compiling) hay kết nối (linking) các chơng trình đợc tạo ra.
- Hoạt động theo hớng đối tợng, với các build-in Object rất tiện dụng :
Request, Response, Server, Apllication, Session.
- Có khả năng mở rộng các thành phần ActiveX server (ActiveX
server components).
Môi trờng của ASP sẽ đợc cài đặt trên Server cùng với Web server. Một
ứng dụng viết bằng ASP là một file hay nhiều file văn bản có phần tên mở
rộng là.Asp, các file này đợc đặt trong một th mục ảo( Virtual Dirrectory)
của Web Server.
Các ứng dụng ASP dễ tạo vì ta dùng các ASP script để viết các ứng dụng.
Khi tạo các script của ASP ta có thể dùng bất kỳ một ngôn ngữ script nào ,
chỉ cần có scripting engine tơng ứng của ngôn ngữ đó mà thôi. ASP cung cấp
sẵn cho ta hai scripting engine lµ Visual Basic Script(VBScript) vµ Java
Script (Jscript). Ngoài ra ASP còn cung cấp sẵn các ActiveX Component rất
hữu dụng, ta có thể dùng chúng để thực hiện các công việc phức tạp nh truy
xuất cơ sở dữ liệu, truy xuất file, . . . Không những thế mà ta còn có thể tự
mình tạo ra các component của riêng mình và thêm vào để sử dụng trong
ASP.ASP tạo ra các trang HTML thơng thích với các Web browser chuẩn.
2. NGôN NGữ LậP TRìNH Sử DụNG VớI ASP:

2.1. Các Script Commands của ASP:
Mỗi script của ASP đợc chứa trong một file .asp . Mỗi file của ASP có
thể coi nh một file HTML có chen vào các lệnh của một ngôn ngữ script nào
đó. Thực ra nó là một file text nhng trong các text đó có những vùng mà khi
Web server đọc tới thì nó hiểu đó là những vùng script chứa các lệnh của
một ngôn ngữ script nào đó , Web server sẽ gọi tới các script engine để thực
thi các lệnh script trong đó.
ASP qui định một vùng script nằm giữa hai dấu <% và %> hoặc trong vùng

của 2 Tag <SCRIPT> và </SCRIPT>.
Script là đoạn chơng trình thể hiện các yêu cầu của ngời lập trình đối với
ASP, nó chứa các câu lệnh mà ngời lập trình muốn ASP thực hiện và nội
dung ngời đó muốn tạo ra trên trang HTML kết quả trả về cho Web browser
gọi đến ứng dụng.
Tóm lại script giống nh một chơng trình đợc ngời lập trình viết ra để thực
thi trên môi trờng hoạt động của ASP, cũng giống nh các chơng trình trong
mọi ngôn ngữ lập trình kh¸c nh C, Pascal, Java . . ., chØ cã điểm khác là chơng trình của ngôn ngữ khác phải biên dịch ra dạng thực thi đợc và dùng
dạng thực thi đợc đó để chạy trên một môi trờng cụ thể (DOS, Windows,

Sinh viên thực hiện : Nguyễn Đăng Thành

8


Website quản lý Album âm nhạc

GVHD:PGS-TS:
Nguyễn Văn Xuất

Unix, ...); còn script thì không phải biên dịch trớc ra dạng thực thi đợc mà
đem dạng text chạy thẳng trong môi trờng cđa ASP.
VÝ dơ minh häa:
<% Myname= " Chau Quoc Dat "
If Time >=#12:00:00AM # and Time<#12:00:00 PM# then %>
<Font face="VNI-Times" color="#FF0000"> Chào buổi sáng "&
Myname"
<%Else%>
Xin chào
<%End If%>


2.2. Script language và Script Engine:
Script của ASP đợc cấu thành từ các lệnh của một ngôn ngữ script
(scripting language) nào đó, xen lẫn vào đó là các nội dung dạng HTML, để
trả về kết quả cuối cùng ở dạng HTML.
Scripting language nằm ở khoảng ngôn ngữ siêu văn bản (HTML) và các
ngôn ngữ lËp tr×nh nh Java, C++, Visual Basic, . . . Ta biết HTML dùng để
định dạng và liên kết các văn bản , còn các ngôn ngữ lâp trình có khả năng
tạo ra một chuỗi các lệnh phức tạp cho máy tính thực hiện. Đối với scripting
language, nó nằm ở giữa, tuy nhiên nó gần với ngôn ngữ lập trình hơn là
HTML.
Khác nhau cơ bản giữa scripting language và các ngôn ngữ lập trình là ở
chỗ các luật và cú pháp của scripting language linh hoạt và dễ hiểu hơn các
ngôn ngữ lập trình.
Scripting Engine là các đối tợng có nhiệm vụ xử lý các script. ASP cung
cấp một môi trờng chủ cho các scripting engine và phân phối các script rong
các file .asp cho các engine này để xử lý. Để sử dụng đợc một scripting
language cùng với ASP ta phải cài đặt scripting engine tơng ứng vào Web
server. VÝ dơ nh Visual Basic Script (VBScript) lµ scripting language mặc
định của ASP , do đó ta phải có VBScript engine đợc cài sẵn và ASP có thể
truy xuất tới đợc, nhờ thế nó có thể xử lý đợc các script viÕt b»ng VBScript.
T¬ng tù , ASP cã thĨ cung cấp môi trờng scripting cho một số các scripting
language nh Jscript, REXX, Perl , . . .
ASP cho phÐp ngêi lập trình dùng nhiều scripting language cùng lúc để
tạo các thủ tục phức tạp mà không cần phải bận tâm các browser có trợ giúp
các scripting language hay không. Vì tất cả các script đều đợc thực thi ở
server Không nh÷ng thÕ ta cã thĨ dïng nhiỊu scripting language trong cùng
một file .asp chỉ cần bằng cách một HTML tag để khai báo ngôn ngữ script
nào đợc dùng.
ASP mặc định sư dơng scripting language chÝnh (Primary scripting

language) lµ VBScript. Tuy nhiên ta vẫn có thể định lại scripting language
chính trong cả hai phạm vi là : toàn bộ môi trờng ASP, hay chỉ trong một file
.asp nào đó.
Để thay đổi scripting language chính cho toàn bộ môi trờng ASP ta phải thay
đổi tên scripting language trong giá trị của một registry entry của hệ thống
có tên là Default Script Language . Ví dụ nh trị mặc định là VBScript, ta có
thể đổi lại là hay JScript , . . .
Sinh viên thực hiện : Nguyễn Đăng Thành

9


Website quản lý Album âm nhạc

GVHD:PGS-TS:
Nguyễn Văn Xuất

Để thay đổi scripting language chính chỉ trong một file .asp nào đó, ta chỉ
cần đặt ở đầu file một tag đặc biệt có dạng :
<%@ LANGUAGE = ScriptingLanguage %>
với ScriptingLanguage là tên scripting language muốn đặt làm scripting
language chính nh VBScript, Jscript, . . .
2.3. Viết các procedure với nhiều ngôn ngữ:
Nh ta đà nói , một trong các đặc tính mạnh của ASP là khả năng kết hợp
nhiều scripting language trong cùng một file .asp . Nếu biết tận dụng khả
năng này ta có đợc một công cụ rất mạnh để thực hiện những công việc phức
tạp.
Một procedure là một nhóm các dòng lệnh script thực hiện một tác vụ
nhất định. Ta có thể tạo ra các procedure để dùng nhiều lần trong các script.
Có thể định nghĩa các procedure bên trong các delimeter (dấu phân cách)

nếu nh nó đợc viết bằng scripting language chính. Nếu không thì có thể dùng
trong các tag .
Ta có thể định nghĩa các procedure trong các file .asp có gọi đến nó hay
trong các file riêng chỉ chứa các procedure rồi include file đó vào khi cần gọi
procedure đó. Thờng các file include trong ASP qui ớc có đuôi là .inc .
3. VISUALBASIC SCRIPT LANGUAGE (VBSCRIPT)

3.1. Giới thiệu về VBScript:
VBScript là một thành phần mới nhất trong họ ngôn ngữ lập trình Visual
Basic, cho phép tạo ra những script sử dụng đợc trên nhiều môi trờng khác
nhau nh các script chạy trên Browser của client (Ms Internet Explorer 3.0)
hay trªn Web server (Ms Internet Information Server 3.0).
Cách viết VBScript tơng tự nh cách viết các øng dơng trªn Visual Basic
hay Visual Basic for Application. VBScript giao tiÕp víi c¸c øng dơng chđ
(host application) b»ng c¸ch sử dụng các ActiveX Scripting.
3.2. Các kiểu dữ liệu của VBScript :
VBScript chỉ có một loại dữ liệu đợc gọi là Variant. Variant là một kiểu
dữ liệu đặc biệt có thể chứa đựng những loại thông tin khác nhau tùy theo
cách sử dụng. Dĩ nhiên nó cũng là kiểu dữ liệu đợc trả về bởi tất cả các hàm.
ở đây đơn giản nhất một Variant có thể chứa thông tin số hoặc chuỗi tùy theo
văn cảnh sử dụng. Các loại dữ liệu (subtype) mà Variant có thể biểu diễn là:
Empty, null, boolean, byte, currency, date, time, string, object, error...
VBScript cã sẳn một số hàm để chuyển từ subtype này sang subtype khác.
3.3. Biến trong VBScript:
Một biến là một tên tham khảo đến một vùng nhớ, là nơi chứa thông tin
của chơng trình mà thông tin này có thể đợc thay đổi trong thời gian script
chạy.Ví dụ: có thể đặt một biến tên là ClickCount để đếm số lần user click
vào một object trên một trang Web nào đó. Vị trí cđa biÕn trong bé nhí
kh«ng quan träng, ta chØ truy xuất đến nó thông qua tên mà thôi. Trong
VBScript biến luôn có kiểu là Variant.

Khai báo biến: dùng phát biểu Dim, Public (cho biÕn toµn cơc) hay Private
(cho biÕn cơc bộ).
Ví dụ:
Dim ClickCount
Tên Biến phải bắt đầu bằng một kí tự chữ, trong tên biến không chứa dấu
chấm, chiều dài tối đa là 255 kí tự và 1 biến là duy nhất trong tầm vực mà nó
đợc định nghĩa.

Sinh viên thực hiện : Nguyễn Đăng Thành

10


Website quản lý Album âm nhạc

GVHD:PGS-TS:
Nguyễn Văn Xuất

Tầm vực và thêi gian sèng cđa mét biÕn: cã 2 lo¹i biÕn là procedure-level
và script-level tơng ứng với 2 cấp tầm vực lµ local vµ script-level. Thêi gian
sèng cđa mét biÕn script-level đợc tính từ khi nó đợc khai báo đến khi script
kết thúc, đối với biến local là từ khi nó đợc khai báo đến khi procedure chứa
nó kết thúc.
Biến trong VBScript có thể là biến đơn hay là dÃy. Khi khai báo Dim
A(10) thì VBScript tạo ra một dÃy có 11 phần tử (vì phần tử đầu có chỉ số là
0). Một biến dÃy có thể mở rộng tối đa ®Õn 60 chiÒu, nhng thêng dïng tõ 2
®Õn 4 chiÒu. Cã thĨ thay ®ỉi kÝch thíc mét d·y trong thêi gian chạy bằng
cách dùng phát biểu ReDim.
Ví dụ:
Dim MyArray(25)

...
ReDim MyArray(30) hay
ReDim Preserve MyArray(30) giữ lại các giá trị trong dÃy cũ.giữ lại các giá trị trong dÃy cũ.

3.4. Hằng trong VBScript:
Hằng là một tên có nghĩa đại diện cho 1 số hay chuỗi và không thể thay
đổi trong quá trình chạy. Tạo một hằng bằng phát biểu Const.
Ví dụ:
Const MyString = “This is my string “This is my string “This is my string “

3.5. C¸c to¸n tư trong VBScript:
VBScript cã c¸c to¸n tư kh¸c nhau nh sè häc, luận lý, só sánh. Nếu muốn
chỉ định thứ tự u tiên của toán tử một cách rõ ràng thì dùng dấu ngoặc ( ),
còn không thì thứ tự u tiên nh sau (từ trên xuống dới, từ trái sang phải):
- Sè häc: ^ , -(©m) , * , / , mod , + , - , &, \ (chia lÊynguyªn)
- So s¸nh: = , <> , < , > , <= , >= , Is.
-LuËn lý: Not , And , Or , Xor , Eqv , Imp.
Toán tử * và / , + và - có cùng độ u tiên và đợc thực hiện từ trái sang phải.
3.6. Các cấu tróc ®iỊu khiĨn:
If ... Then ... Else ... End IF
Do ... Loop
While ... Wend
For ... Next
3.7. Procedure trong VBScript:
Cã 2 loại procedure là Sub và Function.
- Sub procedure: là một chuỗi các phát biểu VBScript nằm trong phát biểu
Sub và EndSub, thực hiện một số công việc và không trả về giá trị.
- Function procedure: tơng tự nh Sub, nhng trả về giá trị.
Ngoài những kiểu dữ liệu, toán tử và cấu trúc điều khiển nh đà giới thiệu ở
bên trên ngôn ngữ Script còn rất nhiều hàm tạo nên sự sinh động cho chơng

trình( sẽ đợc giới thiệu trong phụ lục B).
4. Những vấn đề liên quan đến việc xây dựng một ứng
dụng trên ASP:

Khi xây dựng một ứng dụng trên môi trờng ASP để chơng trình sinh động
ta cần lu ý khi :
- Xây dựng file Global.asa.
- Viết mà VBScript.
- Thêm các Object có sẵn vào chơng trình.
Sinh viên thực hiện : Nguyễn Đăng Thành

11


Website quản lý Album âm nhạc

GVHD:PGS-TS:
Nguyễn Văn Xuất

- Sử dụng các ActiveX Server Component.
- Lấy thông tin từ user, gởi thông tin đến user.
4.1. File Global.asa:
File Global là một file tùy chọn, trong đó bạn có thể khai báo các script
đáp ứng biến cố, các đối tợng có tầm vực mức application (ứng dụng) hay
session. Đây không phải là một file đợc nhìn thấy bởi các user, trái lại nó
chứa những thông tin đợc sử dụng bởi ứng dụng một cách toàn cục. File này
phải đợc đặt tên là Global.asa và đợc đặt trong th mục gốc của ứng dụng.
Mỗi øng dông chØ cã mét file Global.asa duy nhÊt. Mét file Global.asa có thể
chứa các thành phần sau: Application events, Session events, định nghĩa
các đối tợng.

Nếu bạn viết những script không đợc bao bởi tag <SCRIPT>, hoặc định
nghĩa các đối tợng không có tầm vực application hay session thì server sẽ trả
về lỗi. Server bỏ qua những script có chứa những thành phần HTML mà các
biến cố application và session không thể xử lýự nh trong một file HTML
thông thờng.
Những script trong file Global.asa có thể đợc viết bởi bất cứ ngôn ngữ nào
có hổ trợ script. Nếu các đoạn script đợc viết bởi cùng một ngôn ngữ thì có
thể kết hợp chúng trong một tag <SCRIPT> duy nhất.
Khi bạn thay đổi file Global.asa và ghi lại nó thì server hoàn tất việc xử lý
những yêu cầu ứng dụng hiện thời trớc khi nó biên dịch lại file Global.asa,
trong khoảng thời gian này server từ chối các yêu cầu khác và ra thông báo:
"The request cannot be processed while the application is being restarted".
Sau khi những request hiện tại đợc xử lý xong, server xóa bỏ tất cả các
session đang chạy, gọi biến cố Session_OnEnd tơng ứng với mỗi session mµ
nã xãa, tiÕp theo gäi biÕn cè Application_OnEnd. File Global.asa đợc biên
dịch lại. Request của user tiếp theo sẽ khởi động ứng dụng trở lại (gọi biến
cố Application_OnStart và Session_OnStart).
Tuy nhiên khi lu lại những file đợc include trong Global.asa thì không
gây nên biến cố này, muốn khởi động lại ứng dụng phải lu lại file
Global.asa.Những thủ tục định nghĩa trong Global.asa chØ cã thĨ gäi tõ c¸c
script trong c¸c biến cố: Application_OnStart, Application_OnEnd,
Session_OnStart, Session_OnEnd. Các thủ tục này không thể gọi từ các
trang ASP trong ứng dụng dựa trên ASP.
Để "share" các thủ tục giữa các file ASP khác nhau trong một ứng dụng,
cần định nghĩa chúng trong một file riêng rồi dùng lệnh Include để chèn
chúng vào trong trang ASP có gọi thủ tục đó. Những file include thờng có
phần mở rộng là .inc.
Các ví dụ về file Global.asa trong phần này dùng VBScript nh là ngôn ngữ
Script chính, mặc dù nh đà nói các script có thể viết bằng nhiều ngôn ngữ
khác (ví dụ Jscript..).

4.2. Khai Báo Đối Tợng Và Các Biến Cố:
Biến cố Application : BiÕn cè Application :
Application_OnStart: X¶y ra tríc khi session đầu tiên đợc tạo, nghĩa
là trớc biến cố Session_OnStart, khi có yêu cầu đầu tiên đến một trang ASP
của ứng dụng. Chỉ có các đối tợng Application hay Server Build-in là có thể
sử dụng. Các tham khảo đến đối tợng Session, Request, Response sẽ gây ra
lỗi.
- Cú pháp:
Sinh viên thực hiện : Nguyễn Đăng Thành

12


Website quản lý Album âm nhạc

GVHD:PGS-TS:
Nguyễn Văn Xuất

<SCRIPT LANGUAGE=ScriptLanguage RUNAT=Server>
Sub Application_OnStart

End Sub
</SCRIPT >

- Tham số ScriptLanguage: chỉ định ngôn ngữ Script dùng để viết
cript.Thờng sử dụng biến cố này để khởi động một số biến toàn cục, thông
tin hệ thống.
Application_OnEnd: Xảy ra trớc khi đóng ứng dụng, sau khi biến cố
Session_OnEnd cuối cùng xảy ra. Chỉ có các đối tợng Application hay Server
Build-in là có thể sử dụng.

- Cú pháp:
<SCRIPT LANGUAGE=ScriptLanguage RUNAT=Server>
Sub Application_OnEnd

End Sub
</SCRIPT >

- Tham số: ScriptLanguage chỉ định ngôn ngữ Script dùng để viết
script.Thờng sử dụng biến cố này để xóa, cập nhật lại các thông tin hệ thống.
Biến cố Session: Web server tự động tạo mét session cho mét ngêi s
dông khi mét trang Web trong ứng dụng đợc yêu cầu. Server sẽ xóa bỏ một
session khi nó Time-out hoặc method Abandon đợc gọi.
Những biến cố Session : Session_OnStart, Session_OnEnd.
Session_OnStart: Xảy ra khi server tạo một session mới. Bạn phải khai
báo các biến có tầm vùc session trong biÕn cè. Ta cã thĨ tham kh¶o tất cả
những đối tợng Build-In trong biến cố này.
- Cú ph¸p:
<SCRIPT LANGUAGE=ScriptLanguage RUNAT=Server>
Sub Session_OnStart

End Sub
</SCRIPT >

- Tham sè: ScriptLanguage chØ định ngôn ngữ Script dùng để viết
script.Ta có thể gọi phơng thức Redirect trong biến cố Session_OnStart,
chẳng hạn để bảo đảm rằng NSD luôn bắt đầu từ một trang duy nhÊt. Khi
NSD muèn më ngay mét trang kh¸c nhau trang đợc chỉ định thì redirect sang
đà chỉ định. Tuy nhiên cần chú ý là những Browser không hổ trợ cookies thì
nó sẽ không lu lại sessionID của nó nên bất cứ khi nào mở một trang mới thì
server lại tạo mét session míi.

VÝ dơ:
Sub Session_OnStart
Application.Lock
Application("AccessNumber")=Application("AccessNumber")+1
Application.Unlock
End Sub

Session_OnEnd: X¶y ra khi mét session đợc đóng hoặc TimeOut.
Dùng biến cố này để xóa các biến đà đặt trong quá trình sử dụng của User
Cú pháp:
<SCRIPT LANGUAGE=ScriptLanguage RUNAT=Server>
Sub Session_OnEnd


Sinh viên thực hiện : Nguyễn Đăng Thành

13


Website quản lý Album âm nhạc

GVHD:PGS-TS:
Nguyễn Văn Xuất

End Sub
</SCRIPT >

Khai báo các <OBJECT>:
Bạn có thể tạo các đối tợng có tầm vực session hay application trong file
Global.asa. đối tợng này thực sự đợc tạo ra khi server xử lý một script có

tham khảo đến nó.
- Cú pháp:
<
OBJECT
RUNAT=Server
SCOPE=Scope
{PROGID=progID | CLASSID=" ClassID"}>
.
</OBJECT>

ID=Identifier

- Tham số:
Scope: chỉ định tầm vực của đối tợng, là "session" hay "application"
Identifier: tên instance của đối tợng.
ProgID: một danh định đợc kết hợp với danh định class. ProgID hay
ClassID phải đợc chỉ định trong khai báo <OBJECT>
ClassID: danh định duy nhất cho một đối tợng lớp OLE. ProgID hay
ClassID phải đợc chỉ định trong khai báo <OBJECT>.
Vd:
<OBJECT>
CLASSCID=Clsid:79176FBO-B7F2-11EF-Clsid:79176FBO-B7F2-11EF00AA006D2776Clsid:79176FBO-B7F2-11EF-ID=Clsid:79176FBO-B7F2-11EF-spnTestClsid:79176FBO-B7F2-11EF- CODEBASE =Clsid:79176FBO-B7F2-11EF-http://
activeX.microsoft.com/controls/mspert10.cabClsid:79176FBO-B7F2-11EF->
</OBJECT>
5. CáC ĐốI TợNG (OBJECT) TRONG ASP:

Khi viết các script ta thêng cã nhu cÇu thùc hiƯn mét sè tác vụ nào đó theo
một qui tắc cơ bản nào đó. Khi đó thờng xuất hiện những công việc lặp đi lặp
lại nhiều lần, từ đó xuất hiện nhu cầu tạo ra các đối tợng có khả năng thực
hiện những công việc cơ bản đó. Mỗi đối tợng là một kết hợp giữa lập trình

và dữ liệu mà có thể xử lý nh một đơn vị thống nhất.
Đối với phần lớn các đối tợng, để sử dụng đợc nó ta phải tạo ra các instance
cho nó. Tuy nhiên ASP có sẵn năm đối tợng mà ta có thể dùng đợc mà không
cần phải tạo các instance. Chúng đợc gọi là các build-in object, bao gồm :
Request : Là đối tợng chứa các thông tin ở Web browser gửi yêu cầu
tới Web server.
Response : Là đối tợng chøa th«ng tin tõ server gưi vỊ cho Web
browser.
° Server : Là môi trờng máy server nơi ASP đang chạy, chứa các thông
tin và tác vụ về hệ thống.
Apllication : Đại diện cho ứng dụng Web của ASP, chứa script hiện
hành.
Session : là một biến đại diện cho user.
5.1. Đối tợng Request:
Định nghĩa:
Với đối tợng Request, Các ứng dụng ASP có thể lấy dễ dàng các thông
tin gởi tới từ user.
Ví dụ khi user submit thông tin từ một form.
Đối tợng Request 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:
- Các thông tin chuẩn nằm trong các biến Server
Sinh viên thực hiện : Nguyễn Đăng Thµnh

14


Website quản lý Album âm nhạc

GVHD:PGS-TS:
Nguyễn Văn Xuất


- Các tham số gởi tới bằng phơng thức POST
- Các tham số gởi tới bằng phơng thức GET
- Các Cookies .
- Các Client Certificates.
Cú pháp tổng quát: Request.(CollectionName)(Variable)
Đối tợng Request: Cã 5 Collection .
- Client Certificate: NhËn Certtification Fields tõ Request cđa Web
Browser. NÕu Web Browser sư dơng http:// ®Ĩ connect víi server,
browser sÏ gëi certification fields.
-Query String: NhËn gi¸ trị của các biến trong HTML query string. Đây
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 phơng thức
POST.
- Cookies: Cho phép nhận những giá trị của cookies trong một HTML
Request.
- Server Variable: nhận các giá trị của các biến môi trờng.
Mét vÝ dơ lÊy th«ng tin tõ form:
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
th«ng qua: textboxes, Radio button, Check boxes.. và hai ph ơng thức gởi
thông tin là POST vµ 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 3 cách:
File .html chứa các form và gởi giá trị của nó tới một file . asp.
File .asp có thể tạo form và gởi giá trị của nã tíi mét file .asp.
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 Query String". ViƯc sư dơng QueryString
Collection lµm cho viƯc truy xt thông tin trở nên dễ dàng hơn. Nếu phơng

thức gởi từ form là GET, thì QueryString chứa toàn bộ thông tin gởi tới nh
các tham số đi đằng sau dấu chấm hỏi(?) trong address box. Nếu phơng thức
gởi là POST thì thông tin gửi đi sẽ dấu đi.
Gởi thông tin trong cïng mét file.asp:Asp cho phÐp mét file.asp chøa
form, khi user điền các giá trị vào formrồi gởi thì chính file .asp đó sẽ nhận
các thông tin này và xử lý.
VÝ dô: File " Example.asp" cã néi dung nh sau:
<Html>
<Head>
<Title>Login user</Title>
</Head>
<Body>
<%
If IsEmpty(Request("Email") ) = 0 then
Msg= " Vui lòng đánh địa chỉ của bạn"
Else If InStr(Request("Email"),"@") = 0 then
Msg="Vui lòng đánh địa chỉ trong "
Else
Msg=" Giá trị ở địa chỉ sẽ đợc thực thi"

Sinh viên thực hiện : Nguyễn Đăng Thµnh

15


Website quản lý Album âm nhạc

GVHD:PGS-TS:
Nguyễn Văn Xuất


End if
%>
<Form method="POST" Action="Example.asp>
<Pre>
E.mail:
<%=MSg%>


<input type="Submit" Value="Submit">
<Pre>
</Form>
</Body>
</Html>

Khi user điền vào form địa chỉ Email và Submit thì file example.asp này
sẽ nhận thông tin bằng phát biểu: Value="<%Request("Email")%>
Đoạn script này sẽ tùy thuộc vào giá trị chuỗi ký tự nhận đợc có chứa 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 example.asp.
5.2. Đối tợng Response:
Định nghĩa : Việc gởi thông tin tới cho user sẽ đợc thực hiện nhờ đối tợng Response.
Cú pháp tổng quát:
Response.Collection| property| method
Collection của đối tợng Response :
Cookies: Xác định giá trị biến Cookies.Nếu Cookies đợc chỉ ra không
tồn tại, nó sẽ đợc tạo ra. Nếu nó tồn tại thì nó đợc nhận giá trị mới.
Các Properties:
- Buffer: Chỉ ra trang Web output đợc giữ lại đệm buffer hay không.
Khi một trang đợc đệm lại, Server sẽ không gởi một đáp ứng nào cho
Browser cho đến khi tất cả các script trên trang hiện tại đà đợc thực thi
xong hay phơng pháp FLUSH or END đợc gọi.


- ContentType: Chỉ ra HTML content type cho response. Nếu không có
ContentType nào đợc chỉ ra, trị mặc nhiên là This is my string text/HTMLClsid:79176FBO-B7F2-11EF-.
- Expires: Chỉ định số thời gian trớc khi một trang đợc cached trên một
browser hết hạn.
- ExpiresAbsolute: Chỉ ra ngày giờ của một trang đợc cache trên
browser hết hạn.
- Status: Chỉ ra giá trị trạng thái đợc Server. Giá trị trạng thái đợc định
nghĩa trong đặc tả HTTP.
Các Methods:
- AddHeader: Thêm một HTML headervới một giá trị đợc chỉ định. Phơng thức này luôn luôn thêm mới một header vào response. Nó sẽ
không thay thế những header có sẵn cùng tên với header mới.
- AppendToLog: Thêm một chuỗi vào cuối file Log của Web server cho
request này.
- BinaryWrite: Xuất thông tin ra output HTML dạng binary.
- Clear: Xóa đệm output HTML.Tuy nhiên , phơng thức này chỉ xoá
response body mà không xoá response header.Phơng này sẽ sinh lỗi
nếu nh Response.Buffer cha set thµnh TRUE.
- End: Dõng xư lý file .asp và trả về kết quả hiện tại.

Sinh viên thực hiện : Nguyễn Đăng Thành

16


Website quản lý Album âm nhạc

GVHD:PGS-TS:
Nguyễn Văn Xuất

- Flush: Gởi thông tin trong buffer cho client. Phơng thức này sẽ sinh lỗi

nếu Response.Buffer cha set thành TRUE.
- Redirect: Gởi một thông báo cho browser định hớng lại đến một URL
khác.
- Write: Ghi mét biÕn ra HTML output nh lµ mét chuỗi.
Ví dụ:
- Đặt Response.Buffer = True cho phép đệm output cho đến khi xử lý
xong hết trang.
- Response.Write "Đây là thông báo xuất ra bằng Response"
sẽ xuất ra chuỗi ký tự giữa hai dấu nháy kép.
- Response.Clear : xóa hết nội dung của Buffer (chỉ sử dụng đợc khi
Response.Buffer = True)
- Response.Redirect "WebPage1.Html" sẽ xóa trang hiện tại và thay
bằng trang WebPage1.Html tại Web Browser trên máy Client.
5.3. Đối tợng session:
Định nghĩa: Chúng ta có thể sử dụng 1 object Session để lu trữ thông
tin cần thiết cho 1 user. Những biến đợc lu trữ trong object vẫn tồn tại khi
user nhảy từ trang này sang trang khác trong ứng dụng.Web server tự
động tạo object session khi user cha có session yêu cầu một trang Web.
Khi session này kết thúc thì các biến trong nó đợc xóa để giải phóng tài
nguyên. Các biến session có tầm vực trong session đó mà thôi.
Cú pháp tổng quát: Session.property | method
Các Properties:
- SessionID: Trả về SessionID cho user. Mỗi session sẽ đợc server cho
một số định danh duy nhấtkhi nó đợc tạo ra.
- Timeout: Khoảng thời gian tồn tại của session, tính bằng phút. Mặc
định 20 phút
Các Methods:
- Abandon: Xóa bỏ một object session, trả lại tài nguyên cho hệ thống.
- Ví dụ:Ta có thể tạo các biến trong đối tợng Session để lu thông tin cho
mỗi kết nối đến Server.

+ Session("Login"): cho biết ngời yêu cầu truy xuất đến trang có login
cha.Session("Username"): tên của Account tạo ra sesion hiện tại.
+ Session("SelectedTopic"): tên chủ đề đang đợc chọn để thực hiện
một thao tác nào đó.
5.4. Đối tợng Application:
Định nghÜa: Ta cã thĨ sư dơng object Application ®Ĩ cho phÐp nhiỊu
ngêi cïng sư dơng mét øng dơng chia sỴ thông tin với nhau.Bởi vì
object Application đợc dùng chung bởi nhiỊu ngêi sư dơng, do ®ã object
cã 2 method Lock và Unlock để cấm không cho nhiều user đồng thời
thay đổi property của object này, các biến Application là toàn cục, có
tác dụng trên toàn ứng dụng.
Cú pháp tổng quát: Application.Method
Các Methods:
- Lock: Phơng pháp này cấm không cho client khác thay đổi property
của đối tợng Application .
- Unlock: Phơng pháp này cho phép client khác thay đổi property của
đối tợng Application .
Sinh viên thực hiện : Nguyễn Đăng Thành

17


Website quản lý Album âm nhạc

GVHD:PGS-TS:
Nguyễn Văn Xuất

- Events: gồm có hai event đợc khai báo trong file Global.asa. Ngoài
ra chúng ta có thể đặt các biến trong đối tợng Application để lu
những thông tin toàn cục, hay các cờ báo hiệu.

Application_OnStart: Xảy ra khi khởi động ứng dụng.
Application_OnEnd: Xảy ra khi øng dơng ®ãng, hay Server
shutdown.
- VÝ dơ:
Application("DatabaseAccessFlag"): cê cho biết có ai đang truy xuất
Database không.
Application("AccessNumber"): số lần truy xt ®Õn øng dơng. Khi
khëi ®éng/ ®ãng øng dơng giá trị này đợc cập nhật vào Database.
Application("arrayTopicName"): biến dÃy lu danh sách các chủ đề
hiện có của hệ thống.
Trớc khi thay đổi giá trị các biến Application nên Lock lại và sau khi
thay đổi nhớ Unlock.
5.5. Đối tợng Server:
Định nghĩa: Cho phép truy xuất đến các method và property của server
nh là những hàm tiện ích.
Cú pháp tổng quát: Server.Method
Các Properties:
ScriptTimeout: Khoảng thời gian dành cho script chạy. Mặc định 90
giây.
Các Methods:
- CreateObject: Tạo một instance của server component.
- HTMLEncode: MÃ hóa một chuỗi theo dạng HTML
- MapPath: Aựnh xạ đờng dẫn ảo (là đờng dẫn tuyệt đối trên server hiện
hành hoặc đờng dẫn tơng đối đến trang hiện tại) thành đờng dẫn vật lý
(physical path).
- URLencode: mà hóa một chuỗi (kể cả kí tự escape) theo qui t¾c m·
hãa URL
- VÝ dơ: <% Server. ScriptTimeout = 30 %> : Xác định thời gian chạy
tối đa của một Scriprt là 30 giây.
6. CáC COMPONENT CủA ASP:


Khái niệm: ActiveX Server Component (trớc đây đợc gọi là Automation
Server) đợc thiết kế để chạy trên Web server nh là một phần của ứng
dụng trên Web. Component chứa đựng những đặc trng chung mà chúng
ta không cần phải tạo lại những đặc trng này.Component thờng đợc gọi
từ những file .asp. Tuy nhiên, chúng ta có thể gọi những component này
từ các source khác nhau nh là: một ứng dụng ISAPI, một server
component hoặc một ngôn ngữ tơng thích OLE (OLE-compatible
language).
ASP cung cÊp s½n 5 ActiveX Server Component, bao gåm:
- Advertisement Rotator Component.
- Browser Capabilities Component.
- Database Access Component.
- Content Linking Component.
Sinh viên thực hiện : Nguyễn Đăng Thành

18


Website quản lý Album âm nhạc

GVHD:PGS-TS:
Nguyễn Văn Xuất

- TextStream Component.
T¹o mét instance cđa component:
B¹n cã thĨ t¹o mét instance của một ActiveX Server Component với một
câu lệnh đơn giản. Khi bạn đà tạo đợc một instance của một component, bạn
có thể sử dụng những phơng pháp (method) liên quan đến component đó
hoặc gán (set) và đọc (read) những thuộc tính (property) của nó.

Sau đây là một script sử dụng method: Server.CreateObject để tạo một
instance của Browser Capabilities Component và gán vào biến bc:
<% Set bc=Server.CreateObject("MSWC.BrowserType") %>
Ta cũng có thể sử dụng <OBJECT> tag để tạo một instance component.
Ví dụ sau t¹o ra mét instance cđa Ad Rotator Component :
<OBJECT RUNAT=Server ID=MyAd ROGID = "MSWC.AdRotator">
</OBJECT>

6.1. Advertisement Rotator Component:
Advertisement Rotator Component cho phép ta thực hiện chuỗi các hình
ảnh kế tiếp nhau thay đổi trên màn hình một cách tự động, nó còn cho phép
tạo các link từ các hình ảnh này. Component này rất hữu dụng trong các ứng
dụng có tính chất quảng cáo, giới thiệu.
Ví dụ :
<% Set Ad = Server.CreateObject("MSWC.Adrotator")%>
<%= Ad.GetAdvertisement("/ads/adrot.txt") %>

Advertisement Rotator Component sÏ hiĨn thÞ mét quảng cáo dựa trên
thông tin đợc đặc tả trong Rotator Schedule file. C¸c file cđa component bao
gåm:
Adrot.dll: The Advertisement Rotator Component.
RedirectionFile: Mét file tïy chän cho phÐp Advertisement Rotator
component ghi nhận có bao nhiêu user click mỗi Ad.
Rotator Schedule File: Một text file chứa bảng danh mục và những
thông tin hiển thị cho các bảng quảng cáo. File này nằm trong một th mục ảo
trên server.
Các thuộc tính của Ad Rotator Component:
Border: Chỉ định kích thớc của đờng viền xung quanh bảng quảng cáo.
Clickable: Chỉ định bảng quảng cáo có phải là một hyperlink hay
không.

Targetframe: Chỉ định tên của frame hiển thị bảng quảng cáo.
Advertisement Rotator component có phơng pháp GetAdvertisement để
lấy sự đặc tả của bảng quảng cáo từ file dữ liệu Rotator Schedule file và định
dạng nó thành mét HTML.
6.2. Browser Capabilities Component:
Browser Capabilities Component cung cÊp cho script sự mô tả về khả
năng (Capability) của Web browser ë client. Khi mét browser nèi víi mét
Web server, nã tự động gởi User Agent HTTP header. Header này là một
chuỗi ASCII mà chỉ ra loại browser và số version của nó. Browser
Capabilities Component so sánh header này với những entry trong file
Browscap.ini. Nếu thấy phù hợp thì Browser Capabilities Component thừa
nhận những thuộc tính của browser mà chúng phù hợp với User Agent
header. Nếu component không tìm thấy header trong Browscap.ini, nó sẽ lấy
những thuộc tính của browser mặc định. Nếu component không tìm thấy
Sinh viên thực hiện : Nguyễn Đăng Thành

19


Website quản lý Album âm nhạc

GVHD:PGS-TS:
Nguyễn Văn Xuất

header phù hợp và browser mặc định không đợc chỉ ra trong file
Browserscap.ini, thì nó đặt mọi thuộc tính bằng chuỗi "UNKNOWN". Ta có
thể thêm những thuộc tính mới cho component này đơn giản bằng cách cập
nhật file Browscap.ini.
Các file đợc sử dụng cho Component:
Browscap . dll : The Browser Capabilities Component.

Browscap . ini : Một text file chứa các thông tin về các loại Browser. File
này phải nằm cùng th mục với file Browscap.dll.
6.3. Data Access Component:
Chóng ta cã thĨ sư dơng Data Access Component ®Ĩ truy xt ®Õn
Database tõ mét øng dụng của Web. Chúng ta có thể hiển thị toàn bé néi
dung cđa mét b¶ng (table), cho phÐp ngêi sư dụng xây dựng những Query,
thực hiện những thao tác trên database tõ trong trang Web.
Database Access Component cña ActiveX hay còn gọi là th viện
ADO( Active Data Object). Đây là một điểm mạnh của ASP trong việc phát
triển các ứng dụng Web Database.Các Object của ADO cung cấp cơ chế tạo
ra 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. Hiện nay th viện ADO là một công cụ mạnh
trong việc phát triển các ứng dụng database trên internet.
Một phơng pháp để tạo một connection lâu dài đến Database là tạo một
connection đến Database cho mỗi user và lu trữ connection này trong Session
Object. Tuy nhiên, vì phơng pháp này tăng số idle connection đến Database
nên nó chỉ đợc sử dụng ở những Web Site có lu lợng thông tin thấp (lowtraffic).
ADO đợc thiết kế một cách đơn giản, nó giao tiếp với database thông qua
phơng thức ODBC chúng ta có thể sử dụng chúng với bất kỳ loại
databasenào nếu nh ODBC có driver hỗ trợ. Hiện nay tồn tại driver cho hầu
hết các database nh : Foxpro, Access, SQL Server, ORACLE, v.v
Các Object chính trong ADO đó là: Connection, RecordSet,
Command,ngoài ba object chính này còn có các object con của nó cùng với
các tham số , thuộc tính, phơng thức bên trong. Ta hÃy xem xét từng đối tợng
cụ thể ở phần sau:
Một phơng pháp hữu hiệu hơn để quản lý những connection đến Database
dựa trên Web là sử dụng connection pooling cđa ODBC 3.0. Connection
pooling duy tr× viƯc më, đóng connection đến Database và quản lý
connection chung cho nhiều yêu cầu của những ngời sử dụng khác nhau để
đảm bảo hiệu suất và giảm số idle connection. Đối với mỗi yêu cầu

connection, connection pool đầu tiên xác định idle connection ở trong pool
không. Nếu có connection pool trả về connection đó thay vì tạo một
connection đến Database. Connection không còn nối với Database và ra khỏi
connection pool nếu nó ở trạng thái idle hơn 60 giây. Connection pooling
mặc định ®ỵc cho phÐp trong ASP. Chóng ta cã thĨ cÊm connection pooling
bằng cách đặt Start Connection Pool = 0 trong Registry entry.
Để sử dụng tốt nhất Connection pooling, ta nên mở và đóng Connection
đến database trong mỗi trang Asp.tuy nhiên ta nên đặt những trang property
của Connection một lần và sử dụng lại chúng ở mỗi trang sau.
Ví dụ:
Chúng ta cã thĨ sư dơng "ConnectionString " trong file Global.asa ®Ĩ
chØ ra property cña Connection trong biÕn cè Session_OnStart nh scrip sau:

Sinh viên thực hiện : Nguyễn Đăng Thành

20



×