用ASP编程实现网络内容快速查找

有一天我突发奇想,要是我每到一个网站,那里都能立刻调出我需要看的信息,那岂非美妙得很。接下来我想更深入地考虑这个问题,坐到椅子上拿一支铅笔,却不知道自己写什么。如此一来,我还是得着手对付代码它们。

我的朋友开了一个小型站点,原本是我设计的。这是个检验我想法的好平台。所以我写出代码,上传了文件。真叫人兴奋,程序工作起来煞是圆满,同时也证明我的想法的确不错。

以前看过一些网络使用者倾向报告,其中有一个规律给我印象很深。说是大多数用户如果在三次点击内无法找到自己需要的内容,就会立刻离开该站点。我的代码就可以针对这个问题,保险用户只要点一次鼠标就找到目标。在我的例子里,假设有个用户上了Yahoo,检索关键字为Fireplace Accessories(飞行器材配件)。在给出的结果里,他来到我朋友的站点,将看到"你正在搜索Fireplace Accessories"等字样的画面。接着他会按照网站上的提示,直接到想要去的页面。

你要作的第一步,是在global.asa文件中建立一个初始变量,放置在你的Sub Session_onStart()程序中。

Sub Session_onStart() 
 Referer = Trim(Request.ServerVariables("HTTP_REFERER")) 
 If Referer = "" Then 
  Referer = "None" 
 End If 
  Session("Referer") = Referer 
End Sub

接着我们来着手看看如何完成程序的主要功能。

因为url经过了编码,所以首先要把来访者主机的指向数据还原成对我们有用的东西。建立一个ASP页面,叫它decode.asp,是我们程序的主干。第一个功能是要对编码过的指向头进行解码。程序有点长,而且很直接,没有什么转弯抹角,如果你嫌麻烦,不如到www.popunet.com的"网虫进修班"上面找到本文,用"拷贝/粘贴"大法吧。

源代码

  第二件要作的事情是:从URL头信息里分离出查询部分--这个才是我们需要的。

 '从指向URL中分离查询字段。 
Function isProduct(pStr) 
 If pStr <> "" And lCase(pStr) <> "none" Then 
  '向后搜索字段 
  temp = inStrRev(pStr, "/") 
  '得到目录分离的位置 
  tempStr = Right(pStr, temp) 
  '得到有关数据长度 
  temp2 = Len(pStr) 
  '得到查询数据行 
  pStr = Mid(pStr, temp, temp2) 
  '设定返回功能的值 
  isProduct = pStr 
Else 
  isProduct = "" 
End If 
End Function

接着是要确立查找的明确标准。为达到这个目的,建立两个静态空间"指?查找指向数据

 Function Finder(byRef prodList, byVal refList) 
'模糊查询 
refList = lCase(refList) 
' 通过指针循环查找匹配字段 
For i = 0 To uBound(prodList) - 1 
If inStr(refList, lCase(prodList(i, 0))) Then 
'找到匹配 
tHolder = tHolder & "Are You looking For " _ 
& "" _ 
& prodList(i, 0) & "
" 
End If 
'第二次循环 
Next 
'返回结果 
Finder = tHolderEnd Function

通过一个inclue,把我们做好的decode.asp放到需要此功能的任何页面,大功告成啦。

  具体如下:

  '如果指向头不为空,调出此功能If lCase(Session("Referer")) <> "none" OR Session("Referer") <> "" Then' 解析指向数据 Response.Write vbCrLf & "

" _ & Finder(pArray, URLDecode(isProduct(Session("Referer")))) _ & "
" & vbCrLf 
End If

(0)

相关推荐

  • 实例分析之用ASP编程实现网络内容快速查找的代码

    有一天我突发奇想,要是我每到一个网站,那里都能立刻调出我需要看的信息,那岂非美妙得很.接下来我想更深入地考虑这个问题,坐到椅子上拿一支铅笔,却不知道自己写什么.如此一来,我还是得着手对付代码它们.  我的朋友开了一个小型站点,原本是我设计的.这是个检验我想法的好平台.所以我写出代码,上传了文件.真叫人兴奋,程序工作起来煞是圆满,同时也证明我的想法的确不错. 以前看过一些网络使用者倾向报告,其中有一个规律给我印象很深.说是大多数用户如果在三次点击内无法找到自己需要的内容,就会立刻离开该站点.我的代

  • 用ASP编程实现网络内容快速查找

    有一天我突发奇想,要是我每到一个网站,那里都能立刻调出我需要看的信息,那岂非美妙得很.接下来我想更深入地考虑这个问题,坐到椅子上拿一支铅笔,却不知道自己写什么.如此一来,我还是得着手对付代码它们. 我的朋友开了一个小型站点,原本是我设计的.这是个检验我想法的好平台.所以我写出代码,上传了文件.真叫人兴奋,程序工作起来煞是圆满,同时也证明我的想法的确不错. 以前看过一些网络使用者倾向报告,其中有一个规律给我印象很深.说是大多数用户如果在三次点击内无法找到自己需要的内容,就会立刻离开该站点.

  • JS获取中文拼音首字母并通过拼音首字母快速查找页面内对应中文内容的方法【附demo源码】

    本文实例讲述了JS获取中文拼音首字母并通过拼音首字母快速查找页面内对应中文内容的方法.分享给大家供大家参考,具体如下: 实现效果: 图一: 图二: 此例中输入的中文字符串"万万保重",有三个字是多音字,所以alert对话框中显示的是多种读音的组合: 如何实现? 如何实现通过拼音首字母快速查找页面内的中文内容呢? 过程原理是这样的:例如要对一些人名进行快速查找,当页面加载完成后,对所有人名建立一个索引,生成拼音首字母与姓名的对应关系:然后监听键盘事件,当用户按下键盘时,根据键值得到按下的

  • 利用Java快速查找21位花朵数示例代码

    前言 本文主要给大家介绍了关于利用Java快速查找21位花朵数的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 以前备赛的时候遇到的算法题,求所有21位花朵数,分享一下,供大家参考,效率已经很高了. 示例代码 package com.jianggujin; import java.math.BigInteger; import java.util.ArrayList; import java.util.List; /** * 水仙花数 * * @author jian

  • Java实现的快速查找算法示例

    本文实例讲述了Java实现的快速查找算法.分享给大家供大家参考,具体如下: 快速查找算法,可以根据想要找的是第几个大的数,每次循环都能固定下来一个数在数组完整排完序之后的位置,每次循环都能定一个数的位置,如果当前固定的数的位置和用户要找的第几个数匹配,则就直接返回.例如我要找第二大的数,如果循环一次固定的数的下标是1,那就是当前需要找的数. 代码如下: // 快速查找算法 public static int quickSelect(int[] arr, int selectIndex) { in

  • Java实现的两种常见简单查找算法示例【快速查找与二分查找】

    本文实例讲述了Java实现的两种常见简单查找算法.分享给大家供大家参考,具体如下: 前言: 查找是指从一批记录当中找出满足制定条件的某一记录的过程. 在平常的程序的编写当中很多时候时用得上的,这里简单介绍两个查找算法 1. 快速查找: 这个是相当简单的,以数组举例,就用一个for循环去查找数组中需要查找的数据 例子: public static boolean quickSearch(int a[], int x) { boolean f = false; int length = a.leng

  • Android编程显示网络上的图片实例详解

    本文实例讲述了Android编程显示网络上的图片的方法.分享给大家供大家参考,具体如下: 在Android中显示网络上的图片,需要先根据url找到图片地址,然后把该图片转化成Java的InputStream,然后把该InputStream流转化成BitMap,BitMap可以直接显示在android中的ImageView里.这就是显示网络上图片的思路,实现起来很简单.下面让我们看一下实现起来的过程. 首先在AndroidManifest.xml中给程序加上访问Internet的权限: 复制代码

  • 利用ASP.NET MVC和Bootstrap快速搭建响应式个人博客站(一)

    1.0 为什么要做这个博客站? 在工作学习中,经常要搜索查找各种各样的资料,每次找到相关资料后都会顺手添加到浏览器书签中,时间一长,书签也就满了.而且下次再点击这个书签时,可能就会忘记当时为什么要添加这个书签了,更有可能书签连接已经无效.这样一来,也就不方便自己查阅了.如果转载.收藏到自己的博客园账号中.CSDN账号中,我们中,知乎中等等,依然是很凌乱,不方便下次查阅. 因此,我下决心开发一个个人技术博客站.主要原因是:可以整合各种宝贵资源,将知识变为宝库:可以借此巩固加强一下自己的"全栈&qu

  • ASP编程入门进阶(十四):Browser & Linking

    一.Browser Capabilities组件 该组件最主要的作用是:提取识别客户端浏览器的版本信息. 其原理是这样的:当客户端浏览器向服务器发送页面请求时,同时会自动发送一个User Agent HTTP标题,而该标题是一个声明浏览器及其版本的 ASCII 字符串.而Browser Capabilities组件就将User Agent映射到在文件Browscap.ini中所注明的浏览器 , 并通过BrowserType对象的属性来识别客户浏览器. 若该对象在 browscap.ini 文件中

  • php编程实现追加内容到txt文件中的方法

    本文实例讲述了php编程实现追加内容到txt文件中的方法.分享给大家供大家参考,具体如下: 覆盖txt文件内容: $filename="aa/a.txt"; $handle=fopen($filename,"w"); $str=fwrite($handle,"test"); fclose($handle); 效果: testtesttesttesttesttesttest 追加内容到txt: $filename="aa/a.txt&qu

随机推荐