前兩天在做一個(gè)站內(nèi)版的企搜引擎,發(fā)現(xiàn)某些站點(diǎn)可以鏈接站點(diǎn)內(nèi)容。。
奇怪之下看了看,原來(lái)是按照數(shù)據(jù)庫(kù)ID的自動(dòng)編號(hào)規(guī)律進(jìn)行鏈接的~~
閑暇之余弄了下面這個(gè)東東,希望對(duì)大家在以后的編寫(xiě)ASP程序中有所幫助!
<%
''//生成指定位數(shù)的隨機(jī)數(shù)字
''//也可以用Guidy寫(xiě)的iXuEr_Rnd_Str函數(shù),自帶15種樣式,可以偽MD5啦!!
Function rndStr(strLong)
Dim tempStr
Randomize
Do While Len(rndStr) < strLong
tempStr=CStr(Chr((57-48)*rnd+48))
rndStr=rndStr&tempStr
Loop
rndStr=rndStr
End Function
%>
下面以Form表單中提交的參數(shù)為例子針對(duì)Request.Form,需要傳遞的參數(shù)doAction原來(lái)的值是從數(shù)據(jù)庫(kù)讀取的ID
<form name=iform action="ABC.asp" method="post">
<input name=doAction type="hidden" value="<%=rndStr(10)%><%=Rs("ID")%><%=rndStr(10)%>">
</form>
注意:
上面的doAction的值有了改變,每刷新一次頁(yè)面得到的值都不一樣~~
下面是ABC.asp頁(yè)面
首先取得doAction的值
doAction = Trim(Request.Form("doAction"))
下面大家可以自己加一點(diǎn)驗(yàn)證,如IsNumeric等!
然后我們來(lái)分解doAction的值
Dim LastID
doAction = Mid(doAction,11)
LastID = Mid(doAction,1,Len(doAction)-10)
如果大家對(duì)Mid函數(shù)熟悉的話(huà),上面的內(nèi)容很容易就猜到,簡(jiǎn)單吧?
下面是實(shí)際的例子:
原doAction要傳遞的ID在數(shù)據(jù)庫(kù)里(字段類(lèi)型為自動(dòng)編號(hào))的值為:34
說(shuō)明:
Mid(doAction,11)里的11為你所生成隨機(jī)字符位數(shù)+1
LastID = Mid(doAction,1,Len(doAction)-10)里的10為所指定生成的隨機(jī)字符位數(shù)!
Dim LastID
doAction = 3614354944348151287527 — 經(jīng)過(guò)偽裝后的ID值(完全可以當(dāng)數(shù)字來(lái)驗(yàn)證)
doAction = Mid(doAction,11)
LastID = Mid(doAction,1,Len(doAction)-10)
LastID = 34
我實(shí)驗(yàn)了一下,如果配合隨機(jī)生成的字母和數(shù)字一起運(yùn)用的話(huà),那完全是可以偽成MD5類(lèi)似的值!
只是條件就一個(gè),要可以指定隨機(jī)字符的位數(shù)!
哈哈,現(xiàn)在大家Response.Write輸出LastID的值看看,是不是又是數(shù)據(jù)庫(kù)里的ID啦?
這個(gè)方法可以運(yùn)用到影片參數(shù)的加密,下載等.如做了政府的公文流轉(zhuǎn)系統(tǒng),還可以用到文件上面去!
針對(duì)Request.QueryString的也是同一個(gè)道理!照葫蘆畫(huà)瓢啦...
以上是本人在編寫(xiě)ASP程序中的一點(diǎn)點(diǎn)經(jīng)驗(yàn),不足之處請(qǐng)大家多多指正!
ASP生成偽參數(shù)程序設(shè)計(jì)技巧
2019-09-30 15:12asp教程網(wǎng) ASP教程
電影系統(tǒng)經(jīng)常用ASP偽參數(shù),可以防范通過(guò)id采集數(shù)據(jù)。
延伸 · 閱讀
- 2022-02-28Java程序設(shè)計(jì)之12個(gè)經(jīng)典樣例
- 2022-01-12C/C++程序設(shè)計(jì)的基本概念詳解
- 2021-12-08深入了解C語(yǔ)言結(jié)構(gòu)化的程序設(shè)計(jì)
- 2021-10-20關(guān)于ASP網(wǎng)頁(yè)無(wú)法打開(kāi)的解決方案
- 2021-10-14讓apache也支持asp環(huán)境的方法
- 2021-08-15asp取整數(shù)mod 有小數(shù)的就自動(dòng)加1
- ASP教程
asp+javascript實(shí)現(xiàn)404頁(yè)的處理轉(zhuǎn)換
asp+javascript實(shí)現(xiàn)404頁(yè)的處理轉(zhuǎn)換...
- ASP教程
ASP.NET 數(shù)據(jù)源
數(shù)據(jù)源 一個(gè) data sourse 控件與數(shù)據(jù)綁定的控件相互作用,并隱藏了復(fù)雜的數(shù)據(jù)的聯(lián)編過(guò)程。這些是提供數(shù)據(jù)給 data bound 控件的工具,并且支持如插入,刪除...
- ASP教程
asp之基于adodb.stream的文件操作類(lèi)
asp之基于adodb.stream的文件操作類(lèi)...
- ASP教程
ASP常用函數(shù):getpy()
ASP常用函數(shù):getpy()...
- ASP教程
asp 標(biāo)記字符串中指定字符變色不區(qū)分大小寫(xiě)
今天遇到這種問(wèn)題,單純的使用replace函數(shù)不行,他會(huì)改變?cè)械淖址拇笮?xiě),在網(wǎng)上找到相關(guān)的代碼,自己備份下...
- ASP教程
asp Access數(shù)據(jù)備份,還原,壓縮類(lèi)代碼
asp Access數(shù)據(jù)備份,還原,壓縮類(lèi)實(shí)現(xiàn)代碼,大家可以參考下。...
- ASP教程
asp 采集實(shí)戰(zhàn)代碼
最近實(shí)在是太流行采集了,本人是不喜歡采集的,但對(duì)采集的原理我卻很有興趣進(jìn)行研究,拿到了網(wǎng)上采集常用函數(shù),對(duì)其進(jìn)行了一番研究,并實(shí)戰(zhàn),結(jié)果...
- ASP教程
JScript中遍歷Request表單參數(shù)集合的方法
這篇文章主要介紹了JScript中遍歷Request表單參數(shù)集合的方法,本文以遍歷Request.QueryString集合為例給出了實(shí)現(xiàn)代碼,需要的朋友可以參考下...