En el siguiente articulo se detallan los pasos a seguir para la conformación de un buscador simple, utilizando el lenguaje de programación ASP. Para ello, se crearán 4 páginas que contienen el buscador en sí, más una base de datos encargada de almacenar los registros donde se realizarán las busquedas.

En el siguiente articulo se detalla los pasos a seguir para la conformación de un buscador simple, espero les sea de ayuda.

Comenzando a armar el buscador

Nos basaremos en 5 puntos en el armado del buscador, uno será la conformación de una base de datos donde almacenaremos toda la información para la posterior búsqueda, luego armaremos un formulario para la carga de datos información para nuestro buscador en HTML, también haremos la Web en ASP que cargara todos los datos de nuestro formulario. Por ultimo veremos el formulario de búsqueda en HTML y finalmente el Buscador en ASP.

La Base de Datos

Haremos una simple base de datos en Access con la cual podremos cargar los datos a luego buscar. Creemos una base de datos la cual llamaremos base.mdb, cuando nos toque la parte de diseño de una nueva tabla ingresemos los siguientes Campos:

Campo Tipo Descripción
nombre Texto nombre del sitio
des Texto descripción del sitio
url Texto dirección del sitio
categoría Texto categoría a la que corresponde
pal Texto palabras claves

Veamos en que consisten estos campos, el primero será el nombre de la Web la cual tenemos en nuestro buscador, la segunda, que es Des, es el equivalente a la descripción de la pagina, un breve comentario, el campo URL, será la url de la Web la cual agregamos a nuestro buscador, campo categoría, esta es opcional, si queremos dividir en categorías a nuestras Web y por ultimo el campo pal, en el cual ingresaremos las palabras clave por la cual buscara nuestro buscador.

Una vez hecha la base de datos, comencemos a cargarla, para eso necesitaremos un formulario HTML, que nos permita cargar los datos, aquí un ejemplo de cómo podría ser uno:

Cargar.htm(*)



Buscador web




Nombre


Descripcion


Url


Categoria



Palabras Clave


ALIGN=»left»>




Buscador Web 2002



(*) Desde ya vale una aclaración, estas opciones son de un buscador realizado para la Web ConozcaMisiones.com quien WebMaster es el que escribe el artículo.

Si vemos el código HTML en una de las primeras líneas vemos que tenemos un POST, el cual es la página siguiente a la que se ingresara cuando cargamos los datos y damos INGRESAR.

Esta misma se ira a la página ingreso.asp, que es la que cargara los datos a la Base de Datos, veamos el código del mismo y su actuación:

Ingreso.asp


<%@ Language="VBScript" %>


Ingreso de Datos


<%
‘definimos la variable de conexion
Dim Conexion,Tabla
Set Conexion = Server.CreateObject(«ADODB.Connection»)
Set Tabla = Server.CreateObject(«ADODB.Recordset»)
‘conectamos a la base de datos mediante OLE ODBC dando el Driver
Conexion.Open «Driver={Microsoft Access Driver (*.mdb)}; » & «Dbq=» & Server.MapPath(«base.mdb»)
‘definimos la variable de carga de datos
Dim Temp
‘buscamos los datos
Temp=»Select * From Tabla1 Where UCase(Nombre)='» & UCase(Request(«Dato1»)) & «‘ And UCase(Des)='» & UCase(Request(«Dato2»)) & «‘ And UCase(Url)='» & UCase(Request(«Dato3»)) & «‘ And UCase(Categoria)='» & UCase(Request(«Dato4»)) & «‘ And UCase(Pal)='» & UCase(Request(«Dato5″)) &»‘»
Tabla.Open Temp,Conexion,2,3,1
‘si no se repiten agregamos los datos a nuestro buscador
If Tabla.BOF And Tabla.EOF Then
Tabla.AddNew
Tabla(«Nombre») = Request(«Dato1»)
Tabla(«des») = Request(«Dato2»)
Tabla(«Url») = Request(«Dato3»)
Tabla(«Categoria») = Request(«Dato4»)
Tabla(«Pal») = Request(«Dato5»)
Tabla.Update
‘fin del Script
%>

Ingreso de datos completado

<%
‘si el campo ya existe para no hacer dobles nos da este mensaje
Else
Response.Write «El registro ya existe»
End If
‘cerramos la conexion
Tabla.Close
Conexion.Close
%>

Buscador Web 2002

Ingresar
Nuevo


Observemos bien el script, y centrémonos en la carga de datos, hace un REQUEST de los datos que ingresamos en el formulario, y comprueba que no exista una igualdad en los datos, una vez hecho esto agrega con la sentencia ADDNEW una nueva fila a nuestra base de datos.

Datos para aclarar y recordar

Tenemos que recordar que en el formulario en el campo URL debemos ingresar la url de la Web a la cual queremos vincular, si esta dentro de nuestra Web, por ejemplo si esta dentro de www.mipagina.com y la url de la sección es www.mipagina.com/prueba/prueba.htm simplemente omitimos el www.mipagina.com/ y añadimos prueba/prueba.htm ya veremos el porque de esto. En cambio si se encuentra en otra Web simplemente www.mipagina.com.

Buscando…

Ahora bien, hemos cargado los datos a nuestra base de datos, ya estamos listos como para comenzar a buscar mediante los datos cargados en ella. Para eso veremos un formulario el cual nos pedirá que ingresemos una palabra clave, y luego pasara a la pagina ASP. El formulario será muy simple, solamente tendrá un campo de texto donde ingresaremos la palabra clave a buscar, veamos como seria:

Buscar.htm


Busqueda

Ingrese Palabra a buscar



Notaran que eh hecho una llamadita en el Input NAME, porque es esto, ya que si cambiamos el nombre del mismo y no lo cambiamos en la página ASP quizás no nos funcione, por eso noten que el INPUT NAME es Palabra. Pasemos a la pagina ASP ahora que es el ultimo paso que nos queda por hacer luego de haber ya cargado los datos y ya puesto la palabra a buscar, el código de búsqueda es el siguiente:

Buscar.asp


Buscar datos


Resultados obtenidos con <%=Request("Palabra") %>

<%
´realizamos la conexión de la Base de Datos
Dim Conexion,Tabla
Set Conexion=Server.CreateObject(«adodb.connection»)
Set Tabla=Server.CreateObject(«adodb.recordset»)
Conexion.Open «Driver={Microsoft Access Driver (*.mdb)}; » & «Dbq=» & Server.MapPath(«base.mdb»)
‘definimos las variables de busqueda
Dim Temp,Rango
Rango=Request(«Tipo»)
If Rango=»1″ Then
‘En la Tabla la palabra que buscamos
Temp=»Select * From Tabla1 Where UCase([pal])='» & UCase(Request(«palabra»))'»
Else
Temp=»Select * From Tabla1 Where InStr(UCase([pal]),'» & UCase(Request(«Criterio»)) & «‘)>0»
End If
Tabla.Open Temp, Conexion
If Tabla.BOF And Tabla.EOF Then
%>

No se ha encontrado nada con <%=Request("palabra")%> en la Base de Datos


<%
Else
%>

<% While Not Tabla.EOF%>

<%
‘si encuentra mas de un resultado nos hace una celda mas en la tabla
Tabla.MoveNext
Wend
Tabla.Close
Conexion.Close
End If
%>

Categoria

Nombre de la pagina

Descripcion

Url

<%=Tabla.Fields("Categoria")%>

<%=Tabla.Fields("Nombre")%>

<%=Tabla.Fields("Des")%>

«>Ir

Busquedas

2002


Bien, este es el código en si, pero también debemos saber comprenderlo. Si recuerdan cuando hicimos la base de datos habíamos insertado varios campos, entre ellos Pal y el otro URL, que eran los que quizás los hayan desconcertado.

Pues estos es uno el de las Palabras clave, ósea, por el que buscara nuestro «Buscador» cuando tenga que dirigirse a la Base de datos.

Luego la URL, que explicábamos en la parte de Ingreso de Datos. En esta pagina no nos muestra la URL sino que nos muestra la palabra IR, que tiene el código HTML para convertirse en vinculo en base a la URL de la Base de Datos