Red de conocimiento informático - Computadora portátil - Código del motor de búsqueda del sitio web Asp

Código del motor de búsqueda del sitio web Asp

La siguiente es la tabla URLINDEX en la biblioteca: los campos URL y Palabras clave se indexan por separado.

Texto de URL (Índice: Sí (sin duplicados))

Texto de título

Texto de descripción

Texto de resumen

Texto de palabra clave (índice: sí (sin duplicados))

doquery.asp

ltHTML gt ltHEAD gt ltTITLE gtMotor de búsqueda simple

ltBODY BGCOLOR = # ffffff ancho del margen = " 0 " alto del margen = " 0 "

LEFTMARGIN = 0 TOPMARGIN = 0 gt

ltFORM METHOD = " post " ACTION = " hacer consulta .ASP?act = buscar " gt

Consulta: ltINPUT TYPE = " Texto " NOMBRE = " cadena de consulta " > ltBR gt

ltINPUT TYPE = " Enviar " VALOR = " Enviar " gt;

lt/FORM gt;

lt/CENTER gt;

lt

dim act

act=request ("actuar ")

si(act="search ")entonces

cadena de consulta = Solicitud(" cadena de consulta ")

QueryWords = Split( QueryString )

strIndent = " "

Devuelve si la búsqueda está vacía.

Si QueryString = " "Entonces

Respuesta. Redirect(" default.asp ")

Terminará si...

Session.timeout = 2

Si es object(Session(" sitesearch _ conn ")), luego

set conn = Session(" sitesearch _ conn ")

Otros

Set conn = server. CreateObject("ADODB.Connection")

conn .open " Driver = { Microsoft Access Driver(*.MDB)}; dbq = " amp servidor.

MapPath(" base de datos/sitesearch . MDB "), "", ""

set Session(" sitesearch _ conn ")= conn

Terminará si...

Declaración de consulta

SQL = " SELECT * FROM[URL index]WHERE "

Campo de descripción de búsqueda

sql = sql amp"([ descripción] Como "" amp; palabras de consulta(0) amp; "'" primero

para I = LBound(palabras de consulta) 1 a UBound(Palabras de consulta)

si palabras de consulta( I) lt; gt "" y UCase(palabras de consulta(I)) lt; gt "OR" y UCase(palabras de consulta(I)) lt; ¿Y luego qué?

If uCase( QueryWords( i-1 ) ) = "o" entonces

sql = sql amp o [descripción] similar a "" amp palabra de consulta (1) amp'"

Otros

sql = sql amp y "" amp; palabra de consulta (1) amp'"

Si... terminará

Si... terminará

Luego

Buscar campo de palabras clave

sql = sql amp") o ([palabra clave] como "" amp; palabras de consulta(0) amp;'"

for I = LBound(palabras de consulta) 1 a UBound(Palabras de consulta)

if palabras de consulta(I) lt; gt "" y UCase(palabras de consulta(I)) lt; gt "OR" y UCase (palabras de consulta(I)) lt; gt "Entonces

Si uCase( QueryWords( i-1 ) ) = "o" entonces

sql = sql amp o como "" amp Palabra de consulta (1) amp'"

Otros

sql = sql amp y "" amp; Palabra de consulta (1) amp'"

Si…terminará

Terminará si…

Entonces

Buscar campo de título

sql = sql amp”) o ([ título] como "" & palabras de consulta(0) & '"

para I = LBound(palabras de consulta) 1 a UBound(Palabras de consulta)

si palabras de consulta( I) lt; gt "" y UCase(palabras de consulta(I)) lt; gt "OR" y UCase(palabras de consulta(I)) lt; ¿Y luego qué?

If uCase( QueryWords( i-1 ) ) = "o" entonces

sql = sql amp o como "" amp palabra de consulta (1) amp'"

Otro

sql = sql amp y "" amp; Palabra de consulta (1) amp'"

Si... terminará

Si... terminará

Entonces

Campo de resumen de búsqueda

sql = sql amp”) o ([

Resumen] Como "" amp; palabras de consulta(0) amp;'"

para I = LBound(palabras de consulta) 1 a UBound(Palabras de consulta)

si palabras de consulta(I ) lt; gt "" y UCase(palabras de consulta(I)) lt; gt "O" y UCase(palabras de consulta(I)) lt; ¿Y luego qué?

If uCase( QueryWords( i) -1 ) ) = "o" entonces

sql = sql amp o como "" amp palabra de consulta (1) amp'"

Otro

sql; = sql amp y "" amp; Palabra de consulta (1) amp'"

Si... terminará

Si... terminará

Entonces

sql = sql amp" )"

'

establece rs = server. CreateObject("ADODB. Recordset")

rs. Abra la respuesta sql

de Connecticut 1,1. Escriba " ltBR gt ltB gt; Su término de búsqueda es:

Respuesta. Escriba " ltBR gt ltB gt; Palabra clave de búsqueda:

Para i = LBound( QueryWords) a UBound( QueryWords)

Respuesta. Escriba "ltBR>&Strandon&I&":"queryword(1)

Luego

imprima la cadena SQL

en respuesta. Escriba " ltBR gt ltB gt; :

Imprimir resultados

Respuesta. Escribe " ltBR gt ltB gt; Resultado:

Rupia PageSize =20 'Veinte páginas por página

Página = CLng(Solicitud(" Página "))

Mostrar para la página

Si no es Página gt1, entonces Página = 1

Si Página gtrs. Entonces Página = rs.

AbsolutePage = Página

Para i=1 a rs.page_size

Salga si rs.eof

Escriba " ltBR >; lt a HREF= 'OpenPage.asp?IndexURL = "amprs. campo ("URL"). valor amp gt" amprs.Field("Título") amp lt/A gt; - "

respuesta. Escribe rs. campo("descripción") &"ltBR>

Respuesta. escribir"ltFONT TAMAÑO=2 gturl:"amprs.Field("URL")&"lt/FONT>

Respuesta . Escribe " ltHR TAMAÑO = 1 ANCHO = 200 ALIGN = IZQUIERDA

rs.movenext

y luego

responde.

Escribe " lt/UL >>p>

gt

lttable cell padding = " 3 "cellspacing = " 1 " border = " 0 " width = " 100 " class = " table border " align = center gt;

ltform nombre = " formulario 2 " método = " publicación " acción = "? QueryString = lt = QueryString gt ampact = buscar " gt

lttr gt

ltTD align = " center " class = " forumRowHighlight " >>p>

ltIf page lt gt1 Entonces gt;

lta href= "? QueryString = lt = QueryString gt ampPage=1. act = buscar " gt

Primera página

lta HREF= "? QueryString = lt = QueryString gt ampPage = lt =(Página-1) gt; ampact = buscar " gt

Página anterior

lt

Si... entonces terminará

Si Page lt gtrs. Luego cuente el número de páginas

gt lt a HREF= "? QueryString = lt = QueryString gt ampPage = lt =(Página 1) gt; ampact = buscar " gt

Página siguiente

lt a HREF= "? QueryString = lt = QueryString gt ampPage = lt = Rs. PageCount gt ampact = buscar " gt

Última página

Número de página:

lt/TD gt;

lt/tr gt;

lt/form gt;

lt/table gt

ltend si

rs desactivado

rs=none

Conexión cerrada

establecer conexión=none

gt

lt/BODY gt;

lt/HTML gt;