BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN

MÔN HỌC:

THIẾT KẾ WEB

Tổng số tiết: 60 tiết Giáo viên giảng dạy: Nguyễn Trung Phú

Bài 1:Giới thiệu về ASP

• ASP (Active Server Pages) lµ mét m«i tr-êng lËp
tr×nh cung cÊp cho viÖc kÕt hîp HTML, ng«n ng÷ kÞch b¶n (Scripting) nh- VBScript, Javacript, vµ c¸c thµnh phÇn ®-îc viÕt trong c¸c ng«n ng÷ nh»m t¹o ra mét øng dông Internet m¹nh mÏ vµ hoµn chØnh

SLT 2006

2

Bài 1:Giới thiệu về ASP(…)

I. Trang ASP

• PhÇn më réng lµ: * .ASP • Nội dung chứa:
-C¸c thÎ HTML -C¸c kÞch b¶n: VBSCript, JavaScript -C¸c c©u lÖnh ASP script • C¸ch khai b¸o: -C¸c script cña ASP ®-îc n»m trong cÆp thÎ <% %> • C«ng nghÖ ASP: ®-îc x©y d-ng trùc tiÕp bªn trong ; IIS(WinNT, 2000), Personal Webserver
SLT 2006 3

Bài 1:Giới thiệu về ASP(tiếp)

II.Ho¹t ®éng cña trang ASP
Trang HTML tÜnh:

SLT 2006

4

Bài 1:Giới thiệu về ASP(…)

II.Ho¹t ®éng cña trang ASP…
Trang web ®éng (Dynamic):

SLT 2006

5

Bài 1:Giới thiệu về ASP(…) III. Giíi thiÖu vÒ IIS- Internet Information Server
1. Kh¸I niÖm vÒ IIS

• Microsoft Internet Information Server lµ mét øng dông
server chuyÓn giao th«ng tin b»ng viÖc sö dông giao thøc chuyÓn ®æi siªu v¨n b¶n HTTP

SLT 2006

6

Bài 1:Giới thiệu về ASP(…) III. Giíi thiÖu vÒ IIS- Internet Information Server…
2. Ho¹t ®éng cña IIS

• Web, vÒ c¬ b¶n thùc sù lµ mét hÖ thèng c¸c yªu cÇu
(Request) vµ c¸c ®¸p øng (Response). IIS ph¶n håi l¹i c¸c yªu cÇu ®ßi th«ng tin cña Web Browser. IIS l¾ng nghe c¸c yªu cÇu ®ã tõ phÝa Users trªn mét m¹ng sö dông WWW.
SLT 2006 7

Bài 1:Giới thiệu về ASP(…) III. Giíi thiÖu vÒ IIS- Internet Information Server…
3. Cµi ®Æt IIS

• Bước1:
Vµo Control Panel=>Add/removeprograms=>Add/remove Windows Components=>Internet Information Services (IIS) vµ chän cµi ®Æt phÇn nµy

SLT 2006

8

Bài 1:Giới thiệu về ASP(…) III. Giíi thiÖu vÒ IIS- Internet Information Server…
3. Cµi ®Æt IIS

• Bước2:C¸ch t¹o mét Virtual Directory trong IIS:
Vµo Web Server tõ Control Panel=> Administrative Tools=>Internet Services Manager(hoặc Computer Management)=> Default Website (Nõu thÊy no ®ang stop th× start nã lªn) => New=> Virtual Directory

SLT 2006

9

Bài 1:Giới thiệu về ASP(…) III. Giíi thiÖu vÒ IIS- Internet Information Server…
3. Cµi ®Æt IIS…

• Bước2:C¸ch t¹o mét Virtual Directory trong IIS:

SLT 2006

10

Bài 1:Giới thiệu về ASP(…) IV. ViÕt trang ASP
Viết trang Hello.asp tại phía Server <html> <head> <title>New Page 1</title> </head> <body> <% response.write"Hello!“ „Hiển thị lời chào Hello %> </body> </html>
SLT 2006 11

Bài 1:Giới thiệu về ASP(…) V. Truy cËp trang ASP

• Mở trình duyệt (ví dụ Internet Explorer), trên thanh địa chỉ
gõ địa chỉ sau đây để truy cập vào trang Asp ta đã tạo ra: http://localhost/test/Hello.asp

• Lưu ý: trang asp phải chạy trên web server chứ không
thể open trực tiếp với browser như các trang html.

SLT 2006

12

Bài 1:Giới thiệu về ASP(…) V. Truy cËp trang ASP…

• Cách Webserver xử lý một trang ASP

ASP engine xử lý file asp trước khi trả về cho browser
SLT 2006 13

Bài 1:Giới thiệu về ASP(…) V. Truy cËp trang ASP…

• Kết quả biên dịch một trang ASP tại phía máy client

SLT 2006

14

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT

SLT 2006

15

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT

I. VBScript là gì?

• Là một ngôn ngữ kịch bản, nó là tập con của ngôn ngữ
Visual Basic cho ứng dụng , được phát triển bởi Microsoft để thêm khả năng tương tác cho trang Web.

SLT 2006

16

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… II. Sử dụng VBScript trong trang Web?
<HTML> <HEAD><TITLE>Loi chao</TITLE></HEAD> <BODY> <SCRIPT language="VBScript" > <!-Các câu lệnh VBScript --> </SCRIPT> </BODY> </HTML>
SLT 2006 17

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… Ví dụ
<HTML> <HEAD><TITLE>Loi chao</TITLE> </HEAD> <BODY> <SCRIPT language="VBScript" > <!--MsgBox"xin chao cac ban" --> </SCRIPT> </BODY> </HTML>
SLT 2006 18

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… III. Biểu thức, toán tử, kiểu và biến
1. Cách ghi chú trong VBSScript

• Chú thích trong VBScript được đặt sau dấu nháy đơn
hoặc sau từ khoá Rem.

SLT 2006

19

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… III. Biểu thức, toán tử, kiểu và biến…
2. Các kiểu dữ liệu cơ bản Boolean Byte Currency Kiểu logic: giá trị gồm True hoặc False Số nguyên từ 0->255

Kiểu số từ giá trị -922,337,203,685,477.5808 đến giá trị 922,337,203,685,477.5808 Date(Time) Kiểu ngày giờ từ Jan,1,100 đến Dec 31,9999 Double String
SLT 2006

Số thực Kiểu chuỗi
20

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… III. Biểu thức, toán tử, kiểu và biến…
3. Các Toán tử

• Toán tử gán
To¸n tö g¸n lµ dÊu b»ng (=) nh»m thùc hiÖn viÖc g¸n gi¸ trÞ cña to¸n h¹ng bªn ph¶i cho to¸n h¹ng bªn tr¸i

SLT 2006

21

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… III. Biểu thức, toán tử, kiểu và biến…
3. Các Toán tử…

• Toán tử So sánh
= <> > >= < <=
SLT 2006

So s¸nh b»ng So s¸nh kh¸c So s¸nh lín h¬n So s¸nh lín h¬n hoÆc b»ng So s¸nh nhá h¬n So s¸nh nhá h¬n hoÆc b»ng
22

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… III. Biểu thức, toán tử, kiểu và biến…
3. Các Toán tử…

• Toán tử số học
Bªn c¹nh c¸c to¸n tö céng (+), trõ (-), nh©n (*), chia (/) th«ng th-êng, VBScript cßn hç trî c¸c to¸n tö sau ®©y: \ Mod & Phép chia lấy phần nguyên Phép chia lấy phần dư Phép nối chuỗi

SLT 2006

23

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… III. Biểu thức, toán tử, kiểu và biến…
3. Các Toán tử…

• Toán tử logic
And Lµ to¸n tö logic AND, trả l¹i gi¸ trÞ ®óng nÕu cả expr1 vµ expr2 cïng ®óng Lµ to¸n tö logic OR, trả l¹i gi¸ trÞ ®óng nÕu Ýt nhÊt mét trong hai expr1 vµ expr2 ®óng. Lµ to¸n tö logic phñ ®Þnh gi¸ trÞ cña expr.
24

Or

Not

SLT 2006

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… III. Biểu thức, toán tử, kiểu và biến…
4. Biến -BiÕn toµn côc: Cã thÓ ®-îc truy cËp tõ bÊt kú ®©u trong øng dông. -BiÕn côc bé: ChØ ®-îc truy cËp trong ph¹m vi ch-¬ng tr×nh mµ nã khai b¸o. Có ph¸p: Dim <Tªn biÕn> [as kiểu dữ liệu] Dim MyVar, MyNum ' Khai báo 2 biến.

SLT 2006

25

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… III. Biểu thức, toán tử, kiểu và biến…
5. Hằng -Hằng số:Là thành phần có giá trị không đổi Có ph¸p: Const <Tªn hằng>=Gi¸ trị VÝ dô: Const PI=3.1415967

SLT 2006

26

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… III. Biểu thức, toán tử, kiểu và biến…
6.Làm việc với mảng -Khai báo biến kiểu mảng: Dim <Tên biến>([kích thước của mảng]) Dim Names(9) ' Khai báo 1 mảng Names có 10 phần tử. Dim Names() ' Khai báo mảng động. Dim Names(2,1) ' Khai báo mảng hai chiều.

SLT 2006

27

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… IV. Các lệnh điều khiển của VBscript
1.Câu lệnh điều kiện và lựa chọn -Câu lệnh If...Then if <®iÒu kiÖn> Then //C¸c c©u lÖnh víi ®iÒu kiÖn ®óng End If

SLT 2006

28

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… IV. Các lệnh điều khiển của VBscript …
1.Câu lệnh điều kiện và lựa chọn… -Câu lệnh If...Then...Elseif If <®iÒu kiÖn 1> Then //C¸c c©u lÖnh víi ®iÒu kiÖn 1 ®óng elseIf <điều kiện 2> Then //C¸c c©u lÖnh víi ®iÒu kiÖn 2 đóng ……………………………………………….. Else //C¸c c©u lÖnh khi kh«ng ®iÒu kiÖn nµo đóng End If

SLT 2006

29

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… IV. Các lệnh điều khiển của VBscript …
1.Câu lệnh điều kiện và lựa chọn… -Câu lệnh select case select case <BiÓu thøc> Case <điều kiện 1> //C¸c c©u lÖnh 1 Case <điều kiện 2> //C¸c c©u lÖnh 2 ……………………………………... Case else //C¸c c©u lÖnh khi kh«ng ®iÒu kiÖn nµo tho¶ m·n End case
SLT 2006 30

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… IV. Các lệnh điều khiển của VBscript …
2.Câu lệnh lặp -Câu lệnh For...Next For biến_đếm = bắt_đầu To kết_thúc [Step bước_nhẩy] [nhóm_lệnh] Next

SLT 2006

31

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… IV. Các lệnh điều khiển của VBscript …
2.Câu lệnh lặp… -Câu lệnh For...Next
Thành phần biến_đếm bắt_đầu kết_thúc bước_nhảy nhóm_lệnh Mô tả Biến kiểu số dùng như bộ đếm lặp. Không được dùng biến kiểu mảng. Giá trị ban đầu của biến đếm. Giá trị cuối cùng của biến đếm. Số lượng tăng thêm của biến đếm sau mỗi lần lặp.Nếu không chỉ định thì bước nhảy là 1. 1 hoặc nhiều câu lệnh mà For và Next sẽ thực hiện theo số lần lặp đã chỉ định.
32

SLT 2006

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… IV. Các lệnh điều khiển của VBscript …
2.Câu lệnh lặp… -Câu lệnh For...Next
<HTML><HEAD><TITLE>Hien thi</TITLE> </HEAD> <BODY><SCRIPT language="VBScript" > <!-Dim i for i=1 to 9 document.write(i) Next --></SCRIPT></BODY></HTML>
SLT 2006 33

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… IV. Các lệnh điều khiển của VBscript …
2.Câu lệnh lặp… -Câu lệnh For Each...Next For Each thành_phần In nhóm [nhóm_lệnh] Next

SLT 2006

34

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… IV. Các lệnh điều khiển của VBscript …
2.Câu lệnh lặp… -Câu lệnh For Each...Next
Thành phần thành_phần nhóm nhóm_lệnh Mô tả Biến dùng để lặp với tất cả các thành phần của tập hợn(collection) hoặc array. Tên của tập hợp hoặc array. 1 hoặc nhiều lệnh được thực hiện lặp theo từng mục (item) trong nhóm.

SLT 2006

35

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… IV. Các lệnh điều khiển của VBscript …
2.Câu lệnh lặp… -Câu lệnh Do...Loop: thực hiện lặp trong khi ĐK đúng Do While điều_kiện đúng [khối_lệnh] Loop

SLT 2006

36

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… IV. Các lệnh điều khiển của VBscript …
2.Câu lệnh lặp… -Câu lệnh Do...Loop: thực hiện lặp trong khi ĐK đúng… Do [khối_lệnh] Loop While điều_kiện đúng

Chú ý:vòng lặp thực hiện ít nhất một lần

SLT 2006

37

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… IV. Các lệnh điều khiển của VBscript …
2.Câu lệnh lặp… -Câu lệnh Do...Loop: thực hiện lặp cho đến khi ĐK đúng Do Until điều_kiện đúng [khối_lệnh] Loop

SLT 2006

38

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… IV. Các lệnh điều khiển của VBscript …
2.Câu lệnh lặp… -Câu lệnh Do...Loop: thực hiện lặp cho đến khi ĐK đúng… Do [khối_lệnh] Loop Until điều_kiện đúng

Chú ý:vòng lặp thực hiện ít nhất một lần

SLT 2006

39

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… V. Thủ tục và hàm trong VBscript
1.Hàm trong Vbscript Function tên_hàm (danh_sách_đối_số) [nhóm_lệnh] End Function 2.Thủ tục trong Vbscript Sub tên_hàm (danh_sách_đối_số) [nhóm_lệnh] End Sub Thủ tục iống như hàm nhưng không trả về giá trị.
SLT 2006 40

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong VBscript
1. Hàm Abs(number): trả về trị tuyệt đối của number Ví dụ: Dim MyNumber MyNumber = Abs(50.3) ' Trả về 50.3. MyNumber = Abs(-50.3) ' Trả về 50.3. 2. Hàm Array(arglist): trả về 1 biến chứa mảng, arglist là danh sách giá trị của mảng cách nhau bằng dấu phẩy(,). Ví dụ: Dim A A = Array(10,20,30)
SLT 2006

B = A(2) ' B = 30.
41

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
3. Hàm CStr(expression): chuyển biểu thức số expression sang chuỗi. Ví dụ: Dim MyDouble, MyString MyDouble = 437.324 ' MyDouble là 1 Double. MyString = CStr(MyDouble) ' MyString chứa "437.324".

SLT 2006

42

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
4. Hàm Date trả về ngày hiện tại Ví dụ Dim MyDate MyDate = Date ' MyDate chứa ngày hiện tại 5. Hàm DateValue(strdate): trả về ngày từ chuỗi dạng ngày Ví dụ: Dim MyDate MyDate = DateValue("September 11, 1963") ' Trả về 1 date.

SLT 2006

43

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
6. Hàm Eval Cú pháp: [result = ]Eval(expression) Thành phần result expression Mô tả Tùy chọn. Biến nhận kết quả trả về khi Eval thực hiện Phải có. Chuỗi chứa biểu thức VBScript bất kỳ.

SLT 2006

44

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
6. Hàm Eval…
Ví dụ Sub GuessANumber Dim Guess, RndNum RndNum = Int((100) * Rnd(1) + 1) Guess = CInt(InputBox("Enter your guess:",,0)) Do If Eval("Guess = RndNum") Then MsgBox "Congratulations! You guessed it!" Exit Sub Else Guess = CInt(InputBox("Sorry! Try again.",,0)) End If Loop Until Guess = 0 End Sub

SLT 2006

45

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
7. Hàm LCase(string): Chuyển chuỗi string sang chữ thường Ví dụ: Dim MyString Dim LCaseString MyString = "VBSCript" LCaseString = LCase(MyString) ' LCaseString chứa "vbscript"

SLT 2006

46

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
8. Hàm UCase(string): Chuyển chuỗi string sang chữ hoa Ví dụ: Dim MyString Dim LCaseString MyString = "VBSCript" LCaseString = UCase(MyString) ' LCaseString chứa “VBSCRIPT"

SLT 2006

47

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
9. Hàm Len(String|Varname): Trả về độ số lượng ký tự chứa trong String hoặc biến Varname

Ví dụ: Dim MyString MyString = Len("VBSCRIPT") ' MyString chứa 8.

SLT 2006

48

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
10. Hàm LTrim(String): trả về chuỗi String nhưng đã cắt bỏ các khoảng trắng trước(bên trái) chuỗi 11. Hàm RTrim(String): trả về chuỗi String nhưng đã cắt bỏ các khoảng trắng sau(bên phải) chuỗi 12. Hàm Trim(String): trả về chuỗi String nhưng đã cắt bỏ các khoảng trắng trước và sau(trái & phải) chuỗi

SLT 2006

49

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
13. Hàm Mid(string, start[, length]): trả về chuỗi cắt ra length ký tự từ chuỗi string bắt đầu từ vị trí start. Nếu length không chỉ ra thì lấy đến cuối chuỗi. 14. Hàm Left(String, Length): Trả về Length ký tự bên trái của String 15. Hàm Right(String, Length): Trả về Length ký tự bên phảii của String

SLT 2006

50

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
Ví dụ: Dim MyVar MyVar = Mid("VB Script is fun!", 4, 6) ' MyVar chứa "Script". Dim MyString, LeftString MyString = "VBSCript" LeftString = Left(MyString, 3) ' LeftString chứa "VBS". Dim MyString, RightString MyString = "VBSCript" RightString = Right(MyString, 6) ' LeftString chứa "SCript".

SLT 2006

51

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
16. Hàm Now: Trả về ngày và giờ hiện tại 17. Hàm Space(Number): Trả về 1 chuỗi có Number ký tự trắng Ví dụ: Dim MyString MyString = Space(10) ' Trả về 1 chuỗi có 10 khoảng trắng. MyString = "Hello" & Space(10) & "World" ' Chèn 10 khoảng trắng giữa 1 chuỗi.

SLT 2006

52

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
18. Hàm Time: Trả về giờ hiện tại 19. Hàm TimeValue(Time): Trả về giờ từ chuỗi giờ Time Ví dụ: Dim MyTime MyTime = TimeValue("4:35:17 PM") ' MyTime chứa 4:35:17 PM.

SLT 2006

53

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
23. Hàm MsgBox Mô tả Hiển thị hộp thoại thông báo, chờ người sử dụng click 1 nút và trả về 1 giá trị. Cú pháp MsgBox(thông báo, nút hiển thị, tiêu đề)

SLT 2006

54

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
20. Hàm MsgBox… Nút hiển thị
Hằng vbOKOnly vbOKCancel vbAbortRetryIgnore vbYesNoCancel vbYesNo vbRetryCancel
SLT 2006

Giá trị 0 1 2 3 4 5

Mô tả Chỉ hiện nút OK. Hiện OK và Cancel . Hiện Abort, Retry, và Ignore . Hiện Yes, No, và Cancel . Hiện Yes và No . Hiện Retry và Cancel .
55

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
20. Hàm MsgBox… Nút hiển thị-Ví dụ áp dụng
<HTML><HEAD><TITLE>Hien thi </TITLE></HEAD> <BODY><SCRIPT language="VBScript" > <!--Dim MyVar MyVar = MsgBox ("Hello World!",0, "MsgBox Example") --> </SCRIPT></BODY></HTML>

SLT 2006

56

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
20. Hàm MsgBox… Nút hiển thị-Ví dụ áp dụng
<HTML><HEAD><TITLE>Hien thi </TITLE></HEAD> <BODY><SCRIPT language="VBScript" > <!--Dim MyVar MyVar = MsgBox ("Hello World!",1, "MsgBox Example") --> </SCRIPT></BODY></HTML>

SLT 2006

57

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
20. Hàm MsgBox… Nút hiển thị-Ví dụ áp dụng
<HTML><HEAD><TITLE>Hien thi </TITLE></HEAD> <BODY><SCRIPT language="VBScript" > <!--Dim MyVar MyVar = MsgBox ("Hello World!",2, "MsgBox Example") --> </SCRIPT></BODY></HTML>

SLT 2006

58

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
20. Hàm MsgBox… Nút hiển thị-Ví dụ áp dụng
<HTML><HEAD><TITLE>Hien thi </TITLE></HEAD> <BODY><SCRIPT language="VBScript" > <!--Dim MyVar MyVar = MsgBox ("Hello World!",3, "MsgBox Example") --> </SCRIPT></BODY></HTML>

SLT 2006

59

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
20. Hàm MsgBox… Nút hiển thị-Ví dụ áp dụng
<HTML><HEAD><TITLE>Hien thi </TITLE></HEAD> <BODY><SCRIPT language="VBScript" > <!--Dim MyVar MyVar = MsgBox ("Hello World!",4, "MsgBox Example") --> </SCRIPT></BODY></HTML>

SLT 2006

60

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
20. Hàm MsgBox… Nút hiển thị-Ví dụ áp dụng
<HTML><HEAD><TITLE>Hien thi </TITLE></HEAD> <BODY><SCRIPT language="VBScript" > <!--Dim MyVar MyVar = MsgBox ("Hello World!",5, "MsgBox Example") --> </SCRIPT></BODY></HTML>

SLT 2006

61

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
20. Hàm MsgBox… Nút hiển thị
Hằng vbCritical vbQuestion vbExclamation vbInformation Giá trị 16 32 48 64 Mô tả Hiện Critical Message icon. Hiện Warning Query icon. Hiện Warning Message icon. Hiện Information Message icon.

SLT 2006

62

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
20. Hàm MsgBox… Nút hiển thị-Ví dụ áp dụng
<HTML><HEAD><TITLE>Hien thi </TITLE></HEAD> <BODY><SCRIPT language="VBScript" > <!--Dim MyVar MyVar = MsgBox ("Hello World!",16, "MsgBox Example") --> </SCRIPT></BODY></HTML>

SLT 2006

63

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
20. Hàm MsgBox… Nút hiển thị-Ví dụ áp dụng
<HTML><HEAD><TITLE>Hien thi </TITLE></HEAD> <BODY><SCRIPT language="VBScript" > <!--Dim MyVar MyVar = MsgBox ("Hello World!",32, "MsgBox Example") --> </SCRIPT></BODY></HTML>

SLT 2006

64

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
20. Hàm MsgBox… Nút hiển thị-Ví dụ áp dụng
<HTML><HEAD><TITLE>Hien thi </TITLE></HEAD> <BODY><SCRIPT language="VBScript" > <!--Dim MyVar MyVar = MsgBox ("Hello World!",48, "MsgBox Example") --> </SCRIPT></BODY></HTML>

SLT 2006

65

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
20. Hàm MsgBox… Nút hiển thị-Ví dụ áp dụng
<HTML><HEAD><TITLE>Hien thi </TITLE></HEAD> <BODY><SCRIPT language="VBScript" > <!--Dim MyVar MyVar = MsgBox ("Hello World!",64, "MsgBox Example") --> </SCRIPT></BODY></HTML>

SLT 2006

66

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
20. Hàm MsgBox… Hàm MsgBox trả về các giá trị sau: Giá trị Hằng vbOK vbCancel vbAbort vbRetry vbIgnore vbYes vbNo
SLT 2006

Nút OK Cancel Abort Retry Ignore Yes No
67

1 2 3 4 5 6 7

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VII. Bài tập vận dụng
Bài tập 1 Cho phép người dùng nhập vào một số Viết chương trình VBscript để kiểm tra tính chẵn lẻ của số vừa nhập vào rồi thông báo ra màn hình

SLT 2006

68

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VII. Bài tập vận dụng
Bài tập 2 Cho phép người dùng nhập vào một số Viết chương trình VBscript để kiểm tra số vừa nhập vào có phải là số nguyên tố hay không rồi thông báo ra màn hình

SLT 2006

69

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VII. Bài tập vận dụng
Bài tập 3 Cho phép người dùng nhập vào một số Viết chương trình VBscript để kiểm tra số vừa nhập vào như sau

SLT 2006

70

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
21. Hàm Cdate(strdate): trả về ngày từ chuỗi dạng ngày Ví dụ: Dim a, b a=”22/1/2004” „a đang được hiểu là một chuỗi b=Cdate(a) „chuyển chuỗi a sang đúng kiểu ngày tháng

SLT 2006

71

Bài 2:Ngôn ngữ kịch bảnVBSCRIPT… VI. Các hàm có sẵn trong Vbscript…
22. Hàm Cint(str): Chuyển sang kiểu Integer Ví dụ: Dim a, b a=”3” „a đang được hiểu là một chuỗi b=Cint(a) „chuyển chuỗi a sang đúng kiểu số nguyên

SLT 2006

72

Bài 3:Lập trình Web với ASP I. Cú pháp cơ bản của ASP CÊu tróc vµ c¸c dßng lÖnh c¬ b¶n cña ASP

• Bắt đầu bằng <%: thẻ mở • Kết thúc với %>: thẻ đóng • Ở giữa cặp thẻ này là các đoạn script được xử lý ở
server

• Có thể đưa các script vào bất kỳ vị trí nào trong trang
Web-thậm chí bên trong các thẻ HTML.

SLT 2006

73

Bài 3:Lập trình Web với ASP I. Cú pháp cơ bản của ASP CÊu tróc vµ c¸c dßng lÖnh c¬ b¶n cña ASP…

• Ngôn ngữ kịch bản mặc định trpng ASP là VBScript, do
đó khi bạn không chỉ rõ ngôn ngữ kịch bản sẽ dùng trong ASP thì mặc định VBScript được dùng

SLT 2006

74

Bài 3:Lập trình Web với ASP I. Cú pháp cơ bản của ASP CÊu tróc vµ c¸c dßng lÖnh c¬ b¶n cña ASP…
Ví dụ:Sử dụng ngôn ngữ VBScript <html> <head><title>ví dụ</title></head> <body> <% Dim i For i=1 to 10 Response. Write “Number=“ & i & “<br>” Next %></body> </html>
SLT 2006 75

Bài 3:Lập trình Web với ASP I. Cú pháp cơ bản của ASP CÊu tróc vµ c¸c dßng lÖnh c¬ b¶n cña ASP…
Ví dụ:Sử dụng ngôn ngữ VBScript <html> <head><title>ví dụ</title></head> <%@ language=“VBScript” %> <body> <% Dim i For i=1 to 10 Response.Write “Number=“ & i & “<br>” Next %></body> </html>
SLT 2006 76

Bài 3:Lập trình Web với ASP I. Cú pháp cơ bản của ASP CÊu tróc vµ c¸c dßng lÖnh c¬ b¶n cña ASP…
Ví dụ:Sử dụng ngôn ngữ JavaScript <html> <head><title>ví dụ</title></head> <%@ language="JavaScript" %> <body> <% for(i=1;i<=10; i++) { Response.Write ("Number"+i+"<br>") } %></body> </html>
SLT 2006 77

Bài 3:Lập trình Web với ASP II. Thủ tục trong ASP
Ví dụ:Gọi thủ tục VBScript từ ASP cách 1 <html> <head> <% Sub vbnhan(so1,so2) Response.Write(so1*so2) End Sub %> </head><body> <% dim a,b a=7 b=6 Call vbnhan(a,b) %></body></html>
SLT 2006 78

Bài 3:Lập trình Web với ASP II. Thủ tục trong ASP…
Ví dụ:Gọi thủ tục VBScript từ ASP cách 2 <html> <head> <% Sub vbnhan(so1,so2) Response.Write(so1*so2) End Sub %> </head><body> <% dim a,b a=7 b=6 vbnhan a,b %></body></html>
SLT 2006 79

Bài 3:Lập trình Web với ASP II. Thủ tục trong ASP…
Ví dụ:Gọi thủ tục JavaScript từ ASP <html> <% @ language="JavaScript" %> <head><% function jsnhan(so1,so2) { Response.Write(so1*so2) } %> </head><body> <% var a,b,c a=7 b=6 jsnhan(a,b) %></body> </html>
SLT 2006 80

Bài 3:Lập trình Web với ASP II. Thủ tục trong ASP…
Ví dụ:Gọi thủ tục JavaScript và VBScript trong cùng tệp tin ASP <html> <head><% Sub vbnhan(so1,so2) Response.Write(so1*so2) End Sub %> <script language="Javascript" runat="server"> function jscong(so1,so2) { Response.Write(so1+so2) } </script></head><body> <% a=7 b=6 vbnhan a,b%><br> <% Call jscong(a,b) %></body></html>
SLT 2006 81

Bài 4:Các đối tượng ASP I. Đối tượng Request

• Request cho phép lấy về các thông tin từ client • Khi browser gửi một yêu cầu trang web lên server ta
gọi là 1 request

Cú pháp Request.Collection\Propety\Method

SLT 2006

82

Bài 4:Các đối tượng ASP I. Đối tượng Request…
1. Các tập hợp(Collection) của Request -Cookies

• Cookies là một tập tin nhỏ dạng văn bản mà Web
server lưu trên máy của người dùng khi họ viếng thăm một trang web nào đó trên server

SLT 2006

83

Bài 4:Các đối tượng ASP I. Đối tượng Request…
1. Các tập hợp(Collection) của Request -Cookies • Nhận giá trị Cookies với cú pháp Request.Cookies(name) [(key)|. attribute] Ví dụ: Gán giá trị của Cookies có tên là “member” cho biến username và gởi đến trình duyệt <% username=Request.Cookies(“member”) Response. Write”member:”&username %>
SLT 2006 84

Bài 4:Các đối tượng ASP I. Đối tượng Request…
1. Các tập hợp(Collection) của Request -Form

• Tập hợp này được dùng để nhận các giá trị của các

thành phần điều khiển trên Form khi Form dùng phương thức POST

• Cú pháp
Request.Form(element) [(index)|. Count]

SLT 2006

85

Bài 4:Các đối tượng ASP I. Đối tượng Request…
1. Các tập hợp(Collection) của Request -Form Tham số element index Ý nghĩa • Bắt buộc. Đây là tên của thành phần trên Form mà bạn muốn đọc giá trị • Chỉ ra giá trị chỉ mục của tham số(Từ 1 đến Request.Form(element). Count])

SLT 2006

86

Bài 4:Các đối tượng ASP I. Đối tượng Request…
1. Các tập hợp(Collection) của Request -Form: Chẳng hạn file form.asp: <form method=”POST” action =”xulyform.asp”> Username<input type=”text” name=”User”> <Br> <input type=”submit” name=”submit” value=”Nhan vao day de sang trang gioi thieu”> </form>

SLT 2006

87

Bài 4:Các đối tượng ASP I. Đối tượng Request…
1. Các tập hợp(Collection) của Request -Form: Kết quả file form.asp:

SLT 2006

88

Bài 4:Các đối tượng ASP I. Đối tượng Request…
1. Các tập hợp(Collection) của Request -Form: File xulyform.asp <html><body> <% Dim x x=Request.form(“User”) %> response.write “Tên người dùng là: ”&x %> </body></html>
SLT 2006 89

Bài 4:Các đối tượng ASP I. Đối tượng Request…
1. Các tập hợp(Collection) của Request -Form: File xulyform.asp

SLT 2006

90

Bài 4:Các đối tượng ASP I. Đối tượng Request…
1. Các tập hợp(Collection) của Request -QueryString

• Tập hợp này được dùng để nhận các giá được gửi từ
người dùng qua URL hoặc form khi Form sử dụng phương thức GET • Cú pháp Request.QueryString(variable) [(index)|. Count]

SLT 2006

91

Bài 4:Các đối tượng ASP I. Đối tượng Request…
1. Các tập hợp(Collection) của Request -QueryString Tham số variable Ý nghĩa • Bắt buộc. Đây là tên biến trong chuỗi truy vấn HPPT • Chỉ ra giá trị chỉ mục của biến trong chuỗi truy vấn tham số(Từ 1 đến Request.QueryString (element). Count])

index

SLT 2006

92

Bài 4:Các đối tượng ASP I. Đối tượng Request…
1. Các tập hợp(Collection) của Request -QueryString: trang home.asp <html><body> <% response.write"Hello" %><br> <a href=”gioithieu.asp?tacgia=Tran Van A”>Nhấn vào đây để sang trang giới thiệu</a> </body></html>

SLT 2006

93

Bài 4:Các đối tượng ASP I. Đối tượng Request…
1. Các tập hợp(Collection) của Request -QueryString: trang home.asp

SLT 2006

94

Bài 4:Các đối tượng ASP I. Đối tượng Request…
1. Các tập hợp(Collection) của Request -QueryString: trang gioithieu.asp

• Server muốn nhận lại giá trị này thì dùng
request.QueryString ở trang gioithieu.asp <% dim a a=request.querystring(“tacgia”) „lúc này a có gía trị là “Tran Van A” response.write “Tác giả của trang home.asp là: ” &a %>
SLT 2006 95

Bài 4:Các đối tượng ASP I. Đối tượng Request…
2.Thuộc tính(Propety) TotalBytes của Request Thuộc tính TotalBytes là thuộc tính chỉ đọc và trả về tổng số byte(tính trong phần Body) mà trình duyệt đã gởi -Cú pháp: Request.TotalBytes

SLT 2006

96

Bài 4:Các đối tượng ASP I. Đối tượng Request…
2.Thuộc tính(Propety) TotalBytes của Request…
Trang vidu6.asp <html><body> <form action="tongsobyte.asp" method="post"> Nhap ten:<input type="text" name="name"><br> <input type="submit" value="submit"> </form></body></html> Trang tongsobyte.asp <html><body> <% if request.form("name")<>"" then response.write(request.form("name")&"da goi") response.write("<br>") response.write("tong so byte la:") response.write(request.Totalbytes) End if %></form></body></html>

SLT 2006

97

Bài 4:Các đối tượng ASP I. Đối tượng Request…
2.Thuộc tính(Propety) TotalBytes của Request…

SLT 2006

98

Bài 4:Các đối tượng ASP I. Đối tượng Request…
3.Phương thức(Method) của Request -BinaryRead: Phương thức này được dùng để nhận dữ liệu được gửi đến Web server từ máy khách với phương thức Post.Dữ liệu được lưu trong một mảng -Cú pháp: Request.BinaryRead(Count) Count: Bắt buộc để chỉ ra số Byte sẽ được đọc

SLT 2006

99

Bài 4:Các đối tượng ASP II. Đối tượng Response

• Đối tượng Response dùng để gửi các đáp ứng của
server cho client

Cú pháp Response.Collection\Propety\Method

SLT 2006

100

Bài 4:Các đối tượng ASP II. Đối tượng Response…
1. Các tập hợp(Collection) của Response -Cookies

• Tạo lập Cookies với cú pháp
Response.Cookies(name) [(key)|. attribute] =value

SLT 2006

101

Bài 4:Các đối tượng ASP II. Đối tượng Response…
1. Các tập hợp(Collection) của Response… -Cookies... • Name: tên Cookies. Bắt buộc phải có • Value: Giá trị Cookies • Attribute:Thuộc tính của Cookies
-domain:Chỉ ghi,cookies chỉ áp dụng cho domain này -Expire:Chỉ ghi, chỉ ra ngày cookies hết hạn, nếu không chỉ ra, mặc định cookies hết hạn khi phiên làm việc kết thúc -Haskeys:Chỉ đọc, chỉ ra cookies có khoá hay không -Path:Chỉ ghi,nếu thiết lập thì cookies chỉ được gởi tới yêu cầu đến đờng dẫn này -Secure:Chỉ ghi,chỉ ra rằng cookies được bảo mật

• Key: Chỉ ra khoá mà giá trị được gán
SLT 2006 102

Bài 4:Các đối tượng ASP II. Đối tượng Response…
1. Các tập hợp(Collection) của Response… -Cookies...

• Ví dụ: tạo một tập cookies có tên là “user”. Cookies
“uer” có các khoá chứa thông tin về người dùng <% Response.Cookies(“user”) (“Ten”)=“Nam” Response.Cookies(“user”) (“Ho”)=“Nguyen” Response.Cookies(“user”) (“Ten dem”)=“Van” Response.Cookies(“user”) (“Quoc tich”)=“Viet Nam” Response.Cookies(“user”) (“Tuoi”)=“23” %>
SLT 2006 103

Bài 4:Các đối tượng ASP II. Đối tượng Response
2. Các thuộc tính (Propety) của Response -Charset: Thuộc tính này nối tên của bộ ký tự vào header content-type trong đối tượng response Response.Charset(charsetname) Ví dụ <% response.Charset=”UTF-8” %>

SLT 2006

104

Bài 4:Các đối tượng ASP II. Đối tượng Response
2. Các thuộc tính (Propety) của Response -Expires: Thuộc tính này thiết lập thời gian (phút) mà trang sẽ được lưu trên trình duyệt trước khi nó hết hạn Response.Expires[=number] number: là thời gian lưu (phút) Ví dụ <% Response.Expires=-1 %> Thiết lập trên cho biết một trang không bao giừo được lưu
SLT 2006 105

Bài 4:Các đối tượng ASP II. Đối tượng Response
2. Các thuộc tính (Propety) của Response -ExpiresAbsolute: Thuộc tính này thiết lậpngày gời hết hạn của trang được lưu trên trình duyệt Response.ExpiresAbsolute[=[date][time]] number: là thời gian lưu (phút) Ví dụ <% Response.ExpiresAbsolute=#November 30,2007 17:00:00# %> Thiết lập trên cho biết một trangsẽ hết hạn vào lúc 5.PM ngày 30/11/2007
SLT 2006 106

Bài 4:Các đối tượng ASP II. Đối tượng Response
3. Các phương thức (Method) của Response -Write:Đưa thông tin ra màn hình trang web Response.Write variant Variant: Bắt buộc. Dữ liệu được ghi ra màn hình

SLT 2006

107

Bài 4:Các đối tượng ASP II. Đối tượng Response
3. Các phương thức (Method) của Response -Redirect :Chuyển xử lý sang một trang Asp khác Response.Redirect URL URL: Bắt buộc. Địa chỉ tới một trang web khác Ví dụ: đoạn mã sau chuyển người dùng tới địa chỉ: http://localhost/main.asp <% Response.Redirect “http://localhost/main.asp %>
SLT 2006 108

Bài 4:Các đối tượng ASP II. Đối tượng Response
3. Các phương thức (Method) của Response -End :Ngưng xử lý kịch bản và trả về kết quả hiện thời Response.End Ví dụ: đoạn mã sau chuyển người dùng tới địa chỉ: <html> <body><p>Dong thong tin nay duoc hien thi tren trinh duyet <%Response.End%> Nhung ban khong doc duoc thong tin nay</p> </body> </html>
SLT 2006 109

Bài 4:Các đối tượng ASP III. Đối tượng Session

• Session là một phiên làm việc giữa từng người dùng
và web server

• Đối tượng Session được dùng để lưu trữ thông tin
hoặc những thay đổi thiết lập cho phiên làm việc của từng người dùng riêng biệt

Cú pháp Session.Collection\Propety\Method

SLT 2006

110

Bài 4:Các đối tượng ASP III. Đối tượng Session
1. Các tập hợp(Collection) của Session -Contents

• Tập hợp này chứa tất cả các hạng mục được nối vào
Session Session.Contents(key)

• Key: Đây là tên hạng mục. Bắt buộc phải có • Contents là thuộc tính mặc định của Session, do đó
bạn có thể không dùng tập hợp Contents khi tạo biến Session

SLT 2006

111

Bài 4:Các đối tượng ASP III. Đối tượng Session
1. Các tập hợp(Collection) của Session -Contents...

• Ví dụ: Tạo và gán giá trị cho biến Session dùng tập
hợp Contents
<% Session.Contents(“games”)=“Mario” Set Session.Contents(“objtest”)=Server.CreateObject(“ADDOB.Connection”) %>

Ta có thể viết ngắn gọn hơn như sau
<% Session(“games”)=“Mario” Set Session(“objtest”)=Server.CreateObject(“ADDOB.Connection”) %>
SLT 2006 112

Bài 4:Các đối tượng ASP III. Đối tượng Session
1. Các tập hợp(Collection) của Session -Contents...

• Để đọc tất cả các biến của Session ta có thể dùng
vòng lặp như sau
<% Session(“software”)=“Navision” Session(“version”)=“4.0” Session(“date”)=“23/10/2007” For each x in Session.Contents Response.Write(x&”=”&Session.Contents(x)&”<br>”) Next %>

SLT 2006

113

Bài 4:Các đối tượng ASP III. Đối tượng Session
1. Các tập hợp(Collection) của Session -StaticObjects

• Tập hợp này chứa tất cả các đối tượng được nối vào
Session với thẻ <object> trong HTML Session.StaticObjects(key) • Key: Đây là tên hạng mục. Bắt buộc phải có

SLT 2006

114

Bài 4:Các đối tượng ASP III. Đối tượng Session
1. Các tập hợp(Collection) của Session -StaticObjects...

• Ví dụ: Trong tập tin global.asa có sử dụng các đối
tượng sau
<object runat=“server” scope=“session” id=“MsgBoard” progid=“msgboard.MsgBoard”></object> <object runat=“server” scope=“session” id=“AdRot” progid=“MSWC.AdRottator”></object> <% For each x in Session.StaticObjects Response.Write(x&”<br>”) Next %>
SLT 2006

MsgBoard AdRot

115

Bài 4:Các đối tượng ASP III. Đối tượng Session
2. Các thuộc tính (Propety) của Session -SessionID

• Thuộc tính này trả về số ID duy nhất cho mỗi người
dùng. Số ID này được sinh bởi Web server Session.SessionID • Ví dụ: để xem số ID được cấp khi bạn truy cập Web server ta thực hiện như sau
<% Response.Write(Session.SessionID) Next %>
SLT 2006 116

Bài 4:Các đối tượng ASP III. Đối tượng Session
2. Các thuộc tính (Propety) của Session… -Timeout

• Thuộc tính này thiết lập hoặc trả về khoảng thời
gian(phút) mà session tồn tại trong ứng dụng. Nếu người dùng không nạp lại trang hoặc không yêu cầu trang mới trong khoảng thời gian này thì phiên làm việc sẽ kết thúc Session.Timeout[=nMinutes] • nMinutes: là khoảng thời gian mà phiên làm việc tồn tại trước khi Web server kết thúc nó. Giá trị mặc định là 20 phút
SLT 2006 117

Bài 4:Các đối tượng ASP III. Đối tượng Session
3. Các phương thức (Method) của Session -Abandon

• Phương thức này kết thúc phiên làm việc của người
dùng Session.Abandon

SLT 2006

118

Bài 4:Các đối tượng ASP III. Đối tượng Session
3. Các phương thức (Method) của Session… -Remove

• Phương thức này xoá một hạng mục trong tập hợp
Contents Session.Contents.Remove(name|index) • Name: Tên của hạng mục cần xoá • Index:Số chỉ mục của hạng mục cần xoá

SLT 2006

119

Bài 4:Các đối tượng ASP III. Đối tượng Session
3. Các phương thức (Method) của Session… -RemoveAll

• Phương thức này xoá tất cả các hạng mục trong tập
hợp Contents Session.Contents.RemoveAll()

SLT 2006

120

Bài 4:Các đối tượng ASP III. Đối tượng Session
4. Sự kiện của Session… -Session_OnStart

• Sự kiện này sảy ra khi Web server tạo ra một phiên
làm việc mới. sự kiện này được định nghĩa trong file global.asa -Session_OnEnd

• Sự kiện này sảy ra khi phiên làm việc kết thúc(do hết
thời gian sống hoặc do phương thức Abandon được gọi)
SLT 2006 121

Bài 4:Các đối tượng ASP IV. Đối tượng Application

• Application đại diện cho toàn bộ ứng dụng, bao
gồm tất cả các trang web trong website. Để lưu trữ những thông tin có tác dụng trong toàn ứng dụng, tức là có giá trị trong tất cả các trang asp và tất cả các phiên, người ta dùng đối tượng Application

Cú pháp Application.Collection\Propety\Method

SLT 2006

122

Bài 4:Các đối tượng ASP IV. Đối tượng Application
1. Các tập hợp(Collection) của Application -Contents

• Tập hợp này chứa tất cả các hạng mục được nối vào
đối tượng Application Application.Contents(key) • Key: Đây là tên hạng mục. Bắt buộc phải có • Contents là thuộc tính mặc định của Application

SLT 2006

123

Bài 4:Các đối tượng ASP IV. Đối tượng Application
1. Các tập hợp(Collection) của Application -Contents

• Ví dụ: Tạo và gán giá trị cho biến và đối tượng
<% Application.Contents(“name”)=“The Goi Vi Tinh” Set Application.Contents(“objtest”)=Server.CreateObject(“ADDOB.Connection”) %>

• Ta có thể viết ngắn gọn hơn như sau
<% Application(“games”)=“The Goi Vi Tinh” Set Application(“objtest”)=Server.CreateObject(“ADDOB.Connection”) %>

SLT 2006

124

Bài 4:Các đối tượng ASP IV. Đối tượng Application
1. Các tập hợp(Collection) của Application -Contents...

• Đọc tất cả các hạng mục trong Contents
<% Application(“games”)=“The Goi Vi Tinh” Application(“date”)=“23/10/2007” For each x in Application.Contents Response.Write(x&”=”&Application.Contents(x)&”<br>”) Next %>

SLT 2006

125

Bài 4:Các đối tượng ASP IV. Đối tượng Application
1. Các tập hợp(Collection) của Application -StaticObjects

• Tập hợp này chứa tất cả các đối tượng được nối vào
Application với thẻ <object> trong HTML Application.StaticObjects(key) • Key: Đây là tên hạng mục. Bắt buộc phải có

SLT 2006

126

Bài 4:Các đối tượng ASP IV. Đối tượng Application
2. Các phương thức (Method) của Application -Remove

• Phương thức này xoá một hạng mục trong tập hợp
Contents Application.Contents.Remove(name|index) • Name: Tên của hạng mục cần xoá • Index:Số chỉ mục của hạng mục cần xoá

SLT 2006

127

Bài 4:Các đối tượng ASP IV. Đối tượng Application
2. Các phương thức (Method) của Application -RemoveAll

• Phương thức này xoá tất cả các hạng mục trong tập
hợp Contents Application.Contents.RemoveAll()

SLT 2006

128

Bài 4:Các đối tượng ASP IV. Đối tượng Application
2. Các phương thức (Method) của Application -Lock

• Phương thức này dùng để ngăn chặn người dùng thay
đổi giá trị của biến trong đối tượng Application cùng lúc Application.Lock

SLT 2006

129

Bài 4:Các đối tượng ASP IV. Đối tượng Application
2. Các phương thức (Method) của Application -Unlock

• Phương thức này dùng để mở khoá biến Application
để cho phép người dùng thay dổi giá trị của biến.Unlock được dùng sau khi bạn thực hiện Lock Application.Unlock

SLT 2006

130

Bài 4:Các đối tượng ASP IV. Đối tượng Application
3. Sự kiện của Application Application_OnStart

• Sự kiện này sảy ra khi đối tượng Application lần đầu
tiên được tham khảo

Application_OnEnd

• Sự kiện này sảy ra khi ứng dụng dừng(Web server
dừng)

SLT 2006

131

Bài 4:Các đối tượng ASP IV. Đối tượng Server
1. Thuộc tính ScriptTimeout

• Thiết lập hoặc trả về thời gian tối đa(tính bằng mili
giây) mà mã một kịch bản có thể thực thi trước khi nó kết thúc • Cú pháp Server.ScriptTimeout[=Numsecond] • NumSecond: Số giây tối đa

SLT 2006

132

Bài 4:Các đối tượng ASP IV. Đối tượng Server
2. Phương thức CreateObject

• Phương thức này dùng để tạo một thể hiện của đối
tượng

• Cú pháp
Server.CreateObject(progID)

• progID: Bắt buộc đây là kiểu đối tượng cần tạo

SLT 2006

133

Bài 4:Các đối tượng ASP IV. Đối tượng Server
2. Phương thức Execute

• Dùng để thực thi một tập tin ASP từ trong một tập tin
khác.Sau khi thực thi xong thì điều khiển được trả về tập tin gọi để thực thi tiếp phần mã còn lại của nó • Cú pháp Server.Execute(Path) • Path: Bắt buộc đây là đường dẫn của tập tin cần thực thi

SLT 2006

134

Bài 4:Các đối tượng ASP IV. Đối tượng Server
2. Phương thức MapPath

• Phương thức này ánh xạ (URL) chỉ ra đường dẫn vật

• Cú pháp
Server.MapPath(Path)

• Path: Bắt buộc, đây là đường dẫn tương đối hoặc
đường dẫn ảo

SLT 2006

135

Bài 4:Các đối tượng ASP V. Tập tin GLOBAL.ASA

• File này là file tùy chọn chứa các khai báo đối tượng,
biến có phạm vi toàn ứng dụng

• Mã lệnh viết dưới dạng Script • Mỗi ứng dụng chỉ được phép có nhiều nhất 1 file
Global.asa, nằm ở thư mục gốc của ứng dụng

• Người ta thường dùng global.asa trong trường
hợp muốn có những xử lý khi một session bắt đầu hay kết thúc, một application bắt đầu hay kết thúc session bắt đầu hay kết thúc, một application bắt đầu hay kết thúc

SLT 2006

136

Bài 4:Các đối tượng ASP V. Tập tin GLOBAL.ASA
Các sự kiện trong global.asa

• Application_Onstart : hàm sự kiện này xảy ra khi
người dùng đầu tiên truy cập tới trang web đầu tiên khi ứng dụng hoạt động. • Session_Onstart: hàm sự kiện này xảy ra mỗi khi có một người dùng mới truy cập vào ứng dụng (bắt đầu 1 session) • Session_OnEnd: hàm sự kiện này xảy ra mỗi khi 1 người dùng kết thúc session của họ • Application_OnEnd: hàm sự kiện này xảy ra khi ứng dụng dừng.
SLT 2006 137

Bài 4:Các đối tượng ASP V. Tập tin GLOBAL.ASA
Cấu trúc của File Global.asa như sau:
<script language="vbscript" runnat="server"> Sub Application_OnStart „... End sub Sub Application_OnEnd „... End Sub Sub Session_OnStart „... Application("x")=Application("x")+1 End sub Sub Session_OnEnd „... End Sub </script>
SLT 2006 138

Bài 5:Sử dụng Database với ASP qua ADO
I. Các cú pháp căn bản để truy xuất dữ liệu từ DB 1.Lựa chọn

• Lấy tất cả các bản ghi trong bảng:
“Select * from HosoHocVien”

• Nếu lựa chọn có điều kiện:
“Select * from HosoHocVien where MaHV=‟10‟ “

• Nếu chỉ lựa chọn một số trường trong bảng:
“Select Ten from HosoHocVien where MaHV=‟10‟ ”

SLT 2006

139

Bài 5:Sử dụng Database với ASP qua ADO
I. Các cú pháp căn bản để truy xuất dữ liệu từ DB 2.Thêm dữ liệu vào bảng “Insert into HosoHocVien values („001‟,‟Tran Van A‟) “ 3.Sửa dữ liệu “Update HosoHocVien set Ten=‟Tran Van B‟ where MaHV=‟001‟ “ 4.Xoá dữ liệu “Delete from HosoHocVien where MaHV=‟001‟ “

SLT 2006

140

Bài 5:Sử dụng Database với ASP qua ADO
II. Đối tượng ADO

• Đối tượng ADO được dùng để truy cập CSDL từ trang
Web của bạn. ADO được viết tắt của ActiveX Data Objects • Cách chung để truy cập CSDL từ trang ASP 1.Tạo một kết nối ADO với CSDL 2.Mở kết nối vừa tạo 3.Tạo một recordset từ ADO 4.Mở recordset này 5.Lấy dữ liệu bạn cần từ recordset 6.Đóng recordset 7.Đóng kết nối ADO
SLT 2006 141

Bài 5:Sử dụng Database với ASP qua ADO
III. Đối tượng Connection Kết nối đến CSDL Access: <% dim conn set conn=server.createObject("ADODB.connection") stringconn="provider=microsoft.jet.OLEDB.4.0; Data source=C:\Dulieu\QuanlyHocVien.mdb" conn.open stringconn ... conn.close Set conn=nothing %>
SLT 2006 142

Bài 5:Sử dụng Database với ASP qua ADO
Kết nối đến CSDL SQL Server <% dim conn set conn=server.createObject("ADODB.connection") stringconn="provider=SQLOLEDB.1;SERVER=local;USE R ID=sa;PASSWORD=test; DATABASE=QuanlyHocVien” conn.open stringconn ... conn.close Set conn=nothing %>
SLT 2006 143

Bài 5:Sử dụng Database với ASP qua ADO
Kết nối đến CSDL bất kỳ dùng ODBC Giả sử ta đã tạo một DSN với CSDL QuanlyHocVien.mdb có tên là “DLQLHV” ta thực hiện kết nối như sau: <% dim conn set conn=server.createObject("ADODB.connection") conn.open “DLQLHV” ... conn.close Set conn=nothing %>
SLT 2006 144

Bài 5:Sử dụng Database với ASP qua ADO
IV. Đối tượng Recordset

• Đối tượng Recordset thường dùng để xem, thêm, sửa,
xóa các bản ghi trong bảng dữ liệu của Database

• Các bước sử dụng đối tượng Recordset :
Khai báo đối tượng Recorset - Khởi tạo - Tạo sql query - Mở Recordset với chuỗi sql query và connection đã mở - Sử dụng Recordset - Đóng và Hủy Recordset
SLT 2006 145

Bài 5:Sử dụng Database với ASP qua ADO
IV. Đối tượng Recordset Tạo Recordset Trường hợp 1 <% Dim rs set rs=server.createObject("ADODB.Recordset") rs.open “HosoHocVien” ,conn %>

SLT 2006

146

Bài 5:Sử dụng Database với ASP qua ADO
Tạo Recordset… Trường hợp 2 <% Dim rs set rs=server.createObject("ADODB.Recordset") SQLstring="select * from HosoHocVien" rs.open SQLstring ,conn %>

SLT 2006

147

Bài 5:Sử dụng Database với ASP qua ADO
Hiển thị dữ liệu từ Recordset…
<%Dim rs set rs=server.createObject("ADODB.Recordset") SQLstring="select * from HosoHocVien" rs.open SQLstring ,conn while not rs.EOF response.write RS(“MaHV”) response.write RS(“Ten”) response.write “<BR>” rs.movenext „dịch con trỏ rs tới bản ghi tiếp theo loop rs.close „đóng recordset set rs=nothing „hủy recordset %>
SLT 2006 148

Bài 5:Sử dụng Database với ASP qua ADO
V. Thêm sửa xóa dữ liệu trong DB

• Thêm dữ liệu:
<%Conn.execute “Insert into HosoHocvien values(„001‟,‟Tran Van A‟)”%> • Sửa dữ liệu: <%Conn.execute “Update HosoHocVien set Ten=‟Tran Van B‟ where MaHV=‟001‟ “%> • Xoá dữ liệu: <%Conn.execute “Delete from HosoHocVien where MaHV=‟001‟ “ %>
SLT 2006 149

Bài 5:Sử dụng Database với ASP qua ADO
V. Thêm, xoá, sửa dữ liệu Sử dụng Recordset

• Bằng cách duyệt qua tập hợp các bản ghi trong bảng • Thêm dữ liệu:
<%Dim RS set rs=server.createObject("ADODB.recordset") SQLstring="select * from HosoHocVien" rs.open SQLstring ,conn rs.addnew „Thêm một bản ghi rs(“MaHV”)=”001” rs(“Ten”)=”Tran Van A” rs.update rs.close %>
SLT 2006 150

Bài 5:Sử dụng Database với ASP qua ADO
V. Thêm, xoá, sửa dữ liệu Sử dụng Recordset

• Sửa:
<% Dim RS set rs=server.createObject("ADODB.recordset") SQLString="select * from HosoHocVien where ma=‟001‟ rs.open SQLString ,conn rs(“Ten”)=”Tran Van B” rs.update rs.close %>

SLT 2006

151

Bài 5:Sử dụng Database với ASP qua ADO
V. Thêm, xoá, sửa dữ liệu Sử dụng Recordset

• Xoá
<% set rs=server.createObject("ADODB.recordset") SQLString="select * from HosoHocVien where MaHV=‟001‟ rs.open SQLString,conn rs.delete rs.close %>
SLT 2006

„xóa bản ghi này „đóng recordset
152

Xim chân thành cảm ơn!

SLT 2006

153

Sign up to vote on this title
UsefulNot useful