首页 > 语言 > 关键词  > asp最新资讯  > 正文

用asp编写类似搜索引擎功能的代码

2008-10-23 15:59 · 稿源:code-123.com

首先建一个access 数据库,库中有一个URLINDEX表,其中URL和Keywords字段分别添加了索引,如下:

以下为引用的内容:
URL 文本(索引:有(无重复))
Title文本
Description文本
Summary文本
Keywords文本(索引:有(无重复))

程序文件doquery.asp,代码:

以下为引用的内容:
<HTML><HEAD><TITLE>简单搜索引擎</TITLE></HEAD>
<BODYBGCOLOR=#ffffffMARGINWIDTH="0"MARGINHEIGHT="0"
LEFTMARGIN=0TOPMARGIN=0>
<FORMMETHOD="post"ACTION="doquery.asp?act=search">
Query:<INPUTTYPE="Text"NAME="QueryString"><BR>
<INPUTTYPE="Submit"VALUE="Submit">
</FORM>
</CENTER>

<%
dimact
act=request("act")
if(act="search")then
QueryString=Request.form("QueryString")
QueryWords=Split(QueryString)
strIndent=""

’如果搜索为空则返回
IfQueryString=""Then
Response.Redirect("default.asp")
EndIf

Session.timeout=2
IfIsObject(Session("sitesearch_conn"))Then
Setconn=Session("sitesearch_conn")
Else
Setconn=Server.CreateObject("ADODB.Connection")
conn.open"driver={MicrosoftAccessDriver(*.mdb)};dbq="&Server.MapPath("database/SiteSearch.mdb"),"",""
SetSession("sitesearch_conn")=conn
EndIf

’查询语句
sql="SELECT*FROM[URLIndex]WHERE"

’搜索Description字段
sql=sql&"([Description]LIKE’%"&QueryWords(0)&"%’"’First
Fori=LBound(QueryWords)+1toUBound(QueryWords)
IfQueryWords(i)<>""andUCase(QueryWords(i))<>"OR"andUCase(QueryWords(i))<>"AND"Then
IfuCase(QueryWords(i-1))="OR"Then
sql=sql&"OR[Description]LIKE’%"&QueryWords(i)&"%’"
Else
sql=sql&"AND[Description]LIKE’%"&QueryWords(i)&"%’"
EndIf
EndIf
Next

’搜索Keywords字段
sql=sql&")OR([Keywords]LIKE’%"&QueryWords(0)&"%’"
Fori=LBound(QueryWords)+1toUBound(QueryWords)
IfQueryWords(i)<>""andUCase(QueryWords(i))<>"OR"andUCase(QueryWords(i))<>"AND"Then
IfuCase(QueryWords(i-1))="OR"Then
sql=sql&"OR[Keywords]LIKE’%"&QueryWords(i)&"%’"
Else
sql=sql&"AND[Keywords]LIKE’%"&QueryWords(i)&"%’"
EndIf
EndIf
Next

’搜索Title字段
sql=sql&")OR([Title]LIKE’%"&QueryWords(0)&"%’"
Fori=LBound(QueryWords)+1toUBound(QueryWords)
IfQueryWords(i)<>""andUCase(QueryWords(i))<>"OR"andUCase(QueryWords(i))<>"AND"Then
IfuCase(QueryWords(i-1))="OR"Then
sql=sql&"OR[Title]LIKE’%"&QueryWords(i)&"%’"
Else
sql=sql&"AND[Title]LIKE’%"&QueryWords(i)&"%’"
EndIf
EndIf
Next

’搜索Summary字段
sql=sql&")OR([Summary]LIKE’%"&QueryWords(0)&"%’"
Fori=LBound(QueryWords)+1toUBound(QueryWords)
IfQueryWords(i)<>""andUCase(QueryWords(i))<>"OR"andUCase(QueryWords(i))<>"AND"Then
IfuCase(QueryWords(i-1))="OR"Then
sql=sql&"OR[Summary]LIKE’%"&QueryWords(i)&"%’"
Else
sql=sql&"AND[Summary]LIKE’%"&QueryWords(i)&"%’"
EndIf
EndIf
Next

sql=sql&")"


Setrs=Server.CreateObject("ADODB.Recordset")
rs.Opensql,conn,3,3

Response.Write"<BR><B>你搜索的是:</B>"&QueryString

Response.Write"<BR><B>搜索的关键字:</B>"
Fori=LBound(QueryWords)toUBound(QueryWords)
Response.Write"<BR>"&strIndent&i&":"&QueryWords(i)
Next

’PrinttheSQLString
Response.Write"<BR><B>sql语句:</B>"&sql

’PrinttheResults
Response.Write"<BR><B>结果:</B><UL>"
OnErrorResumeNext
rs.MoveFirst
DoWhileNotrs.eof
Response.Write"<BR>"&"<AHREF=’OpenPage.asp?IndexURL="&rs.Fields("URL").Value&"’>"&rs.Fields("Title")&"</A>-"
Response.Writers.Fields("Description")&"<BR>"
Response.Write"<FONTSIZE=2>URL:"&rs.Fields("URL")&"</FONT>"
Response.Write"<HRSIZE=1WIDTH=200ALIGN=LEFT>"
rs.MoveNext
Loop
Response.Write"</UL>"

endif
%>

</BODY>
</HTML>


举报

  • 相关推荐
  • 国内MCP服务器搜索引擎有哪些?MCP服务网站推荐

    在人工智能技术飞速发展的今天,AI模型与外部工具和服务的交互能力正逐渐成为推动技术进步的关键因素。今天,我们聚焦于一个新兴的、极具潜力的平台——AIbase(https://mcp.aibase.cn/),它为全球的AI开发者和研究人员提供了一个前所未有的MCP(Model Context Protocol,模型上下文协议)服务器集合平台,助力AI技术的进一步发展。 MCP协议是一种开放标准协议,旨在允许AI模型与外部

  • 专家盛赞GEO双引擎系统:生成式引擎优化以旋律诠释自身

    GEO双引擎系统主题曲《GEO双引擎系统之歌》开创了技术主题音乐创作先河,通过独特艺术形式诠释生成式引擎优化技术内核。该作品由汤祎飞创立的GEO系统创新生成,融合科技与艺术边界,获科技界、产业界和学术界广泛关注。多位顶级专家盛赞其开创性价值,认为该曲有效突破技术传播壁垒,为产业生态提供了兼具深度与温度的认知桥梁。歌曲以"双引擎驱动未来"为�

  • 转向拥抱本土开发者,团结引擎独立运营3年后的得与失

    2022 年,Unity 宣布将中国业务进行本地化重组,成立独立运营的 Unity 中国。而团结引擎(Unity China Engine)成为了接棒的“本地引擎方案”。 酝酿三年后,今年4月Unity6 及其后续版本在中国大陆及港澳地区下架,意味着二者进一步“各司其职”。 消息一出立刻引发了不小的震动。对许多国内庞大的开发群体而言,无法第一时间体验Unity6最新的技术,确实会产生疑惑和迟疑。因�

  • 苹果正在招聘团队:自研AI搜索平台

    彭博社记者马克古尔曼(Mark Gurman)报道,苹果正在组建一支新团队,开发一款类似ChatGPT的AI问答引擎,以应对快速变化的搜索与人工智能市场。 去年,苹果推出了自家的人工智能平台Apple Intelligence,并与OpenAI合作,将ChatGPT集成到Siri中,让用户能够通过Siri调用ChatGPT获取世界知识。 当时,苹果高层明确表示不会自研聊天机器人,称消费者兴趣有限,并坚称苹果在AI领域并未�

  • 微算法科技(NASDAQ:MLGO)采用分布式哈希表优化区块链索引结构,提高区块链检索效率

    微算科技(NASDAQ:MLGO)采用分布式哈希表(DHT)技术优化区块链索引结构,解决区块链数据存储和检索效率低下的问题。该技术通过哈希函数将数据分散存储在多个节点上,实现快速定位和检索,显著提升查询响应速度。系统具有去中心化、可扩展性强、容错性高等优点,适用于金融、供应链、物联网等多个领域。该创新不仅优化了区块链索引结构,还通过数据去冗余存储策略降低存储成本,同时增强数据安全性和可靠性,为区块链技术在各行业的广泛应用提供了高效解决方案。

  • 京准通线下广告「三阶引擎」:数智赋能全域增长新范式

    文章指出线下广告凭借真实场景触达和深度心智渗透优势,正成为品牌寻求增长的新阵地,但也面临投放点位难选、效果难量化等挑战。京准通推出"智算·极触·链动"三阶增长引擎:1)智算引擎通过数据赋能精准投放;2)极触引擎实现场景化精准匹配;3)链动引擎打通线上线下数据闭环。某护肤品牌运用该方案后,TA触达率提升39%,品牌核心人群增长149%,验证了三阶引擎在实现高效触达、构建营销闭环方面的卓越效能,为品牌开辟了全新增长路径。

  • 重回两位数增长、小游戏站上C位,游戏行业引擎变了

    ​变化巨大是从业者的体感,而产业数据验证了这一点。 2025年7月31日,中国国际数字娱乐产业大会(CDEC)在上海浦东嘉里酒店召开,对外发布《2025年1-6月中国游戏产业报告》。2025年上半年,国内游戏市场实际销售收入1680亿元,同比增长14.08%,上一次两位数的增长还要回到2020年。

  • 仙乐健康在WAIC开启AI配方引擎战略合作

    2025年7月28日,仙乐健康与记忆张量在2025世界人工智能大会签署战略合作协议。仙乐健康将基于记忆张量的MemOS操作系统构建专用工业大模型基础设施,推动健康产业从标准化制造向个性化服务转型。合作内容包括打造三大核心系统:智能知识中枢PharmaQA、配方生成引擎FormuGenius和需求洞察系统NutriTrend,并共建联合实验室推动个性化营养创新。此次合作标志着营养健康产业与AI技术的深度融合,将提升研发效率,优化全球供应链能力,巩固仙乐健康在全球营养健康食品CDMO领域的领先地位。

  • 数禾科技十年成长密码:“科技力”成就穿越周期的新引擎

    数耘科技成立十年来,通过持续科技创新打造"智慧大脑"智能决策中枢,融合传统机器学习与大语言模型,实现精准用户画像、风险定价和资金路由优化。公司自主研发70余个平台矩阵,申请专利370件,获授权80余件,覆盖AI算法、风控模型等金融科技核心领域。其技术成果获"高新技术企业"等多项荣誉,显著提升普惠金融服务效率,解决小微企业融资难题。在AI技术快速发展背景下,数耘科技持续拓展金融服务边界,为行业智能化升级注入新动能。

  • 2025磁力引擎合作伙伴大会召开,携手各方商业伙伴共赢新征程

    8月1日,快手2025磁力引擎合作伙伴大会在云南香格里拉举行。大会以"征途"为主题,快手高级副总裁王剑伟表示,2025年平台将与合作伙伴共同拓展磁力金牛、效果广告、区域线索、品牌经营等业务机会。数据显示,2025年上半年快手商业化活跃客户数超1200万,代理消费增速超10%。平台在电商、本地生活、内容消费等领域均实现显著增长,其中电商GMV持续提升,本地生活支付GMV增长明显,短剧内容供给同比增长52%。下半年平台计划新增1.5万磁力金牛客户,并重点布局区域业务和品牌经营。大会表彰了优秀合作伙伴,包括河南百盾等年度领袖合作伙伴,以及三十家年度十佳合作伙伴。