1. Trang chủ >
  2. Công nghệ thông tin >
  3. Quản trị mạng >

b. Gọi một thủ tục đã được định nghĩa:

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


Kết quả khi duyệt trang web này với a=1, b=2, c=1



5.4.2. MỘT SỐ HÀM THƯỜNG DÙNG TRONG VBSCRIPT

HÀM



CHỨC NĂNG



VÍ DỤ



KẾT QUẢ



HÀM TOÁN HỌC

Abs(x)



|x|



Abs(-1)



1

98



Sqr(x)



Sqr(4)



x



2



HÀM CHUYỂN ĐỔI KIỂU



CBool(Biến)

CByte(Biến)

CCur(Biến)

CDate(Biến)

CInt(Biến)

CStr(Biến)



Chuyển kiểu biến thành kiểu

bool

Chuyển kiểu biến thành kiểu

byte

Chuyển kiểu biến thành kiểu

Currency

Chuyển kiểu biến thành kiểu

ngày tháng

Chuyển kiểu biến thành kiểu

nguyên

Chuyển kiểu biến thành kiểu

chuỗi

HÀM THỜI GIAN



Date()

Now()

Second(BTthời gian)

Minute(BTthời gian)

Hour(BT thời gian)

Day(BT thời gian)

WeekDay((BTThờiGian)

Month(BTThờiGian)

Year(BT thời gian)

WeekDayName(n)

MonthName(n)



Ngày tháng năm hiện tại

Thời điểm hiện tại

Lấy giây của BTThờiGian

Lấy phút của BTThờiGian

Lấy giờ của BTThờiGian

Lấy ngày của BTThờiGian

Ngày trong tuần của

BTThờiGian

Lấy tháng của BTThờiGian

Lấy năm của BTThờiGian

Tên của ngày thứ n trong tuần

Tên của tháng thứ n trong năm



WeekDayName(2) Monday

MonthName(6)

June



HÀM KIỂM TRA



IsDate(Biểu thức)

IsEmpty(Biểu thức)

IsNull(Biểu thức)

IsNumeric(Biểuthức)

IsObject(Biểu thức)



Có phải là biểu thức ngày

không

Biểu thức có rỗng không? BT

rỗng là BT chưa chứa giá trị

Biểu thức có giá trị là NULL

không?

Biểu thức có là số không

Biểu thức có là đối tượng

không?

HÀM XỬ LÝ CHUỖI



LCase(Chuỗi)

UCase(Chuỗi)

Left(Chuỗi, n)

Right(Chuỗi, n)

Len(Chuỗi)

LTrim(Chuỗi)

RTrim(Chuỗi)

Trim(Chuỗi)



Chuyển chuỗi thành chữ

thường

Chuyển chuỗi thành chữ hoa

Lấy n kí tự bên trái chuỗi

Lấy n kí tự bên phải chuỗi

Độ dài của chuỗi

Cắt hết kí tự trắng bên trái

chuỗi

Cắt hết kí tự trắng bên phải

chuỗi

Cắt hết kí tự trắng hai đầu

chuỗi



LCase("heLLo")



"hello"



UCase("heLLo")

Left("heLLo",2)

Right("heLLo",2)

Len ("heLLo",2)

LTrim(" heLLo ")



"HELLO"

"he"

"Lo"

5

"heLLo "



RTrim(" heLLo ")



" heLLo"



Trim(" heLLo ")



"heLLo"



ASC("A")



65



MỘT SỐ HÀM KHÁC



Asc(kí tự)



Mã kí tự ASCII của biến



99



Chr(n)



Kí tự có mã ASCII là n



Chr(65)



"A"



5.4.3. ĐOẠN MÃ DÙNG CHUNG

Khi tiến hành xây dụng chương trình ở nhiều trang khác nhau, để tránh phải gõ lại, cập

nhật khi có thay đổi các đoạn mã trong mỗi trang người ta có thể sử dụng lại các đoạn mã ở

các trang khác để chèn vào trang hiện thời.

Cú pháp:



hoặc





Nếu sử dụng INCLUDE VIRTUAL thì thư mục chứa file cần chèn vào phải là

một thư mục ảo trên server và phần mở rộng của file phải là .INC, còn nếu dùng

INCLUDE FILE thì phải chỉ ra đường dẫn vật lý của file cần chèn.



100



5.5. Tệp cấu hình GLOBAL.ASA

Global.asa là một file được đặt trong thư mục gốc của một ứng dụng web, nó là file

được thực thi chỉ một lần đầu tiên vào lúc trình duyệt đầu tiên phát yêu cầu đến ứng dụng

web. Lúc này Global.asa được web server tìm trên thư mục gốc của ứng dụng và thực thi nó.

File này thường được dùng để nạp các cấu hình cần thiết, khai báo đối tượng và đặt các thủ

tục đáp ứng sự kiện.



5.5.1. Các sự kiện

a. Sự kiện Application_OnStart

Sự kiện Application_OnStart phát sinh khi người dùng đầu tiên gửi yêu cầu đến ứng

dụng web. Application_OnStart chỉ xảy ra một lần đối với người đầu tiên. Muốn sự kiện này

xảy ra lại chỉ có cách khởi động lại IIS.

Viết lệnh đáp ứng sự kiện này thường dùng để khởi tạo giá trị các biến ở mức toàn cục

và hiệu lực với mọi người dùng chẳng hạn như: số người ghé thăm trang web, đường dẫn đến

CSDL,...



b. Sự kiện Session_OnStart

Phát sinh khi người dùng yêu cầu trang đầu tiên trong ứng dụng từ trình duyệt. Ta sử

dụng sự kiện này để khởi tạo các gía trị biến, các đối tượng cần thiết.

Sự kiện này có thể xảy ra nhiều lần với mỗi người dùng



c. Sự kiện Session_OnEnd

Sự kiện này phát sinh khi phiên làm việc của người dùng chấm dứt nghĩa là nó hết hạn

hoặc người dùng đóng cửa sổ trình duyệt lại.

Trong sự kiện này ta thường viết các thủ tục để xóa các biến nhớ hoặc có thể lưu lại các

trạng thái thông tin nếu cần.

Tương tự như sự kiện Session_OnStart, sự kiện Session_OnEnd cũng có thể xảy ra

nhiều lần với mỗi người dùng.



d. Sự kiện Applicaton_OnEnd

Sự kiện này phát sinh khi ứng dụng ASP được tải xuống bằng MMC (Microsoft

Management Console), hoặc khi ứng dụng bị ngừng một cách vô thức bởi một lý do nào đó

(dịch vụ web bị ngừng trên web server)

Tương tự như Application_OnStart, Application_OnEnd chỉ phát sinh một lần duy nhất,

các mã lệnh được viết để xử lý sự kiện này sẽ được gọi sau cùng. Ta thường dùng sự kiện này

để lưu lại các giá trị cần thiết ngay trước khi dịch vụ web ngừng làm việc.



5.5.2. Khai báo đối tượng

File cấu hình Global.asa là nơi duy nhất ta có thể khai báo các đối tượng COM bằng cặp

thẻ ...

Cú pháp



101



Nếu ta sử dụng trình soạn thảo VisualInterDev trong bộ VisualStudio thì việc thêm các

đối tượng vào Global.asa rất đơn giản, thao tác còn lại chỉ là kéo-thả. Ta cần lưu ý rằng các

đoạn mã trên không đặt trong <%...%>

- Scope là phạm vi của biến: là Application hoặc Session

- ID: Tên ta đặt cho đối tượng

- ProgID hoặc ClassID là định danh của đối tượng COM ta muốn chèn.

Ví dụ về chèn một đối tượng



5.5.3. Một file cấu hình Global.asa đơn giản



5.5.2. TẬP HỢP (COLLECTION) TRONG ASP

5.5.2.1. Khái niệm

Tập hợp là một khái niệm thường xuyên phải sử dụng trong ASP. Hiểu một cách đơn

giản, tập hợp là một số các biến, đối tượng thuộc cùng một đối tượng nào đó. Trong ASP đa

số các đối tượng đều có các tập hợp bên trong nó.

102



5.5.2.2. Cách truy cập các phần tử trong tập hợp

Một tập hợp trong ASP có tính chất như một mảng các giá trị. Chúng ta có thể truy cập

thông qua một khóa hoặc một số nguyên coi như chỉ số của mảng đó. Một tập hợp thông

thường có 3 thuộc tính cơ bản đó là Item, Key và Count trong đó thuộc tính Item là "thuộc

tính mặc định" nghĩa là trong một số trường hợp ta có thể không cần thiết viết tên thuộc tính

này khi truy cập.



a. Thuộc tính Item

Được dùng để truy cập đến một phần tử nào đó trong tập hợp. Ta có thể xác định vị trí

của phần tử đó bằng một chuỗi hay có thể là một số.

Ví dụ: Ta có thể truy cập vào tập hợp QueryString của đối tượng Request như sau:



hoặc ta có thể



Vì thuộc tính Item là thuộc tính mặc định của tập hợp nên ta có thể bỏ qua thuộc tính

này cho đơn giản trong khi viết như sau:



b. Thuộc tính Key

Thuộc tính này trả ra tên cụ thể của một phần tử trong tập hợp.

Ta có công thức:

- Nếu i là chỉ số của phần tử trong một tập hợp A thì name = A.Key(i) là tên của

phần tử này. Khi đó cách viết A.Item(i) và A.Item(Name) là hoàn toàn tương

đương.



c. Thuộc tính Count

Thuộc tính này trả về tổng số phần tử trong một tập hợp.



103



5.6. Xử lý các FORM dữ liệu

5.6.1. Mở đầu

Các form dữ liệu là nơi người dùng có thể nhập dữ liệu vào và gửi về phía Server. Một

form chứa một hoặc nhiều điều khiển và người sử dụng có thể nhập các giá trị vào. Sau khi

nhập xong dữ liệu người sử dụng sẽ ra lệnh gửi form đi, form chứa các dữ liệu này sẽ được

gửi tới địa chỉ được chỉ định trong form để xử lý. Kết quả trả về cho người dùng phụ thuộc

vào trình xử lý trên server.

Để định nghĩa một form ta sử dụng đoạn mã



Phương thức: Cách thức gửi form đi, có thể sử dụng GET hoặc POST



5.6.2. Sử dụng phương thức GET

5.6.2.1. Định nghĩa form dùng phương thức GET

Để định nghĩa form dùng phương thức GET ta dùng đoạn mã sau



Ví dụ



5.6.2.2. Đặc điểm form dạng GET

Khi định nghĩa form dạng GET thì các dữ liệu mà form gửi đến trình xử lý sẽ được gửi

đi theo phương thức GET. Nghĩa là các dữ liệu này sẽ được đưa thêm vào phần sau của chuối

URL trên trình duyệt.

Với cách làm này có đôi phần tiện dụng vì ta có thể nhập giá trị các biến trực tiếp lên

URL của trình xử lý. Tuy nhiên có một nhược điểm là dung lượng kí tự có thể nhập lên URL

là khá nhỏ (dưới 2000 kí tự). Do đó người ta chỉ dùng cách này khi lượng thông tin cần truyền

là đơn giản, dung lượng ít.



5.6.2.3. Cách lấy dữ liệu từ form dạng GET

Để lấy dữ liệu từ form dạng GET người ta dùng tập hợp QueryString của đối tượng

Request.

Cú pháp: Request.QueryString("")



Chi tiết về đối tượng này sẽ được đề cập trong các bài sau. Ta có thể tam hiểu

thông qua ví dụ sau đây:

5.6.2.4. Ví dụ

Trong ví dụ này ta làm một form cho phép người sử dụng nhập thông tin về Họ và tên

rồi gửi về trình xử lý theo phương thức GET, trình xử lý sẽ hiện một câu thông báo chào

người đó.

FORMGET.HTM

104



Sau khi nhập dữ liệu trên trình duyệt và nhấn Gửi đi chú ý chuỗi trên URL



5.6.3. Sử dụng phương thức POST

5.6.3.1. Định nghĩa form dùng phương thức POST

Để định nghĩa form dạng POST ta dùng đoạn mã sau



Ví dụ:



5.6.3.2. Đặc điểm form dạng POST

Khi định nghĩa form dạng POST các dữ liệu sẽ được gửi thẳng đến trình xủ lý theo

phương thức POST, không qua URL do đó lượng dữ liệu được gửi đi là không hạn chế.

Người ta thường dùng phương thức POST để truyền các dữ liệu lớn.



5.6.3.3. Cách lấy dữ liệu từ form dạng POST

Để lấy dữ liệu từ form được gửi đến theo phương thức POST người ta dùng tập hợp

FORM của đối tượng Request.

Cú pháp: Request.Form("")

Chi tiết về đối tượng này sẽ được đề cập trong các bài sau. Ta có thể tam hiểu thông qua

ví dụ sau đây:



5.6.3.4. Ví dụ

Trong ví dụ này ta làm lại ví dụ trong phần 2.4 của bài này nhưng có khác là dữ liệu

trong form được gửi đi theo phương thức POST.

FORMPOST.HTM



105



Sau khi nhập dữ liệu trên trình duyệt và nhấn Gửi đi chuỗi trên URL không có dữ liệu

của form



106



5.7. Các đối tượng cài sẵn trong ASP

5.7.1. Các đối tượng ASP

Thực chất ASP được xây dựng trên cơ sở hướng đối tượng và nó có một tập các đối

tượng được cài đặt sẵn làm cơ sở cho người lập trình, có các đối tượng tiện ích (có thể cài đặt

hoặc không) và bản thân chúng cũng có những đối tượng cho riêng mình đó là các đối tượng

ActiveX/COM

Một số đối tượng cài sẵn thông dụng:

o Request

o Response

o Application

o Session

o Server

Các đối tượng có các tập hợp, các thuộc tính và các phương thức, để truy cập vào một

thuộc tính hoặc một phương thức nào đó của đối tượng ta sử dụng:

.

Ví dụ:

Response.Write("Hello World")



5.7.2. Đối tượng REQUEST

Một trong những mục đích của ASP là cho phép nhận thông tin từ phía client và người

sử dụng. Đối tượng Request được dùng để nhận các thông tin đó được dễ dàng. Đối tượng

Request quản lý các thông tin được gửi từ phía web browser lên server như dữ liệu của các

form, cookies...

Đối tượng Request giúp chúng ta truy cập vào đoạn đầu và thân các yêu cầu HTTP của

người sử dụng. Đây là đối tượng rất quan trọng vì ta phải thông qua nó để nhận được và đáp

ứng các yêu cầu người sử dụng đưa ra. Sử dụng đối tượng Request chúng ta mới có thể xây

dựng được trang web động và thực hiện được các hoạt động khác có ý nghĩa hơn ở máy chủ

như cập nhật các dữ liệu ở máy khách vào cơ sở dữ liệu...



5.7.2.1. Một số tập hợp thông dụng trong đối tượng Request

TÊN TẬP HỢP



QueryString()

Form()

Cookies()

ServerVariables()



MIÊU TẢ



Chứa các giá trị được gửi lên từ các yêu cầu HTTP

Get (hiểu đơn giản là từ các URL)

Chứa các giá trị trong form được gửi đến (với điều

kiện form phải sử dụng phương pháp POST

Chứa các thông tin của các cookies được gửi trong

yêu cầu HTTP

Chứa danh sách các giá trị của các biến môi trường

đã được xác định trước



a. Tập hợp QueryString

Tập hợp QueryString cho phép ta lấy thông tin từ máy khách gửi đến, có thể là một

form được gửi theo phương pháp GET hoặc dữ liệu được gắn với URL khi trang web được

yêu cầu.

107



Để đưa được các biến vào chương trình, sau phần cuối của địa chỉ thông thường ta thêm

dấu (?) rồi sau đó đến từng cặp = được phân cách nhau bởi dấu (&).



Ví dụ: để truyền ba biến a, b, c có giá trị lần lượt là 1, 2, 1 về trang

PTBAC2.ASP trên server thì chuỗi URL khi đó như sau.

http://localhost/ptbac2.asp?a=1&b=2&c=1

Tập hợp này có tính năng tương đối hạn chế về số lượng các kí tự có thể gửi được trong

tiêu đề và trong yêu cầu HTTP. Giới hạn dữ liệu này ở khoảng dưới 2000 kí tự. Nêu số lượng

kí tự vượt quá số lượng giới hạn thì chúng sẽ không được sử dụng mặc dù script vẫn chạy.

Ví dụ: ta quay lại ví dụ Giải phương trình bậc 2 ở bài trước. Các biến a, b, c được lấy

vào trong chương trình bằng cách lấy từ QueryString.



Và các biến này được truyền vào từ URL của trình duyệt:



b. Tập hợp Form

Tập hợp này cho phép nhận thông tin đầu vào từ các form được gửi đến thông qua

phương thức POST. Phương thức này có ưu điểm hơn phương thức GET ở chỗ là có thể

truyền được lượng dữ liệu lớn.

* Ví dụ: Ta có thể sửa lại chương trình giải phương trình bậc 2 trong phần trên để cho

phép người sử dụng nhập dữ liệu từ trang PTBAC2.HTM và gửi dữ liệu sang trang

GIAIPTB2.ASP để xử lý như sau:

- Mã lệnh PTBAC2.HTM



- Kết quả PTBAC2.HTM



108



Xem Thêm
Tải bản đầy đủ (.doc) (125 trang)

×