|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
对于中小型web应用来说,php有很强的竞争力,linux+apache+mysql+php(lamp)的组合几乎可以胜任绝大多数网站的解决方案,对于大型应用来讲,对于系统架构要求更高,需要有成熟的框架支持,jsp的struts是个不错的框架,国内介绍它的资料也非常多,应用逐渐广泛起来。asp就不用说了,编程有一天我突发奇想,如果我每到一个网站,那边都能立即修改我必要看的信息,那难道美好得很。接上去我想更深切地思索这个成绩,坐到椅子上拿一支铅笔,却不晓得本人写甚么。云云一来,我仍是得动手凑合代码它们。
我的伴侣开了一个小型站点,底本是我计划的。这是个查验我设法的好平台。以是我写出代码,上传了文件。真叫人镇静,程序事情起来煞是美满,同时也证实我的设法切实其实不错。
之前看过一些收集利用者偏向呈报,个中有一个纪律给我印象很深。说是年夜多半用户假如在三次点击内没法找到本人必要的内容,就会立即分开该站点。我的代码就能够针对这个成绩,保险用户只需点一次鼠标就找到方针。在我的例子里,假定有个用户上了Yahoo,检索关头字为FireplaceAccessories(航行工具配件)。在给出的了局里,他离开我伴侣的站点,将看到"你正在搜刮FireplaceAccessories"等字样的画面。接着他会依照网站上的提醒,间接到想要往的页面。
你要作的第一步,是在global.asa文件中创建一个初始变量,安排在你的SubSession_onStart()程序中。
SubSession_onStart()
Referer=Trim(Request.ServerVariables("HTTP_REFERER"))
IfReferer=""Then
Referer="None"
EndIf
Session("Referer")=Referer
EndSub
接着我们来动手看看怎样完成程序的次要功效。
由于url经由了编码,以是起首要把来访者主机的指向数据复原成对我们有效的器材。创建一个ASP页面,叫它decode.asp,是我们程序的骨干。第一个功效是要对编码过的指向头举行解码。程序有点长,并且很间接,没有甚么迂回曲折,假如你嫌贫苦,不如到www.popunet.com的"网虫学习班"下面找到本文,用"拷贝/粘贴"年夜法吧。
源代码
第二件要作的事变是:从URL头信息里分别出查询部分--这个才是我们必要的。
从指向URL平分离查询字段。
FunctionisProduct(pStr)
IfpStr""AndlCase(pStr)"none"Then
向后搜刮字段
temp=inStrRev(pStr,"/")
失掉目次分别的地位
tempStr=Right(pStr,temp)
失掉有关数据长度
temp2=Len(pStr)
失掉查询数据行
pStr=Mid(pStr,temp,temp2)
设定前往功效的值
isProduct=pStr
Else
isProduct=""
EndIf
EndFunction
接着是要建立查找的明白尺度。为到达这个目标,创建两个静态空间"指?查找指向数据
FunctionFinder(byRefprodList,byValrefList)
含混查询
refList=lCase(refList)
经由过程指针轮回查找婚配字段
Fori=0TouBound(prodList)-1
IfinStr(refList,lCase(prodList(i,0)))Then
找到婚配
tHolder=tHolder&"AreYoulookingFor"_
&""_
&prodList(i,0)&"
"
EndIf
第二次轮回
Next
前往了局
Finder=tHolderEndFunction
经由过程一个inclue,把我们做好的decode.asp放到必要此功效的任何页面,半途而废啦。
详细以下:
假如指向头不为空,修改此功效IflCase(Session("Referer"))"none"ORSession("Referer")""Then剖析指向数据Response.WritevbCrLf&"
"_&Finder(pArray,URLDecode(isProduct(Session("Referer"))))_&"
"&vbCrLf
EndIf
</p>想法是和程序员的想法不一样的.至于为什么.大家去想一想.跟心理学有关的 |
|