Chương II: VBScript Nền Tảng Của ASP Giới thiệu: Có thể sử dụng VBScript hoặc Java Script để xây dựng trang ASP VBScript có khả năng thực thi tốt trên các trình duyệt VBScript Sả
Trang 1Lập Trình Web
ASP 3.0 ACTIVE SERVER PAGES
Trang 2Yêu cầu
tượng.
hoặc SQL Server)
Trang 3Mục đích
động.
trình cho các web site.
chủ.
trang web động sau này
Trang 4Nội dung giáo trình
30 tiết lý thuyết
15*2 tiết thực hành
Trang 5Nội dung giáo trình
N.X.B Thống Kê.
điện tử tập 1- Phạm Hữu khang.
Trang 6Chương I: Giới Thiệu
1. Giới thiệu về ASP.
2. Môi trường làm việc của ASP.
3. Giới thiệu về IIS.
4. Cách thức làm việc của IIS.
5. Cài đặt và cấu hình cho IIS.
Trang 71 Giới thiệu về ASP
ASP Active Server Pages, cung cấp môi trình lập trình Web,
Cho phép có sự kết hợp giữa HTML, các ngôn ngữ Scripting (VBScript, Java Script) và các thành phần được tạo ra từ các ngôn ngữ khác
Tạo ra những ứng dụng trên Internet mạnh mẽ
Các file trong ASP có phần mở rộng là * ASP
Chứa các thẻ HTML, các đoạn mã script (VBScript, Java Script) và các lời gọi đến các components (DLL, ActiveX control)
Các Script của ASP được đặt trong cặp thẻ <% %>
Trang 82 Cách thức làm việc của ASP
Trang HTML tĩnh:
Trang 92 Cách thức làm việc của ASP
Trang web động: (Dynamic)
Trang 102 Cách thức làm việc của ASP
Cách làm việc
Trang 113 Giới thiệu về IIS
Xuất bản một Home page lên Internet
Tạo ra các giao dịch thương mại điện tử trên Internet
Cho phép người dùng từ xa truy xuất dữ liệu (data base
Trang 124 Cách thức hoạt động của IIS
Web là hệ thống các yêu cầu và đáp ứng các yêu cầu.
IIS lắng nghe các yêu cầu phía Users trên mạng sử dụng WWW và phản hồi lại các thông tin đã yêu cầu lên trên web Borwser.
Cho phép thực hiện các đoạn mã Script trong các trang ASP để tạo ra trang web động.
IIS sẽ nộp thư viện asp.dll để khởi động và triệu gọi các bộ máy diễn dịch các trang ASP
Trang 135 Cài đặt IIS
Nếu máy chưa có trình IIS thì cài đặt như sau:
Chọn nút Start Settings Control Panel Add or
Remove Program Add/Remove Windows Components…
Trang 145 Cài đặt IIS
Nhấp chuột chọn mục Internet Information Services (IIS)
Chọn nút Next để tiến hành cài đặt
Chú ý: phải có đĩa chứa file nguồn Windows (đĩa cài
đặt Windows) để chương trình cài đặt bổ sung một số dịch vụ hỗ trợ cho IIS.
Trang 155 Cài đặt IIS
Cài đặt cấu hình cho IIS
Microsoft cung cấp một cửa sổ Microsoft Management
Console (MMC) để quản lý các ứng dụng Web
Khởi động MMC: Trong Control Panel chọn Administrative Tools Internet Services Manager
Trang 175 Cài đặt IIS
Cửa sổ Default web site:
Chọn Execute Permission và Application Protection để thiết lập quyền bảo vệ và thực thi các ứng dụng
Trang 185 Cài đặt IIS
Để kiểm tra IIS đã hoạt động hay chưa ta gõ vào địa chỉ trong Internet Explore như sau: http://localhost
Trang 195 Cài đặt IIS
Tạo một thư mục ảo
Mỗi ứng dụng web được đặt trong một thư mục ảo và được tham chiếu đến thông qua địa chỉ URL
Cách tạo một thư mục ảo bên trong Default Web Site
Bước 1: Click chuột phải vào Default Web Site chọn New -> chọn Virtual Directory -> hộp thoại hiện ra
Trang 205 Cài đặt IIS
Bước 2: Đặt tên cho thư mục ảo trong mục Alias và chọn nút Next để tiếp tục
Trang 215 Cài đặt IIS
Bước 3: Trong mục Directory chọn thư mục vật lý trên
máy chủ ứng với thư mục ảo của ứng dụng và chọn nút Next để tiếp tục
Trang 225 Cài đặt IIS
Bước 4: Thiết đặt quyền hạn và bảo vệ cho thư mục, có 5 quyền cho thư mục:
Run Script (Such as ASP)
Execute (Such as ISAPI application or CGI)
Write
Browse
Trang 235 Cài đặt IIS
Truy xuất: truy xuất đến các trang web trong thư mục
ảo sử dụng địa chỉ web URL:
http://localhost/<tênthưmụcảo>/<trang asp>
Ví dụ: http://localhost/websiteasp/index.asp
Trong đó localhost là địa chỉ của máy chủ cục bộ, trong
trường hợp máy chủ mang tên miền (domain name) ví dụ tên miền www.yourcompany.com được triệu gọi như sau:
http://www.yourcompany/<tênthưmụcảo>/<trang asp>
Trang 24Chương II: VBScript Nền Tảng Của ASP
Giới thiệu:
Có thể sử dụng VBScript hoặc Java Script để xây dựng
trang ASP
VBScript có khả năng thực thi tốt trên các trình duyệt
VBScript Sản phẩm của Microsoft, có cú pháp giống với Visual Basic
VBScript Đơn giản, dễ học
Trang 25Chương II: VBScript Nền Tảng Của ASP
Các kiểu dữ liệu:
Null Dữ liệu không hợp lệ
Boolean Dữ liệu kiểu logic, nhận giá trị là True hoặc False
Byte Dữ liệu kiểu nguyên có giá trị từ 0 đến 255
Integer Dữ liệu kiểu nguyên có giá trị từ -32768 đến 32767
Currency Dữ liệu thuộc kiểu tiền tệ
Trang 26Chương II: VBScript Nền Tảng Của ASP
Các kiểu dữ liệu:
Single Dữ liệu kiểu số thực chính xác đơn
Double Dữ liệu kiểu số thực chính xác kép
Trang 27Chương II: VBScript Nền Tảng Của ASP
Trang 28Chương II: VBScript Nền Tảng Của ASP
Các toán tử:
* Nhân hai số
Not Phép lấy phủ định của biểu thức logic
Or Toán tử Or nối hai biểu thức logic
Xor Toán tử Xor nối hai biểu thức logic
Trang 29Chương II: VBScript Nền Tảng Của ASP
Khai báo biến, mảng, hằng:
Cú pháp: Dim biến 1, biến 2, …
Trang 30Chương II: VBScript Nền Tảng Của ASP
Khai báo biến, mảng, hằng:
Trang 31Chương II: VBScript Nền Tảng Của ASP
Xuất dữ liệu lên trình duyệt:
dim name, phone
name = “ Computer Science Department”
phone = “084.056.646072”
Document.Write name
Trang 32Chương II: VBScript Nền Tảng Của ASP
Trang 33Chương II: VBScript Nền Tảng Của ASP
Trang 34Chương II: VBScript Nền Tảng Của ASP
Document.Write "Your name is " & name
</script>
</head>
<body>
</body>
Trang 35Chương II: VBScript Nền Tảng Của ASP
Nhận dữ liệu nhập vào từ bàn phím:
Trang 36Chương II: VBScript Nền Tảng Của ASP
Hiển thị nội dung trên một cửa sổ:
Trang 37Chương II: VBScript Nền Tảng Của ASP
Tham số Buttons có thể nhận các giá trị sau:
Hằng (Constant) Giá trị(Value) Mô tả (Description)
vbOKOnly 0 Display OK button only.
vbOKCancel 1 Display OK and Cancel buttons.
vbAbortRetryIgnore 2 Display Abort, Retry, and Ignore buttons.
vbYesNoCancel 3 Display Yes, No, and Cancel buttons.
vbYesNo 4 Display Yes and No buttons.
vbRetryCancel 5 Display Retry and Cancel buttons.
vbCritical 16 Display Critical Message icon.
vbQuestion 32 Display Warning Query icon.
vbExclamation 48 Display Warning Message icon.
vbInformation 64 Display Information Message icon
Trang 38Chương II: VBScript Nền Tảng Của ASP
Các giá trị trả về của các nút lệnh
Constant Value Description
vbOK 1 OK
vbCancel 2 Cancel vbAbort 3 Abort vbRetry 4 Retry vbIgnore 5 Ignore
Trang 39Chương II: VBScript Nền Tảng Của ASP
Trang 40Chương II: VBScript Nền Tảng Của ASP
Cấu trúc điều kiện: IF … THEN … ELSE … END IF
Trang 41Chương II: VBScript Nền Tảng Của ASP
Cấu trúc điều kiện: IF … THEN … ELSE … END IF
<%
dim password
If password = “Administrator” then
Response.write ” đăng nhập thành công”
Else
Response.write ” không đăng nhập được”
End if
%>
Trang 42Chương II: VBScript Nền Tảng Của ASP
Cấu trúc điều kiện: IF … THEN … ELSEIF … END IF
Trang 43Chương II: VBScript Nền Tảng Của ASP
Cấu trúc: Select case … End Sleect
Trang 44Chương II: VBScript Nền Tảng Của ASP
Cấu trúc: Select case … End Sleect
case 3 thu="Thu Ba"
case 4 thu="Thu Tu"
case 5 thu="Thu Nam"
case 6 thu="Thu Sáu"
case 7 thu="Thu Bay"
end Select ngay=day(date()) thang=month(date()) nam=year(date()) Response.Write Thu & ", Ngày: " & cstr(ngay) & " Tháng " & cstr(thang) & " Nam " & cstr(Nam) & "<br>"
& "<br>"
Trang 45Chương II: VBScript Nền Tảng Của ASP
Cấu trúc lặp với số lần lặp xác định: For … Next
Trang 46Chương II: VBScript Nền Tảng Của ASP
Cấu trúc lặp với số lần lặp xác định: For … Next
Trang 47Chương II: VBScript Nền Tảng Của ASP
Cấu trúc lặp : For Each … In
Trang 48Chương II: VBScript Nền Tảng Của ASP
Cấu trúc lặp : For Each … In
%>
Trang 49Chương II: VBScript Nền Tảng Của ASP
Trang 50Chương II: VBScript Nền Tảng Của ASP
Trang 51Chương II: VBScript Nền Tảng Của ASP
Trang 52Chương II: VBScript Nền Tảng Của ASP
%>
Trang 53Chương II: VBScript Nền Tảng Của ASP
Trang 54Chương II: VBScript Nền Tảng Của ASP
Trang 55Chương II: VBScript Nền Tảng Của ASP
End sub
Trang 56Chương II: VBScript Nền Tảng Của ASP
End Function
Lời gọi hàm: cú pháp: Tên hàm(tham số)
Ví dụ: th = VND(146)
Trang 57Chương II: VBScript Nền Tảng Của ASP
Một số hàm và hằng thường dùng
Hàm Trim(s as string)
Hàm Left( s as string, n as integer)
Hàm Right(s as string, n as integer)
Trang 58Chương II: VBScript Nền Tảng Của ASP
Một số hàm và hằng thường dùng
Công dụng: cắt trong chuỗi s n2 ký tự từ vị trí n1từ trái sang phải
Ví dụ: mid(“class ifo28”,8,3)-> “fo2”
Công dụng: chuyển xâu về chữ thường
Ví dụ: Lcase(“Toi la TOI”)-> “toi la toi”
Công dụng: chuyển xâu về chữ hoa
Ví dụ: Ucase(“Toi la toi”)-> “TOI LA TOI”
Trang 59Chương II: VBScript Nền Tảng Của ASP
Một số hàm và hằng thường dùng
Công dụng: chuyển biến thành kiểu chuỗi
Công dụng: nối / cắt thành một/nhiều đoạn bằng cách xác định thông qua dấu phân cách và cho các đoạn đó vào một mảng.
Ví dụ: <%
x=“Quy Nhon,Quang Ngai,Tuy Hoa”
y=split(x,”,”) Response.Write(y(0))
Trang 60Chương II: VBScript Nền Tảng Của ASP
Trang 61ALIGN = LEFT / CENTER / RIGHT
VALIGN = TOP / MIDDLE / BOTTOM
Trang 63Ôn lại một số thẻ HTML
Thẻ Input:
<INPUT
ALIGN = LEFT | CENTER | RIGHT
TYPE = BUTTON | CHECKBOX | FILE | IMAGE | PASSWORD |
RADIO | RESET | SUBMIT | TEXT
VALUE = value
Name =“Tên của thẻ Input”
>
Trang 64Ôn lại một số thẻ HTML
Ví dụ:
<form action="bai6.asp" method="post">
<p>Please select your class:</p>
<input type="radio" name="cars“ <%if cars="Tin k27A" then Response.Write("checked")%>
value="Tin k27A">Tin k27A</input>
<br />
<input type="radio" name="cars“ <%if cars="Tin k27B" then Response.Write("checked")
%>value="Tin k27B">Tin k27B</input>
<br />
<input type="radio" name="cars“ <%if cars="Tin k28" then Response.Write("checked")%>
value="Tin k28">Tin k28</input>
Trang 65Ôn lại một số thẻ HTML
Thẻ Tạo danh sách lựa chọn:
<SELECT NAME="tªn danh s¸ch" SIZE="chiÒu cao">
<OPTION VALUE=value1 SELECTED> Tªn môc chän thø nhÊt
<OPTION VALUE=value2> Tªn môc chän thø hai
<! Danh s¸ch c¸c môc chän >
</SELECT>
Trang 66Ôn lại một số thẻ HTML
Thẻ Tạo Hộp thoại soạn thảo văn bản:
<TEXTAREA
COLS=sè cét ROWS=sè hµng
NAME=tªn
>
văn bản ban đầu
</TEXTAREA>
Trang 67Ôn lại một số thẻ HTML
Ví dụ:
form action="trangchinh2.asp" method="post">
<INPUT type="TEXT" NAME="TEN">
<input type="submit" name="submit" value="submit">
Trang 68Bài tập: Chương I & II
Bài 1:
TinK28 trên đĩa từ và thiết đặt các quyền truy cập cho thư mục ảo vừa tạo (thiết đặt ngôn ngữ Script mặt định của IIS là VBScript.
Bài 2:
Trang 69Chương III: Các Đối Tượng Trong ASP
Đối tượng Request:
Dùng để lấy thông tin từ người dùng gởi tới từ một trang được gọi hoặc một Form được submit
Gồm 2 loại:
Request.Form: Dùng để lấy thông tin từ các thẻ của một form được submit như: Input, TextArea, Select …
Request.QueryString: Dùng để lấy thông tin từ các tham
số trong chuỗi QueryString
Trang 70Chương III: Các Đối Tượng Trong ASP
Ví dụ minh họa: khi Form trong trang RequestForm1được
đệ trình thì gọi đến trang RequestForm2 sử dụng
Request.Form để lấy dữ liệu của các thẻ txtUserName,
txtPassword trong trang RequestForm1
Trang 71Chương III: Các Đối Tượng Trong ASP
Nội dung trang RequestForm1.asp
<form action = requestform2.asp method =post>
Username: <input type = text name =txtUsername>
Trang 72Chương III: Các Đối Tượng Trong ASP
Nội dung trang RequestForm2.asp
Trang 73Chương III: Các Đối Tượng Trong ASP
Khi nhấn nút Save thì triệu gọi đến trang RequestForm2.asp như sau
Trang 74Chương III: Các Đối Tượng Trong ASP
Chú ý:
Trong trường hợp có nhiều thẻ nhập liệu trùng tên với nhau thì kết quả trả về của Form khi đệ trình là tập các giá trị ngăn cách nhau bởi dấu phẩy (,).
Có thể không chỉ tên cụ thể của từng thẻ, dùng Request.Form.count để lấy giá trị của các thẻ.
Ví dụ:
Gọi trang ex3.asp có nội dung như sau:
Trang 75Chương III: Các Đối Tượng Trong ASP
<form action = ex4.asp method =post>
first name: <input type =text name=txtname>
Trang 76Chương III: Các Đối Tượng Trong ASP
Trang 77Chương III: Các Đối Tượng Trong ASP
Trang 78Chương III: Các Đối Tượng Trong ASP
Nhấn nút Save thì form triệu gọi đến trang Ex4.asp hoặc Ex5.asp như sau:
Trang 79Chương III: Các Đối Tượng Trong ASP
Lấy giá trị các tham số trong chuỗi QueryString
Chuỗi QueryString bắt đầu từ ký tự ?
Gồm nhiều cặp tham số, cách nhau bởi dấu &
Khai báo và sử dụng đối tượng Request.QueryString
Request.QueryString(“Tên Tham số”)
Để lấy nguyên giá trị của chuỗi QueryString
Request.ServerVariables(“Query_String”)
Trang 80Chương III: Các Đối Tượng Trong ASP
<html>
<head><title> RequestQueryString </title>
</head>
<body>
<a href = "ex6.asp?alpha=A">A </a>
<a href = "ex6.asp?alpha=B">B </a>
<a href = "ex6.asp?alpha=C">C </a>
<a href = "ex6.asp?alpha=D">D </a>
<a href = "ex6.asp?alpha=">ALL </a>
Trang 81Chương III: Các Đối Tượng Trong ASP
Request.ServerVariables:
Các giá trị header HTTP gởi từ client
Các biến môi trường của Web Server
Trang 82Chương III: Các Đối Tượng Trong ASP
Gởi các thông tin từ server cho các client yêu cầu.
Dùng để giao tiếp với người dùng, điều khiển chia sẽ
dữ liệu.
Điều khiển các cookies trên trình duyệt của khách
Trang 83Chương III: Các Đối Tượng Trong ASP
Chỉ thị cho trình duyệt nộp một địa chỉ khai báo trong URL
Ví dụ: khai báo nạp trang ex1.asp
<%
response.Redirect("ex1.asp")
%>
Trang 84Chương III: Các Đối Tượng Trong ASP
Trang 85Chương III: Các Đối Tượng Trong ASP
<%
Dim a,b,c A=10 B=5
Trang 86Chương III: Các Đối Tượng Trong ASP
Được web server tạo ra mỗi khi trang web đầu tiên được gọi trong ứng dụng
Lưu lại những thông tin của người dùng
Tồn tại đến khi hết phiên làm việc hoặc hết hiệu lực
Thông tin của từng người dùng trong mỗi phiên làm việc là duy nhất không chia sẽ hay truy xuất
Trang 87Chương III: Các Đối Tượng Trong ASP
Khởi tạo một Session
Trang 88Chương III: Các Đối Tượng Trong ASP
Thời gian sống của session được tính bằng giây
Cú pháp để đặt thời gian sống cho session
Session.Timeout = thời gian tính bằng giây
Sau thời gian sống quy định thì session sẽ hết hiệu lực
Trang 89Chương III: Các Đối Tượng Trong ASP
Có thể gán giá trị, truy nhập thông tin của các biến
Session theo phương thức sau:
X = session(“sessionName”) Response.Write(Session(“sessionName”))
Để hủy bỏ một biến Session đang tồn tại dùng cú pháp
Session.Contents.Remove((“sessionName”))
Để hủy bỏ tất cả các biến Session của một trình khách
đang hoạt động dùng cú pháp:
Trang 90Chương III: Các Đối Tượng Trong ASP
Dùng vòng lặp For Each để duyệt qua tất cả các biến
Session chứa trong tập hợp contents
Ví dụ:
<%
dim I session(“myvar”)=“here”
session(“age”)=24
‘In nội dung của tất cả các biến mà đối tượng session nắm giữ For Each I in Session.contents
Response.write(session.contents(i) & “<br>”) Next
%>
Để biết số lượng các biến trong đối tượng ta dùng phương thức
Trang 91Chương III: Các Đối Tượng Trong ASP
Khi cấp phát Session cho trình khách thì web server sẽ
cung cấp cho mỗi trình khách một định danh session.sessionID()
Định danh này sẽ được thu hồi khi session hết hiệu lực
Ví dụ:
<%
Response.write Session.sessionID
%>