CHƯƠNG 6 : ASP NÂNG CAO
5. Đối tượng Server
Đối tượng Server cung cấp các thuộc tính và phương thức hỗ
trợ cho các chức năng ở mức server.
Để chỉ định khoảng thời gian mà một đoạn mã script có thể thi
hành trên server trước khi hết thời gian cho phép (time out), ta đặt giá trị (tính bằng giây) cho thuộc tính Server.ScriptTimeOut. Ví dụ: <%Server.ScriptTimeOut=100%>
Để gọi thi hành một trang asp khác như thể nó là một phần của
trang asp hiện hành, ta dùng phương thức Server.Execute. Ví dụ:
<%Server.Execute("Welcome.asp")%>.
Để chuyển một chuỗi về dạng mã HTML, ta dùng phương thức
Server.HTMLEncode. Ví dụ lệnh sau:
<%= Server.HTMLEncode("The paragraph tag: <P>") %> sẽ sinh
ra chuỗi kết quả là: The paragraph tag: <P>. Trên màn hình sẽ hiển thị: The paragraph tag: <P>.
Để ánh xạ đường dẫn ảo thành đường dẫn thực chỉ nơi lưu trữ
vật lí thực sự trên máy, ta dùng phương thức
Server.MapPath(Path)
Trong ví dụ sau, tập tin data.txt được lưu trữ tại thư mục
C:\Inetpub\Wwwroot\Script cùng với tập tin test.asp. Thư mục C:\Inetpub\Wwwroot directory được coi như như là webroot (server's home directory).
Giả sử tập tin test.asp chứa đoạn mã sau. Đoạn mã này sử dụng biến server PATH_INFO để cho biết ra thư mục vật lí của tập tin này.
<%= Server.MapPath(Request.ServerVariables ("PATH_INFO"))%><BR>
Kết quả là c:\inetpub\wwwroot\script\test.asp<BR>
Các ví dụ sau minh họa việc ánh xạ sang thư mục vật lí căn cứ vào cách đặt đường dẫn là tương đối hay tuyệt đối. Một đường dẫn tương đối là đường dẫn không bắt đầu bằng dấu “/” hay “\”.
• Ví dụ 1: <%= Server.MapPath("data.txt")%><BR> <%= Server.MapPath("script/data.txt")%><BR> Kết quả là: c:\inetpub\wwwroot\script\data.txt<BR> • Ví dụ 2: <%= Server.MapPath("/script/data.txt")%><BR> <%= Server.MapPath("\script")%><BR> Kết quả là : c:\inetpub\wwwroot\script\data.txt<BR> và c:\inetpub\wwwroot\script<BR>
Để gửi các thông tin trạng thái hiện hành của trang asp đang được xử lí tới một trang asp khác để tiếp tục xử lí, ta dùng phương
thức Server.Transfer. Ví dụ:
ASP1.asp
<HTML> <BODY> <%
Dim sessvar1 Response.Write Session.SessionID Response.Write ("<BR>")
Response.Write("I am going to ASP2 <BR>") Server.Transfer("/Myasps/ASP2.asp") %> ASP2.asp <HTML> <BODY> <% Response.Write Session.SessionID %> </BODY> </HTML>
Để mã hóa các chuỗi thành qui tắc mã hóa URL, ta dùng
phương thức Server.URLEncode. Ví dụ đoạn mã sau: <%
Response.Write(Server.URLEncode("http://www.microsoft.com"))
%>
sẽ in ra chuỗi: http%3A%2F%2Fwww%2Emicrosoft%2Ecom