1
Luận văn:
“xây dựng phần mềm quản lý thiết bị”
2
CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI
I. Mô tảđề tài
Hi- Tech là một trung tâm công nghệ cao của trường Đại Học Bách
Khoa - Hà Nội. Hiện nay trung tâm này được nhà nước và trường Đại Học
Bách khoa Hà Nội đầu tư một số thiết bị tin học khá hiện đại. Với đặc thù
của các thiết bị tin học, công việc sửa chữa và bảo hành là công việc hết sức
cần thiết. Xuất phát từđiều kiện thực tiễn này, trung tâm có nhu cầu xây
dựng một phần mềm quản lý thiết bị trợ giúp cho người quản trị hệ thống có
phương tiện theo dõi quá trình sử dụng thiết bị một cách hiệu quả.
Internet trong thời đại hiện nay phát triển rất mạnh và tiện lợi cho
người dùng, mọi người có thể truy cập Internet ở bất cứđâu vàở bất cứ khi
nào mà chỉ yêu cầu có một cổng Internet. Nhưng vào giữa thập niên 90, khi
bắt đầu bùng nổ sự truy cập Web thìđa số những người sử dụng máy tính đều
có thể truy cập thông tin trên Internet. Tuy nhiên các nhà thiết kế Web gặp
phải khó khăn trong việc đưa thông tin lên Web và cập nhật chúng. Để giải
quyết vấn đềđó ASP (Active Server Page) đã cho phép người sử dụng tương
tác dễ dàng với máy chủ và cơ sở dữ liệu. Trong những công nghệđó cóADO
(ActiveX Data Object), được thiết kếđể cung cấp một phương pháp truy cập
dữ liệu chung cho tất cả mọi người, nó có thể dùng cho bất kỳ ngôn ngữ nào
tương thích với COM (Component Object Model). Những gì cần khi tạo một
trang Web động, sử dụng ASP sẽ làm cho nó có thể kết nối đến tập tin văn
bản hay cơ sở dữ liệu của bạn để lấy và hiển thị thông tin. Bất cứ khi nào
bạn chỉnh sửa dữ liệu, sự thay đổi đó sẽ thay đổi ngay trên trang Web mà
không phải thay đổi bất cứ dòng HTML nào. Công việc này có dễ dàng
không? Thật may may mắn ASP có thể làm tốt nhất và nó cung cấp khả
năng truy xuất đến một tập hợp các thành phần chỉđể thực hiện tác vụ này.
Các thành phần đó chính là ADO- kết hợp sức mạnh của cơ sở dữ liệu với
tính phổ biến của Web để tạo nên nhưng ứng dụng Web.
Chính vì tính phổ biến của Web nên em phát triển phần mềm này dựa
trên giao diện Web và sử dụng ASP kết hợp ADO.
3
II. Khảo sát sơ bộ:
1. Mục tiêu xây dựng:
- Hỗ trợ ba lớp người sử dụng.
- Những người quản trị thao tác trên cơ sở dữ liệu như: Đọc, ghi,
chỉnh, sửa, thống kê.
2. Các yêu cầu đặt ra cho hệ thống.
- Đối với người quản trị thiết bị có các quyền sau:
Bổ sung, sửa và xoá danh mục các thiết bị cần quản lý.
Cập nhật tình trạng thiết bị.
Lập phiếu yêu cầu bảo hành, bảo trì thiết bị.
Thống kê thiết bị theo nhóm, tình trạng.
Tổng hợp lịch sử thiết bị.
- Đối với cán bộ quản lý:
Thống kê thiết bị theo nhóm, tình trạng.
Tổng hợp lịch sử thiết bị.
- Đối với cán bộ quản trị hệ thống:
Bổ sung người sử dụng.
Liệt kê người sử dụng.
Loại bỏ người sử dụng.
Cập nhật thông tin người sử dụng.
3. Mô tả các danh mục các thiết bị.
Các thiết bịđược chia thành các nhóm, có thể bổ sung hoặc sửa đổi với
các nhóm.
Mỗi thiết bị có thể có những nhóm thuộc tính sau:
- Mã số thiết bị.
- Tên thiết bị.
- Chủng loại.
4
- Tính năng kỹ thuật.
- Xuất xứ.
- Serial các bộ phận cấu thành.
- Trạng thái hiện tại.
- Ghi chú.
Mỗi thiết bị cần quản lý có lịch sử hoạt động ( bao gồm các giai đoạn
sửa chữa nếu có hỏng hóc).
5
III. Cấu trúc đồán
Cấu trúc đồán gồm có ba chương
Chương 1: Giới thiệu đề tài
I. Mô tảđề tài
II. Khảo sát sơ bộ
Chương 2: ASP (Active Server Page) vàADO (ActiveX Data Object)
I. Giới thiệu ASP
II. Ngôn ngữ sử dụng lập trình với ASP
III. VBscript
IV. Những vấn đề liên quan đến xây dựng ứng dụng ASP
V. Các đối tượng trong ASP
VI. ADO ( ActiveX Data Object)
Chương 3: Xây dựng ứng dụng
I. Thiết kế cơ sở dữ liệu
II. Mô hình sử dụng Web
III. Thiết kế trang
Chương 4: Kết luận
6
CHƯƠNG 2: ACTIVESERVERPAGEVÀ ADO (ACTIVEXDATAOBJECT)
I.Giới thiệu về Active Server Page:
1. Active Server Page là gì:
Microsoft Activer Server Page là một trường hỗ trợ cho các script
chạy trên máy chủ (Server), cho phép chúng ta tạo ra và chạy 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 Page chạy trên các môi trường sau đây:
- Microsoft Internet Information Server trên window NT Workstation.
- Microsoft Peer Web Services trên Window NT Workstation.
- Microsoft Personal Web Server trên Windows 95, Windows 98
2. Hoạt động của Active Server Page
Mô hình tổng quát hoạt động của ASP
7
3. Cách hoạt động của ASP:
Các Script của ASP được chứa trong các File văn bản (File Text) có
tên mở rộng là .ASP. Trong các Script có chứa các lệnh của một số ngôn
ngữ nào đó.
Khi một Web Browser gửi một yêu cầu (Request) tới một File .ASP
thì Script chứa trong file sẽ chạy để trả kết quả về cho trình duyệt (Browser)
đó. Khi Web Server nhận được yêu cầu (Request) tới một file .ASP thì nó
sẽđọc từđầu tới cuối File .A SP đó, thực hiện các lệnh Script trong đó kết quả
trả về cho Web Browser dưới dạng của một trang HTML.
8
VBscript
Interpretor
Custom
Component
s
Internet
Information
Server
ISAPI
Application
Perl Awk etc
CGI Script
CGI
Application
Giao diện DLL cho ASP
Server Side
Inludes (SSI)
Jscript
Interpretor
Active
Database
Compenents(ADO)
Active Server
Components
ODBC Driver
Active Server Pages (.ASP files)
DATA
Mạng
Internet Or
Intranet
Mô hình chi tiết hoạt động của ASP
9
4.Cấu trúc của 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ư:
- Văn bản (Text)
- Thẻ HTML (HTML Tags)
- Lệnh Script (Script commands)
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à sử 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ể chèn các thành phần HTML động vào các Web tuỳ vào
từng trường hợp cụ thể.
ASP cho ta các tính chất sau:
- Có thể kết hợp với file HTML.
- Dễ sử dụng, dễ tạo các Script, 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 đối tượng được cài đặt sẵn
(build – in object) rất tiện dụng: Request, Response, Server,
Appllication, 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 máy chủ (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
(File text) có phần mở rộng là .ASP, các File này được đặt trong một thư
mục ảo (Virual Dirrectory) của Web Server.
Các ứng dụng ASP dễ tạo vì chúng 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ì ngôn ngữ nào,
chỉ cần có Script 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
10
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 thành phần (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 tương thích với Web Browser
chuẩn.
11
II. Ngôn ngữ lập trình sử dụng với ASP:
1. Các lênh Script (Script Command) của ASP :
Một script là một chuỗi các lệnh gán biến, các lệnh yêu cầu Web
Server gửi thông tin đến một trình duyệt (Browser) (Như giá trị biến). Các
lệnh này kết hợp lại thành thủ tục (Procedure) hay hàm (Function) để thực
hiện một công việc cụ thể. 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ó thể chèn vào các
lệnh của ngôn ngữ Script nào đó. Thực ra nó là một file văn bản (File Text)
nhưng các văn bản (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 những 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 khi đó.
ASP quy định một vùng Script nằm giữa hai dấu <% và %> hoặc trong
vùng của hai Tags <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ệnh trình muốn ASP thực hiện và
nội dung người đó muốn tạo ra trên các 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ư mọi ngôn
ngữ lập trình khác như C, Pascal , chỉ cóđiều 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, ); 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 văn bản (Text) chạy
thăng trong môi trường của ASP.
Ví dụ minh hoạ:
<%
Myname = “pham van bieu”
If Time >= # 12:00:00 am # AND time < # 12:00:00pm # Then
%>
12
<font face = “.vntime” color = “#ff0000” > chao buoi sang “ &
myname”
<% else %>
xin chao
<% end if %>
2.Ngôn ngữ Script (Script luanguage) và Script Engine:
Script của ASP được cấu thành từ các lệnh của ngôn ngữ Script (Script
Language) nào đó, xen lẫn vào đó là nội dung dạng HTML, để trả về kết quả
cuối cùng ở dạng HTML.
Ngôn ngữ Script (Script 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 dểđị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 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 ngôn ngữ Script (Scripting Language) và các
ngôn ngữ lập trình làở chỗ các luật và cú pháp của ngôn ngữ Script
(Scripting Language) linh hoạt và 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 Script Engine và phân phối các Script
trong các file .ASP cho các máy (Engine) này để xử lý. Để sử dụng được một
ngôn ngữ Script (Scripting Language) cùng với ASP ta phải cài đặt Script
Engine tương ứng vào Web Server. Ví dụ như Visual Basic Script (VBscript)
là Script Language mặc định của ASP, do đó ta phải có VBscript. tương tự
ASP có thể cung cấp môi trường Script cho các ngôn ngữ script (Scripting
Language) như Jscript, Rexx, Perl,
ASP cho phép người lập trình dùng nhiều ngôn ngữ script (Scripting
Language) cùng lúc để tạo các thủ tục phức tạp mà không phải bận tâm các
Browser có trợ giúp các ngôn ngữ script (Scripting Language) hay không.
Vì tất cả các Script đều được thực thi ở máy chủ (Server). Không những thế
13
ta còn có thể dùng nhiều ngôn ngữ script (Scripting Language) trong cùng
một file .ASP chỉ cần bằng cách một thẻ HTML (HTML Tag) để khai báo
ngôn ngữ Script nào được dùng.
ASP mặc định sử dụng ngôn ngữ script (Scripting Language) chính (
Primary Scripting Language) là VBscript. Tuy nhiên ta vẫn có thểđịnh lại
ngôn ngữ script (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 ngôn ngữ script (Scripting language) chính trong toàn bộ
môi trường ASP ta phải thay đổi tên ngôn ngữ script (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ể thay đổi lại hay
Jscript,
Để thay đổi ngôn ngữ script (Script Language) chính chỉ trong một file
.ASP nào đó, ta chỉ cần đặt ởđầu File một thẻ ( Tag) đặc biệt có dạng:
<%@ LANGUAGE= Scripting language%>
với ngôn ngữ script (Scripting Language) là tên ngôn ngữ script (Scripting
Language) muốn đặt làm ngôn ngữ script (Scripting Language) chính như
VBscript, Jscript,
3. Viết các thủ tục ( Procedure) với 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 ngôn ngữ script (Scripting Language) trong 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 thủ tục (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 thủ tục (Procedure) để dùng nhiều
lần trong các Script. Có thểđịnh nghĩa các thủ tục (Procedure) bên trong các
dấu phân cách (Delimeter) nếu như cóđược viết bằng ngôn ngữ script
(Scripting Language) chính. Nếu không thì có dùng trong các thẻ (Tag).
Ta cóđịnh nghĩa các thủ tục (Procedure) trong các file .ASP có gọi đến
nó trong các file riêng chỉ chứa các thủ tục ( Procedure) rồi Include File đó
14
vào khi cần gọi thủ tục (Procedure) đó. Thường các file Include trong ASP
qui ước cóđuôi .INC.
15
III. Visualbasic Script Language (VBscript)
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 các Script chạy trên trình duyệt (Browser) của máy khách
(client) (MS Internet Exploer) nay trên Web Server (MS Internet Information
Server).
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 Application. VBscript giao tiếp với ứng dụng chủ
(Host Application) bằng cách sử dụng các ActiveX Scripting.
2. Các kiểu dữ liệu của VBscript:
VBscript chỉ có một loại sữ liệu được gọi là 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 tuỳ theo cách sử
dụng. Tuy nhiên nó cũng là kiểu dữ liệu trả về bởi tất cả các hàm, ởđây đơn
giản nhất là Variant có thể chứa thông tin số hoặc chuỗi tuỳ theo văn cách
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 hàm sốđể chuyển từ Subtype này sang Subtype khác
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ể 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 người sử dụng
chọn (User click) vào một đối tượng (Object) trên một trang Web nào đó. Vị
trí của biến không quan trọng, ta chỉ truy xuất 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ụ:
16
Dim lickcount
Tên biến phải bắt đầu bằng kí tự chữ, trong tên tiến không chứa dấu
chấm, chiều dài tối đa là 255 kí tự và một biến là duy nhất trong tầm hoạt
động mà nóđược định nghĩa.
Tầm hoạt động và thời gian sống của một biến: Có hai loại biến là
Procedure Level và Script Level tương ứng với hai tầm hoạt động là cục bộ
(Local) và Script Level. Thời gian sống của một biến được tính từ khi
nóđược khai báo đến khi Script kết thúc, đối với biến cục bộ (Local) là từ khi
nóđựơc khai báo đến khi thủ tục (Procedure) chứa nó kết thúc.
Biến trong VBscript có thể là biến đơn hay biến dãy. Khi khai báo
Dim(10) thì Script tạo ra một dãy có 11 phần tử ( vì phần đầu có chỉ số là 0).
Một biến dãy có thẻ mở rộng tới 60 chiều, nhưng thường dùng 2 đến 4
chiều. Có 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 Mayarray (30) ‘giữ lại các giá trị trong dãy cũ.
4. Hằng trong VBscript.
Hằng là một tên có nghĩa đại diện cho một số hay một 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 mysting= “this my string”
17
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ý so 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ừ rái qua phải):
- Số học: ^, - (âm), * , / , mod, + , - , &, \ (chia lấy số nguyên).
- So sánh: =, <>, <, >, <= ,>= , IS.
- Lý luận: 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 qua phải.
6. Các cấu trúc điều khiển:
If… Then … Else… Endif
Do… Loop
While… Wend
For … Next
7. Thủ tục (Procedure) trong VBscript:
Có hai thủ tục (Procuduce) 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 nhưng 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 ngôn ngữ Script còn rất nhiều hàm tạo nên sự sinh động cho
chương trình.
18
IV. Những vấn đề liên quan đến việc xây dựng ứng dụng ASP:
Khi xây dựng một ứng dụng trên một môi trường ASP để chương trình
sinh động ta cần lưu ý khi:
- Xây dựng file Global.asa
- Viết mã Script
- Thêm các đối tượng ( Object) có sẵn vào trong chương trình.
- Sử dụng các ActiveX Component
- Lấy thông tin người sử dụng (User), gửi thông tin người sử dụng (
User).
1. File Global.asa:
File Global.asa là một file tuỳ chọn, trong đó bạn có thể khai báo các
Script đáp ứng biến cố, các biến có tầm hoạt động là Application (ứng dụng)
hay Session (phiên). Đây không phải là file nhìn thấy bởi người sử dụng
(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 đặ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 Event, Session
Event, định nghĩa các đối tượng.
Nếu bạn viết các Script không được bao bởi thẻ (Tag) <Script>, hoặc
định nghĩa các đối tượng không có tầm hoạt động Application hay Session
thì máy chủ (Server) sẽ trả về lỗi. Máy chủ (Server) sẽ 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ằng bất cứ ngôn
ngữ nào có hỗ trợ Script. Nếu các Script được viết bởi cùng một ngôn ngữ
thì có thể hợp chúng trong cùng một thẻ (Tag) <Script> duy nhất.
Khi bạn thay đổi File Global.asa và ghi lại nó thì máy chủ ( Server)
hoàn tất việc xử lý những nhu 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 máy chủ (Server) từ chối và ra
19
thông báo : “The request cannot be procesed while the application is being
restarted”, sau khi các yêu cầu (Request ) được xử lý xong máy chủ (Server)
xoá bỏ tất cả các phiên (Session) đang chạy, gọi biến cố Session_Onend
tương phiên (Session) mà nó xoá, tiếp theo gọi biến cố Application_Onend.
File Global.asa được biên dịch lại, yêu cầu (Request) của người sử dụng
(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 lưu lại những file được Include trong file Global.asa thì
không gây lên biến cố này, muốn khởi động lại phải ghi lại file Global.asa.
các thủ tục trong file Global.asa chỉ có thể gọi trong từ các Script trong biến
cố: Application_Onstart, Application_Onend, Session_Onstart,
Session_Onend. Các thủ tục này không thể gọi trong 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 Include để chèn chúng
vào các trang ASP có gọi thủ tục đó. Những File Include thường có phần mở
rộng .INC.
2. Khai báo đối tượng và biến cố :
Biến cố Application:
Application_Onstart: Xảy ra trước khi phiên (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 trang
ASP của ứng dụng. Chỉ có các đối tượng ứng dụng (Application) và các đối
tượng cài đặt trong máy chủ ( 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:
<Script language = Scriptlanguage Runat = Server>
Sub Application_Onstart
…
End Sub
20
</Script>
- Tham số Script Language: Chỉđịnh ngôn ngữ Script dùng để viết
Script. 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 ứng dụng
(Application) hay các đối tượng được cài đặt sẵn trong máy chủ (Server
Build - In) là có thể sử dụng.
Cú pháp
<Script language = Scriptlanguage Runat=server>
Application_onend
End sub
</Script >
Tham số Script language chỉđịnh ngôn ngữ Script dùng để viết Script.
Thường sử dụng biến cố này để xoá, cập nhật lại các thông tin của hệ thống
Biến cố session: Web Server tựđộng tạo một phiên (Session) cho một
người sử dụng cho một trang Web tương ứng khi được yêu cầu. Máy chủ
(Server) sẽ xoá bỏ một phiên (Session) khi nó vượt thời gian (Time- Out)
hoặc phương thức (Method ) được gọi.
Những biến cố của phiên (Session):
Session_Onstart: Xẩy ra khi máy chủ (Server) tạo một phiên (Session)
mới. Bạn phải khai báo biến có tầm hoạt động trong biến cố. Ta có thể tham
khảo tất cả các đối tượng được cài đặt (Build - In) trong biến cố này
Cú pháp:
<Script language = Scriptlanguage Ranat = Server>
Sub Session_Onstart
…
End Sub
</Script>
21
Tham số: Script Language chỉđịnh ngôn ngữ Script. Ta có gọi phương
thức Redirect trong biến cố Session_Onstart, chẳng hạn để bảo đảm người sử
dụng muốn mở ngay sang một trang khác trang được chỉđịnh, thì Redirect
sang trang đã chỉđịnh. Tuy nhiên cần chúý là những Browser không hỗ trợ
Cookies thì nó sẽ không lưu lại SessionID của nó nên bất cứ khi nào mở một
trang mới thì máy chủ (server) lại tạo một trang 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 phiên (Session) được đóng hoặc vượt
quá thời gian (Timeout). Dùng biến cố này để xoá các biến đãđặt trong quá
trình sử dụng của người sử dụng (User).
Cú pháp:
<Script language = Scriptlanguage Runat = Server>
Sub Session_Onend
…
End Sub
</Script>
Khai báo đối tượng <Object>
Bạn có tạo các đối tượng tầm hoạt động là phiên (Session) hay ứng
dụng (Application) trong file Global.asa. Đối tượng này thực sựđược tạo ra
khi máy chủ ( Server) xử lý một Script có tham khảo đến nó.
Cú pháp:
<Object Runat = Server Scope = Scope ID = Identifier
{progid=proid | classid= “classid”/>
22
</Object>
- Tham số:
- Scope: Chỉđịnh tầm hoạt động của đối tượng, là “Session” hay
“Application”
- Indentifiler: Tên Instance của đối tượng
- ProgID: Một định danh được kết hợp với định danh Class. ProgramID
hay ClassID phải đựơc chỉđịnh trong khai báo <OBJECT>.
- ClassID: định danh duy nhất cho một đối tượng lớp OLE. ProgramID
hay classID phải đựơc chỉđịnh trong khai báo <OBJECT>.
Ví dụ:
<OBJECT>
CLASSID = “clsid:79076FBO-B72” ID= “spntest” CODEBASE= “http”//
activeX mirosoft.com.control”>
</OBJECT>
23
V. CÁCĐỐITƯỢ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 quy 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 những nhu cầu tạo ra những đố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ý 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 phải tạo Instance. Chúng được gọi là các đối tượng được cài
đặt sẵn (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ừ máy chủ (Server) gửi cho
Web Browser.
Server: Là môi trường máy chủ (Server) nơi ASP đang chạy, chứa
các thông tin về tác vụ và hệ thống.
Application:Đạ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 người sử dụng (User)
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ừ người sử dụng (User).
Ví dụ khi người sử dụng gửi (User submit) 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 người
sử dụng (User) gửi tới bằng giao thức HTTP như sau:
- Các thông tin chuẩn nằm trong các biến Serve
- 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
24
- Các Client Certificates
Các cú pháp tổng quát: Request.(Cllectionname)( Variable)
Đối tượng Request: Có 5 Collection
- Client Certificate: Nhận Certificate Fields từ Request của Web
Browser. Nếu Web Browser sử dụng http:// để kết nối (Connect) với máy
chủ ( 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à một giá trịđược gửi lên theo sau dấu hỏi (?) trong HTML Request.
- Form: Nhận 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 HTML Request
- Server Variable: Nhận giá trị của các biến trong môi trường.
2. Đối tượng Response:
Định nghĩa: Việc gửi thông tin tới cho người sử dụng (User)
sẽđược thực hiện nhờđối tượng Response.
Cú pháp tổng quát: Response.Clloection\ 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ó nhận giá trị mới.
Các thuộc tính (Properties):
- Buffer: Chỉ ra trang Web Output được giữ lại đệm Buffer hay
không. Khi một trang được đệm lại, máy chủ (Server) sẽ không gửi một đáp
ứng nào cho trình duyệt (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 thức FLUSH hay END được gọi.
- ContentType: Chỉ ra HTML Contenttype cho đáp ứng (Response).
Nếu không có Contenttype được chỉ ra, chỉ mặc định là “Text / HTML”.
- Expires: Chỉđịnh số thời gian trước khi một trang được đệm
(Cached) trên một tình duyệt (Browser) hết hạn.
- ExpiresAbsolute: Chỉ ra ngày giờ của một trang được đệm (Cached)
trên trình duyệt (Browser) hết hạn.
25
- Status: Chỉ ra trạng thái của máy chủ (Server). Giá trị trạng thái
được định nghĩa trong đặc tả HTTP.
Các phương thức ( Methods):
- AddHeader (Tên, Nộidung): Tạo ra một phần đầu (Header ) HTTP
tuỳ biến sử dụng các giá trị tên và nội dung và thêm nó vào đáp ứng. Không
thể thay đổi một phần đầu (Header) đã tồn tại có cùng tên. Một khi đã thêm
một phần đầu (Header), không thể thu hồi nó. Cần phải sử dụng trước khi
gửi bất cứ trang nội dung nào (Text hay HTML) đến máy khách (Client).
- AppendToLog (“ String ”): Thêm một chuỗi vào cuối Log File của
Web Server cho yêu cầu (Request) này.
- Binarywrite: Xuất thông tin Output HTML dạng nhị phân (Binary).
- Clear: Xoáđệm Output HTML. Tuy nhiên, phương thức này chỉ
xoáđáp ứng phần thân ( Response Body) mà không xoáđáp ứng phần đầu
(Response header). Phương thức này sẽ lỗi nếu nhưđáp ứng (Response) chưa
thiết lập thành True.
- End dừng sử lý file .ASP và trả về kết quả hiện tại.
- Flush: Gửi thông tin trong Buffer cho máy khách (Client). Phương
thức này sẽ sinh lỗi nếu Response.Buffer chưa thiết lập thành True.
- Redirect: Gửi một thông báo cho trình duyệt ( Browser) định hướng
lại cho đến một URL khác.
- Ghi một biến ra HTML Output như là một chuỗi.
3. Đối tượng Session:
- Định nghĩa: Chúng ta có thể sử dụng một đối tượng phiên (Object
Session) để lưu trữ thông tin cần thiết cho một người sử dụng ( User). Những
biến được lưu trữ trong đối tượng (Object) vẫn tồn tại khi người sử dụng
(User) nhảy từ trang này sang trang khác trong ứng dụng. Web Server