ASP精華文摘-001 (轉)

來源:互聯網
上載者:User
精華|文摘 來源:www.yesky.com
轉貼-RESPONSE對象(2000.03.22)

RESPONSE對象

RESPONSE對象非常有用而且功能豐富。這裡我們將要給大家介紹的是其最基本的功能。
當然它的所有功能比我們在這裡所要介紹的多得多,但我們認為這裡所要介紹的20%的
內容是你會在80%的時間中都會用到的。我們認為RESPONSE對象主要的功能如下:

# RESPONSE.WRITE
# RESPONSE.WRITE也可以簡寫為<%=%>這樣的格式簡單的嵌入到HTML語言中
# RESPONSE.REDIRECT方法可以使瀏覽器嘗試串連到其他 URL
# RESPONSE.END可以有效地終止一段指令碼的繼續解析

RESPONSE對象第二部分——BUFFER控制
Response object error 'ASP 0156 : 80004005'
Header Error
whatever.asp, line #
The HTTP headers are already written to the client browser.
Any HTTP header modifications must be made before writing page content.

這樣的錯誤資訊是否也同樣困擾過你?
不過只要你把"<%response.buffer=true%>”這一行加在任何一頁混合著REDIRECTS和
網頁內容的網頁的第一行,你就不會再看到這樣的錯誤了!這一行會解除瀏覽器發出:
"HEADERS ARE ALREADY SENT”資訊。

Buffer屬性指示是否緩衝頁輸出。也就是說添加這個屬性後頁面所有的資訊會先放入
緩衝頁中,等到當前頁的所有伺服器指令碼處理完畢之後才向瀏覽器寫入。如果當瀏覽
器已經寫了一些什麼內容之後,你就再也不能使用RESPONSE.REDIRECT了,因為瀏覽器
不能又寫內容又REDIRECTS(改變方向)。

<%response.buffer=true%>主要是告訴瀏覽器在一下事件發生之前不要寫入任何東西:
a) response.end執行前
b) response.flush執行前
c) 當前頁的所有伺服器指令碼處理完畢之前
d) response.redirect命令已被發送,並且沒有任何內容通過response.flush被發送之前。

<%response.buffer=true%>的唯一缺點就是緩衝將在伺服器未處理完當前頁的所有指令碼之前
阻止在用戶端顯示響應。如果頁面要花一點時間來組織(比如從資料庫中提取上千條的記錄),
這樣在網頁沒有被完全提交給瀏覽器之前人們看不到任何資訊,時間久了網頁看上去就似乎
是沒有響應了。為了避免這樣的情況,通常使用RESPONSE.FLUSH可以讓使用者看已經組織完成
的部分頁面內容。

RESPONSE對象第二部分——Redirect方法

Redirect 方法使瀏覽器嘗試串連到其他 URL,這個很類似於HTML中<meta refresh>的功能。
以下是這個方法的一個例子:

<html><head>
<TITLE>FormJump.asp</TITLE>
</head><body bgcolor="#FFFFFF">
<form action="FormJumpRespond.asp" method="get">
<SELECT NAME="wheretogo">
<OPTION SELECTED VALUE="fun">Fun</OPTION>
<OPTION value="news">Daily News</OPTION>
<OPTION value="docs">ASP IIS3 Roadmap/Docs</OPTION>
<OPTION value="main">MainPage of ActiveServerPages.com</OPTION>
<OPTION value="sample">IIS 3 Sample ASP scripts</OPTION>
</SELECT>
<input type=submit value="Choose Destination">
</form>
</body></html>


The responder that reacts to this form is:

<%response.buffer=true%>
<html><head>
<title>formjumprespond.asp</title>&
<body bgcolor="#FFFFFF">
<%
' My ASP program that redirects to URL
thisURL="http://www.joyeasy.net/"
where=Request.QueryString("Wheretogo")
Select Case where
case "main"
response.redirect thisURL & "/"
case "samples"
response.redirect thisURL & "/aspsamp/samples/samples.htm"
case "docs"
response.redirect thisURL & "/iasdocs/aspdocs/roadmap.asp"
case "news"
response.redirect "http://www.sina.com"
case "fun"
response.redirect "http://www.nease.com"
End Select
response.write "All dressed up and I don't know where to go<br>"
response.write "I recommend --> " & "<br>"
response.write server.htmlencode(thisURL & "/learn/test/res2.asp?where=fun") & "<br>"
response.write "for a good laugh!" & "<P>"
%>
</body></html>
=======================================================================================================================================
轉貼-如何利用ASP實現郵箱訪問(2000.03.21)

如何利用ASP實現郵箱訪問

您在訪問網站時是否會在有些頁面上見到這種功能---您在可以訪問此網站的同時,
還可以查看您免費郵箱中是否有新郵件。這個功能是不是讓您覺得很心動、很神秘呢?
下面,我就用ASP來舉個例子讓您知道是如何?這一功能的。

首先你可以去一些提供免費郵件服務的網站,申請一個帳號然後登入。在開啟郵箱時,
請您注意地址欄中的內容。現在以371為例,你會發現其內容通常是:
http://www.371.net/prog/login?user=fighter&pass=mypassword。
其中"fighter"是您的帳號,"mypassword"是您的密碼。這時我們可以從這裡得到3個資訊。
第1條是我們得到了處理檔案的url及檔案名稱:"http://www.371.net/prog/login";
第2條是記錄您帳號的變數名:user;第3條是記錄您密碼的變數名:pass。
我們知道這些資訊後,就可著手寫html檔案和asp檔案了。

'/*Html源檔案內容如下:*/
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
</HEAD>
<title>City Club 首頁</title>
<style type="text/css">
<!--
td { font-size: 9pt}
body { font-size: 9pt}
select { font-size: 9pt}
A {text-decoration: none; color: #003366; font-size: 9pt}
A:hover {text-decoration: underline; color: #FF0000; font-size: 9pt}
-->
</style>
<script language="javascript">
function check(tt) {
if (window.document.form1.selectmail.selectedIndex==0) {


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.