啪啪拉拉噼里啪啦

          初學(xué)者天堂資料匯集

            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            16 隨筆 :: 73 文章 :: 16 評(píng)論 :: 0 Trackbacks
          網(wǎng)站首頁(yè)下載中心域名交易站長(zhǎng)論壇域名主機(jī)免費(fèi)電郵免費(fèi)域名書籍教程下載
          設(shè)為首頁(yè)
          加入收藏
          總編信箱
          投稿或申請(qǐng)專欄請(qǐng)先 [登 陸]
          學(xué)院首頁(yè) 網(wǎng)絡(luò)編程 網(wǎng)頁(yè)設(shè)計(jì) 圖形圖象 數(shù) 據(jù) 庫(kù) 服 務(wù) 器 網(wǎng)絡(luò)媒體 網(wǎng)絡(luò)安全 個(gè)人專欄 站長(zhǎng)CLUB 業(yè)界新聞 信息公告
           當(dāng)前位置:站長(zhǎng)學(xué)院 >> 網(wǎng)絡(luò)編程 >> ASP專區(qū) >> 查看文章詳細(xì)內(nèi)容
          2005年4月9日 7:41:51 星期六
          公告通知
              中國(guó)站長(zhǎng)學(xué)院開(kāi)通以來(lái)受到了廣大用戶的熱情關(guān)注,一直有站長(zhǎng)朋友要求與本站交換連接,鑒于前段時(shí)間網(wǎng)站結(jié)構(gòu)調(diào)整,無(wú)暇顧及此...
          返回上級(jí)列表
          資料搜索
          相關(guān)文章
          ASP+Access的安全隱患及對(duì)策
          加速ASP程序的顯示速度
          ASP 編程中 20 個(gè)非常有用的例子
          [ 來(lái)源:中國(guó)站長(zhǎng)學(xué)院 | 作者:lesyi | 時(shí)間:2005-3-23 21:13:43 | 瀏覽: 2466人次 ]
          字號(hào)選擇〖 〗/ 雙擊滾屏 單擊停止   

          1.如何用Asp判斷你的網(wǎng)站的虛擬物理路徑
          答:使用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.如何計(jì)算每天的平均反復(fù)訪問(wèn)人數(shù)
          答:解決方法
          < % startdate=DateDiff("d",Now,"01/01/1990")
          if strdate< 0 then startdate=startdate*-1
          avgvpd=Int((usercnt)/startdate) % >
          顯示結(jié)果
          < % response.write(avgvpd) % >
          that is it.this page have been viewed since November 10,1998

          4.如何顯示隨機(jī)圖象
          < % dim p,ppic,dpic
          ppic=12
          randomize
          p=Int((ppic*rnd)+1)
          dpic="graphix/randompics/"&p&".gif"
          % >
          顯示
          < img src="< %=dpic% >" >

          5.如何回到先前的頁(yè)面
          答:< a href="< %=request.serverVariables("Http_REFERER")% >" >preivous page< /a >
          或用圖片如:< img src="arrowback.gif" alt="< %=request.serverVariables("HTTP_REFERER")% >" >

          6.如何確定對(duì)方的IP地址
          答:< %=Request.serverVariables("REMOTE_ADDR)% >

          7.如何鏈結(jié)到一副圖片上
          答:< % @Languages=vbs cript % >
          < % response.expires=0
          strimagename="graphix/errors/erroriamge.gif"
          response.redirect(strimagename)
          % >

          8.強(qiáng)迫輸入密碼對(duì)話框
          答:把這句話放載頁(yè)面的開(kāi)頭
          < % response.status="401 not Authorized"
          response.end
          % >

          9.如何傳遞變量從一頁(yè)到另一頁(yè)
          答:用 HIDDEN 類型來(lái)傳遞變量
          < % 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 程序內(nèi)使用 msgbox,程序出錯(cuò)說(shuō)沒(méi)有權(quán)限
          答:由于 asp 是服務(wù)器運(yùn)行的,如果可以在服務(wù)器顯示一個(gè)對(duì)話框,那么你只好等有人按了確定之后,你的程序才能繼續(xù)執(zhí)行,而一般服務(wù)器不會(huì)有人守著,所以微軟不得不禁止這個(gè)函數(shù),并胡亂告訴你 (:) 呵呵) 沒(méi)有權(quán)限。但是ASP和客戶端腳本結(jié)合倒可以顯示一個(gè)對(duì)話框,as follows:
          < % yourVar="測(cè)試對(duì)話框"% >
          < % s cript language=''javas cript'' >
          alert("< %=yourvar% >")
          < /s cript >

          11.有沒(méi)有辦法保護(hù)自己的源代碼,不給人看到
          答:可以去下載一個(gè)微軟的Windows s cript Encoder,它可以對(duì)asp的腳本和客戶端javas cript/vbs cript腳本進(jìn)行加密。。。不過(guò)客戶端加密后,只有ie5才能執(zhí)行,服務(wù)器端腳本加密后,只有服務(wù)器上安裝有s cript engine 5(裝一個(gè)ie5就有了)才能執(zhí)行。

          12.怎樣才能將 query string 從一個(gè) asp 文件傳送到另一個(gè)?
          答:前者文件加入下句: Response.Redirect("second.asp?" & Request.ServerVariables("QUERY_STRING"))

          13.global.asa文件總是不起作用?
          答:只有web目錄設(shè)置為web application, global.asa才有效,并且一個(gè)web application的根目錄下 global.asa才有效。IIS4可以使用Internet Service Manager設(shè)置application setting 怎樣才能使得htm文件如同asp文件一樣可以執(zhí)行腳本代碼?

          14.怎樣才能使得htm文件如同asp文件一樣可以執(zhí)行腳本代碼?
          答:Internet Sevices Manager - > 選擇default web site - >右鼠鍵- >菜單屬性-〉主目錄- > 應(yīng)用程序設(shè)置(Application Setting)- > 點(diǎn)擊按鈕 "配置"- > app mapping - >點(diǎn)擊按鈕"Add" - > executable browse選擇 \WINNT\SYSTEM32\INETSRV\ASP.DLL EXTENSION 輸入 htm method exclusions 輸入PUT.DELETE 全部確定即可。但是值得注意的是這樣對(duì)htm也要由asp.dll處理,效率將降低。

          15.如何注冊(cè)組件
          答:有兩種方法。
          第一種方法:手工注冊(cè) DLL 這種方法從IIs 3.0一直使用到IIs 4.0和其它的Web Server。它需要你在命令行方式下來(lái)執(zhí)行,進(jìn)入到包含有DLL的目錄,并輸入:regsvr32 component_name.dll 例如 c:\temp\regsvr32 AspEmail.dll 它會(huì)把dll的特定信息注冊(cè)入服務(wù)器中的注冊(cè)表中。然后這個(gè)組件就可以在服務(wù)器上使用了,但是這個(gè)方法有一個(gè)缺陷。當(dāng)使用這種方法注冊(cè)完畢組件后,該組件必須要相應(yīng)的設(shè)置NT的匿名帳號(hào)有權(quán)限執(zhí)行這個(gè)dll。特別是一些組件需要讀取注冊(cè)表,所以,這個(gè)注冊(cè)組件的方法僅僅是使用在服務(wù)器上沒(méi)有MTS的情況下,要取消注冊(cè)這個(gè)dll,使用:regsvr32 /u aspobject.dll example c:\temp\regsvr32 /u aneiodbc.dll

          第二種方法:使用MTS(Microsoft Transaction Server) MTS是IIS 4新增特色,但是它提供了巨大的改進(jìn)。MTS允許你指定只有有特權(quán)的用戶才能夠訪問(wèn)組件,大大提高了網(wǎng)站服務(wù)器上的安全性設(shè)置。在MTS上注冊(cè)組件的步驟如下:
          1) 打開(kāi)IIS管理控制臺(tái)。
          2) 展開(kāi)transaction server,右鍵單擊"pkgs installed"然后選擇"new package"。
          3) 單擊"create an empty package"。
          4) 給該包命名。
          5) 指定administrator帳號(hào)或則使用"interactive"(如果服務(wù)器經(jīng)常是使用administrator 登陸的話)。
          6) 現(xiàn)在使用右鍵單擊你剛建立的那個(gè)包下面展開(kāi)后的"components"。選擇 "new then component"。
          7) 選擇 "install new component" [b]。
          8) 找到你的.dll文件然后選擇next到完成。
          要?jiǎng)h除這個(gè)對(duì)象,只要選擇它的圖標(biāo),然后選擇delete。
          附注:特別要注意第二種方法,它是用來(lái)調(diào)試自己編寫組件的最好方法,而不必每次都需要重新啟動(dòng)機(jī)器了。

          16. ASP與Access數(shù)據(jù)庫(kù)連接:
          <%@ language=VBs cript%>
          <%
          dim conn,mdbfile
          mdbfile=server.mappath("數(shù)據(jù)庫(kù)名稱.mdb")
          set conn=server.createobject("adodb.connection")
          conn.open "driver={microsoft access driver (*.mdb)};uid=admin;pwd=數(shù)據(jù)庫(kù)密碼;dbq="&mdbfile
          %>

          17. ASP與SQL數(shù)據(jù)庫(kù)連接:
          <%@ language=VBs cript%>
          <%
          dim conn
          set conn=server.createobject("ADODB.connection")
          con.open "PROVIDER=SQLOLEDB;DATA SOURCE=SQL服務(wù)器名稱或IP地址;UID=sa;PWD=數(shù)據(jù)庫(kù)密碼;DATABASE=數(shù)據(jù)庫(kù)名稱
          %>

          建立記錄集對(duì)象:

          set rs=server.createobject("adodb.recordset")
          rs.open SQL語(yǔ)句,conn,3,2

          18. SQL常用命令使用方法:

          (1) 數(shù)據(jù)記錄篩選:

          sql="select * from 數(shù)據(jù)表 where 字段名=字段值 order by 字段名 [desc]"

          sql="select * from 數(shù)據(jù)表 where 字段名 like ''%字段值%'' order by 字段名 [desc]"

          sql="select top 10 * from 數(shù)據(jù)表 where 字段名 order by 字段名 [desc]"

          sql="select * from 數(shù)據(jù)表 where 字段名 in (''值1'',''值2'',''值3'')"

          sql="select * from 數(shù)據(jù)表 where 字段名 between 值1 and 值2"

          (2) 更新數(shù)據(jù)記錄:

          sql="update 數(shù)據(jù)表 set 字段名=字段值 where 條件表達(dá)式"

          sql="update 數(shù)據(jù)表 set 字段1=值1,字段2=值2 …… 字段n=值n where 條件表達(dá)式"

          (3) 刪除數(shù)據(jù)記錄:

          sql="delete from 數(shù)據(jù)表 where 條件表達(dá)式"

          sql="delete from 數(shù)據(jù)表" (將數(shù)據(jù)表所有記錄刪除)

          (4) 添加數(shù)據(jù)記錄:

          sql="insert into 數(shù)據(jù)表 (字段1,字段2,字段3 …) valuess (值1,值2,值3 …)"

          sql="insert into 目標(biāo)數(shù)據(jù)表 select * from 源數(shù)據(jù)表" (把源數(shù)據(jù)表的記錄添加到目標(biāo)數(shù)據(jù)表)

          (5) 數(shù)據(jù)記錄統(tǒng)計(jì)函數(shù):

          AVG(字段名) 得出一個(gè)表格欄平均值
          COUNT(*|字段名) 對(duì)數(shù)據(jù)行數(shù)的統(tǒng)計(jì)或?qū)δ骋粰谟兄档臄?shù)據(jù)行數(shù)統(tǒng)計(jì)
          MAX(字段名) 取得一個(gè)表格欄最大的值
          MIN(字段名) 取得一個(gè)表格欄最小的值
          SUM(字段名) 把數(shù)據(jù)欄的值相加

          引用以上函數(shù)的方法:

          sql="select sum(字段名) as 別名 from 數(shù)據(jù)表 where 條件表達(dá)式"
          set rs=conn.excute(sql)

          用 rs("別名") 獲取統(tǒng)的計(jì)值,其它函數(shù)運(yùn)用同上。

          (5) 數(shù)據(jù)表的建立和刪除:

          CREATE TABLE 數(shù)據(jù)表名稱(字段1 類型1(長(zhǎng)度),字段2 類型2(長(zhǎng)度) …… )

          例:CREATE TABLE tab01(name varchar(50),datetime default now())

          DROP TABLE 數(shù)據(jù)表名稱 (永久性刪除一個(gè)數(shù)據(jù)表)

          19. 記錄集對(duì)象的方法:

          rs.movenext 將記錄指針從當(dāng)前的位置向下移一行
          rs.moveprevious 將記錄指針從當(dāng)前的位置向上移一行
          rs.movefirst 將記錄指針移到數(shù)據(jù)表第一行
          rs.movelast 將記錄指針移到數(shù)據(jù)表最后一行
          rs.absoluteposition=N 將記錄指針移到數(shù)據(jù)表第N行
          rs.absolutepage=N 將記錄指針移到第N頁(yè)的第一行
          rs.pagesize=N 設(shè)置每頁(yè)為N條記錄
          rs.pagecount 根據(jù) pagesize 的設(shè)置返回總頁(yè)數(shù)
          rs.recordcount 返回記錄總數(shù)
          rs.bof 返回記錄指針是否超出數(shù)據(jù)表首端,true表示是,false為否
          rs.eof 返回記錄指針是否超出數(shù)據(jù)表末端,true表示是,false為否
          rs.delete 刪除當(dāng)前記錄,但記錄指針不會(huì)向下移動(dòng)
          rs.addnew 添加記錄到數(shù)據(jù)表末端
          rs.update 更新數(shù)據(jù)表記錄

          ---------------------------------------

          20 Recordset對(duì)象方法

          Open方法

          recordset.Open Source,ActiveConnection,CursorType,LockType,Options

          Source
          Recordset對(duì)象可以通過(guò)Source屬性來(lái)連接Command對(duì)象。Source參數(shù)可以是一個(gè)Command對(duì)象名稱、一段SQL命令、一個(gè)指定的數(shù)據(jù)表名稱或是一個(gè)Stored Procedure。假如省略這個(gè)參數(shù),系統(tǒng)則采用Recordset對(duì)象的Source屬性。

          ActiveConnection
          Recordset對(duì)象可以通過(guò)ActiveConnection屬性來(lái)連接Connection對(duì)象。這里的ActiveConnection可以是一個(gè)Connection對(duì)象或是一串包含數(shù)據(jù)庫(kù)連接信息(ConnectionString)的字符串參數(shù)。

          CursorType
          Recordset對(duì)象Open方法的CursorType參數(shù)表示將以什么樣的游標(biāo)類型啟動(dòng)數(shù)據(jù),包括adOpenForwardOnly、adOpenKeyset、adOpenDynamic及adOpenStatic,分述如下:
          --------------------------------------------------------------
          常數(shù) 常數(shù)值 說(shuō)明
          -------------------------------------------------------------
          adOpenForwardOnly 0 缺省值,啟動(dòng)一個(gè)只能向前移動(dòng)的游標(biāo)(Forward Only)。
          adOpenKeyset 1 啟動(dòng)一個(gè)Keyset類型的游標(biāo)。
          adOpenDynamic 2 啟動(dòng)一個(gè)Dynamic類型的游標(biāo)。
          adOpenStatic 3 啟動(dòng)一個(gè)Static類型的游標(biāo)。
          -------------------------------------------------------------
          以上幾個(gè)游標(biāo)類型將直接影響到Recordset對(duì)象所有的屬性和方法,以下列表說(shuō)明他們之間的區(qū)別。

          -------------------------------------------------------------
          Recordset屬性 adOpenForwardOnly adOpenKeyset adOpenDynamic adOpenStatic
          -------------------------------------------------------------
          AbsolutePage 不支持 不支持 可讀寫 可讀寫
          AbsolutePosition 不支持 不支持 可讀寫 可讀寫
          ActiveConnection 可讀寫 可讀寫 可讀寫 可讀寫
          BOF 只讀 只讀 只讀 只讀
          Bookmark 不支持 不支持 可讀寫 可讀寫
          CacheSize 可讀寫 可讀寫 可讀寫 可讀寫
          CursorLocation 可讀寫 可讀寫 可讀寫 可讀寫
          CursorType 可讀寫 可讀寫 可讀寫 可讀寫
          EditMode 只讀 只讀 只讀 只讀
          EOF 只讀 只讀 只讀 只讀
          Filter 可讀寫 可讀寫 可讀寫 可讀寫
          LockType 可讀寫 可讀寫 可讀寫 可讀寫
          MarshalOptions 可讀寫 可讀寫 可讀寫 可讀寫
          MaxRecords 可讀寫 可讀寫 可讀寫 可讀寫
          PageCount 不支持 不支持 只讀 只讀
          PageSize 可讀寫 可讀寫 可讀寫 可讀寫
          RecordCount 不支持 不支持 只讀 只讀
          Source 可讀寫 可讀寫 可讀寫 可讀寫
          State 只讀 只讀 只讀 只讀
          Status 只讀 只讀 只讀 只讀
          AddNew 支持 支持 支持 支持
          CancelBatch 支持 支持 支持 支持
          CancelUpdate 支持 支持 支持 支持
          Clone 不支持 不支持
          Close 支持 支持 支持 支持
          Delete 支持 支持 支持 支持
          GetRows 支持 支持 支持 支持
          Move 不支持 支持 支持 支持
          MoveFirst 支持 支持 支持 支持
          MoveLast 不支持 支持 支持 支持
          MoveNext 支持 支持 支持 支持
          MovePrevious 不支持 支持 支持 支持
          NextRecordset 支持 支持 支持 支持
          Open 支持 支持 支持 支持
          Requery 支持 支持 支持 支持
          Resync 不支持 不支持 支持 支持
          Supports 支持 支持 支持 支持
          Update 支持 支持 支持 支持
          UpdateBatch 支持 支持 支持 支持
          --------------------------------------------------------------
          其中NextRecordset方法并不適用于Microsoft Access數(shù)據(jù)庫(kù)。

          LockType
          Recordset對(duì)象Open方法的LockType參數(shù)表示要采用的Lock類型,如果忽略這個(gè)參數(shù),那么系統(tǒng)會(huì)以Recordset對(duì)象的LockType屬性為預(yù)設(shè)值。LockType參數(shù)包含adLockReadOnly、adLockPrssimistic、adLockOptimistic及adLockBatchOptimistic等,分述如下:

          -------------------------------------------------------------
          常數(shù) 常數(shù)值 說(shuō)明
          --------------------------------------------------------------
          adLockReadOnly 1 缺省值,Recordset對(duì)象以只讀方式啟動(dòng),無(wú)法運(yùn)行AddNew、Update及Delete等方法
          adLockPrssimistic 2 當(dāng)數(shù)據(jù)源正在更新時(shí),系統(tǒng)會(huì)暫時(shí)鎖住其他用戶的動(dòng)作,以保持?jǐn)?shù)據(jù)一致性。
          adLockOptimistic 3 當(dāng)數(shù)據(jù)源正在更新時(shí),系統(tǒng)并不會(huì)鎖住其他用戶的動(dòng)作,其他用戶可以對(duì)數(shù)據(jù)進(jìn)行增、刪、改的操作。
          adLockBatchOptimistic 4 當(dāng)數(shù)據(jù)源正在更新時(shí),其他用戶必須將CursorLocation屬性改為adUdeClientBatch才能對(duì)數(shù)據(jù)進(jìn)行增、
          刪、改的操作

          [發(fā)給好友]  [打印本頁(yè)]  [關(guān)閉窗口]  [返回頂部]   轉(zhuǎn)載請(qǐng)注明來(lái)源:http://edu.chinaz.com   
          特別聲明: 本站除部分特別聲明禁止轉(zhuǎn)載的專稿外的其他文章可以自由轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處和原始作者。文章版權(quán)歸文章原始作者所有。對(duì)于被本站轉(zhuǎn)載文章的個(gè)人和網(wǎng)站,我們表示深深的謝意。如果本站轉(zhuǎn)載的文章有版權(quán)問(wèn)題請(qǐng)聯(lián)系編輯人員,我們盡快予以更正。
          責(zé)任編輯: 設(shè)計(jì)風(fēng) 投稿作者: lesyi
          信息來(lái)源: 中國(guó)站長(zhǎng)學(xué)院 錄入時(shí)間: 2005-3-23 21:13:43
          瀏覽次數(shù): 2466 投稿信箱: Edu#chinaz.com
          設(shè)為首頁(yè) - 加入收藏 - 關(guān)于我們 - 廣告服務(wù) - 版權(quán)申明 - 友情鏈接 - 聯(lián)系方式 - 總編信箱 - 會(huì)員投稿
          posted on 2005-04-09 07:46 噼里啪啦的世界 閱讀(154) 評(píng)論(0)  編輯  收藏

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 铜川市| 宜兴市| 灵川县| 永嘉县| 姜堰市| 巴林左旗| 赤城县| 高清| 盐边县| 晋城| 铜山县| 友谊县| 蕲春县| 防城港市| 麻阳| 无极县| 浑源县| 白玉县| 平利县| 邯郸县| 刚察县| 宝鸡市| 泗水县| 辽源市| 柏乡县| 六枝特区| 崇义县| 石景山区| 轮台县| 平昌县| 平潭县| 彩票| 蓬溪县| 新巴尔虎左旗| 阿巴嘎旗| 瓮安县| 山阴县| 德兴市| 荥经县| 陈巴尔虎旗| 伽师县|