ASP編程中常用到的15個例子的代碼
1.如何用ASP判斷你的網站的虛擬物理路徑?
答 使用Mappath方法
<p align="center"><font size="4" face="Arial"><b>
The Physical path to this virtual website is:
</b></font>
<font color="#FF0000" size="6" face="Arial">
<%= Server.MapPath("\")%>
</font></p>
2.我如何知道使用者所用的浏覽器?
答 使用the Request object方法
strBrowser=Request.ServerVariables("HTTP_USER_AGENT")
If Instr(strBrowser,"MSIE") <> 0 Then
Response.redirect("ForMSIEOnly.htm")
Else
Response.redirect("ForAll.htm")
End If
3。如何計算每天的平均反復訪問人數?
答 解決方法
<% startdate=DateDiff("d",Now,"01/01/1990")
if strdate<0 then startdate=startdate*-1
avgvpd=Int((usercnt)/startdate) %>
顯示結果
<% response.write(avgvpd) %>
that is it.this page have been vIEwed since November 10,1998
4 如何顯示隨機圖象?
<% dim p,ppic,dpic
ppic=12
randomize
p=Int((ppic*rnd)+1)
dpic="graphix/randompics/"&p&".gif"
%>
顯示
<img src="<%=dpic%>>">
5.如何回到先前的頁面?
答<a href="<%=request.serverVariables("Http_REFERER")%>">preivous page</a>
或用圖片如:<img src="arrowback.gif" alt="<%=request.serverVariables("HTTP_REFERER")%>">
6.如何確定對方的IP地址
答<%=Request.serverVariables("REMOTE_ADDR)%>
7。如何鏈結到一副圖片上?
<% @Languages=vbscript %>
<% response.expires=0
strimagename="graphix/errors/erroriamge.gif"
response.redirect(strimagename)
%>
8.強迫輸入密碼對話框?
答把這句話放載頁面的開頭
<% response.status="401 not Authorized"
response.end
%>
9 如何傳遞變量從一頁到另一頁?
答 用HIDDEN類型來傳遞變量
<% form method="post" action="mynextpage.ASP">
<% for each item in request.form %>
<input namee="<%=item%>" type="HIDDEN"
value="<%=server.HtmlEncode(Request.form(item)) %>">
<% next %>
</form>
10 為何我在ASP程序內使用msgbox,程序出錯說沒有權限?
答由於asp是服務器運行的,如果可以在服務器顯示一個對話框,那 麼你只好等有人按了確定之後,你的程序才能繼續執行,而一般服務器不會有人守著,所以微軟不得不禁止這個函數,並胡亂告訴你 (:) 呵呵) 沒有權限。但是ASP和客戶端腳本結合倒可以顯示一個對話框, as follows:
<% yourVar="測試對話框"%>
<% script language='Javascript'>
alert("<%=yourvar%>")
</script>
11 有沒有辦法保護自己的源代碼,不給人看到?
答 可以去下載一個微軟的Windows Script Encoder,它 可以對ASP的腳本和客戶端Javascript/vbscript腳本進行加密。。。不過客戶端加密後,只有IE5才能執行,服務器端腳本加密後,只有服務器上安裝有script engine 5(裝一個IE5就有了)才能執行。
12 怎樣才能將query string從一個ASP文件傳送到另一個?
答 前者文件加入下句: Response.Redirect("second.ASP?" & Request.ServerVariables("QUERY_STRING"))
13 global.asa文件總是不起作用?
只有web目錄設置為web application, global.asa才有效,並且一個web application的根目錄下 global.asa才有效。 IIS4可以使用Internet Service Manager設置application setting 怎樣才能使得htm文件如同ASP文件一樣可以執行腳本代碼?
14 怎樣才能使得htm文件如同ASP文件一樣可以執行腳本代碼?
答 Internet Sevices Manager -> 選擇default web site ->右鼠鍵->菜單屬性->主目錄-> 應用程序設置(Application Setting)-> 點擊按鈕 "配置"-> app mapping ->點擊按鈕"Add" -> executable browse選擇 \WINNT\SYSTEM32\INETSRV\ASP.DLL EXTENSION 輸入 htm method exclusions 輸入PUT.DELETE 全部確定即可 但是值得注意的是這樣對htm也要由ASP.dll處理,效率將降低
15 如何注冊組件?
答 有兩種方法,
第一種方法:手工注冊DLL 這種方法從IIs 3.0一直使用到IIS 4.0和其它的Web Server.它需要你在命令行方式下 來執行,進入到包含有DLL的目錄,並輸入: :\\regsvr32 component_name.dll 例如 c:\temp\regsvr32 AspEmail.dll 它會把dll的特定信息注冊入服務器中的注冊表中。然後這個組件就可以在服務器上使用了, 但是這個方法有一個缺陷。當使用這種方法注冊完畢組件後,該組件必須要相應的設置NT的匿名帳號有權限執行這個dll。特別是一些組件需要讀取注冊表,所以,這個注冊組件的方法僅僅是 使用在服務器上沒有MTS的情況下,要取消注冊這個dll,使用: regsvr32 /u ASPobject.dll example c:\temp\regsvr32 /u aneiodbc.dll
第二種方法:使用MTS(Microsoft Transaction Server) MTS是IIS 4新增特色,但是它提供了巨大的改進。MTS允許你指定只有有特權的用戶才能夠 訪問組件,大大提高了網站服務器上的安全性設置。在MTS上注冊組件的步驟如下: I) 打開IIS管理控制台。 II) 展開transaction server,右鍵單擊"pkgs installed"然後選擇"new package" III) 單擊"create an empty package" IV) 給該包命名 V) 指定administrator帳號或則使用"interactive"(如果服務器經常是使用administrator 登陸的話) VI) 現在使用右鍵單擊你剛建立的那個包下面展開後的"components"。選擇 "new then component" VI) 選擇 "install new component" [b]VII) 找到你的.dll文件然後選擇next到完成。要刪除這個對象,只要選擇它的圖標,然後選擇delete. 附注:特別要注意第二種方法,它是用來調試自己編寫組件的最好方法,而不必每次都需要 重新啟動機器了。