SERVICIOS: 902 027 102
Busqueda

Sistema web de Comercio Electrónico Lazarus

El sistema de comercio electrónico o tienda virtual Lazarus, es la herramienta web definitiva que le permitirá vender sus productos por internet de una forma eficiente y ágil. Lazarus le permite crear una Tienda Online indistintamente del tipo de producto

Sistema web de Comercio Electrónico Lazarus
Suscribete al boletin

Escribe tu correo electronico para recibir nuestro boletin de articulos.

Crear un buscador en ASP

En este artículo os vamos a explicar como crear un buscador en ASP utilizando como base de datos MySQL, un ejercicio muy interesante para vuestros proyectos

 

Como ya comentamos en el previo, este artículo tratará sobre la realización de un buscador sencillo que ejecutará sus consultas en una tabla MySQL, vamos a mostrar como realizar dos tipos de búsquedas Like y Fulltext.

Para ello, crearemos una tabla llamada "artículos" en la que ubicaremos la información que deseamos buscar, dicha tabla tendrá la siguiente estructura:

Artículos:
ID --> auto_increment
titulo --> char(100)
texto --> text

El proyecto se compondrá de un único archivo, llamado "buscador.asp", donde crearemos tanto el formulario de búsqueda como la tabla de resultados. Dicho esto, vamos a mostrar como debería ser la programación.

Antes de nada, debemos crear la conexión a la base de datos y estableceremos las variables de la aplicación, esto lo haremos de la siguiente manera:

Dim DB, RS1, Palabra, Conex, DataBase, UserBD, PassBD
Set DB = Server.CreateObject("ADODB.Connection")
Set RS1 = Server.CreateObject("ADODB.Recordset")

Conex = "localhost" 'Dirección del servidor de MySQL
Database = "buscador_asp" 'Nombre de la Base de datos
UserBD = "tu_usuario" 'Usuario para acceso a la BD
PassBD = "tu_contraseña" 'Contraseña para acceso a la BD

'Creamos la cadena de conexión
DB.open "DRIVER={MySQL ODBC 3.51 Driver};SERVER=" & Conex & ";DATABASE=" _
& DataBase & ";USER=" & UserBD & ";PASSWORD=" & PassBD & ";OPTION=3;"

Cabe remarcar que la cadena de conexión utilizada es para el controlador ODBC 3.51 de MySQL, el cual podéis descargar desde aquí.

Una vez creadas las conexiones a la base de datos MySQL, comenzaremos con el código que mostrará el formulario de búsqueda, como vamos a mostrarlo en diferentes partes de nuestra aplicación, crearemos una función que se encargará de enseñarlo cuando nos convenga:

<%
Function MuestraForm
%>











Palabra o Frase:

Tipo de búsqueda:

 

Like | FullText

 


<%
End Function
%>

 

Por último, realizamos el código donde irá el listado de artículo, pegamos y luego comentamos que hace cada parte:

'SI LA PÁGINA HA SIDO DEVUELTA CON EL MÉTODO POST, SIGNIFICA QUE ESTAMOS RECIBIENDO UN FORMULARIO.
If Request.ServerVariables("REQUEST_METHOD")="POST" Then

'Primero comprobamos que no venga la palabra vacía.
If Request.Form("palabra")="" Or Request.Form("tipo")="fulltext" And Len(Request.Form("palabra"))<=3 Then
'Si viene la palabra vacía u ocupa menos de 3 caracteres, volvemos a mostrar el formulario.
MuestraForm
Else
'Mostramos el formulario
MuestraForm

'Eliminamos las comillas simples si las hay
Palabra = Replace(Request.Form("palabra"),"'","''")

'Realizamos la búsqueda.
If Request.Form("tipo")="fulltext" Then
'BÚSQUEDA FULLTEXT
SQL = "Select titulo, id, texto, Match(titulo, texto) Against ('" & Palabra & "') As Score " _
& "From articulos Where Match(titulo, texto) Against ('" & Palabra & "') Order By Score DESC;"
Else
'BÚSQUEDA LIKE
SQL = "Select titulo, id, texto From articulos Where titulo Like '%" & Palabra & "%' Order By titulo ASC;"
End If

Rs1.Open SQL, DB
'Comprobamos que hayan resultados.
If Rs1.Eof=False Then
%>






<%
'Hacemos el bucle que mostrará los resultados.
Do While Rs1.EOf=False
%>










<%
Rs1.Movenext
Loop
%>

ID Artículo
<%=Rs1("id")%> <%=Rs1("titulo")%>
<%=Left(Rs1("texto"), 100) & "..."%>


<%
End If
Rs1.Close
End If

'SI NO ENTRA CON ESTE MÉTODO, ES QUE DEBEMOS MOSTRAR EL FORMULARIO DE BÚSQUEDA.
Else
MuestraForm
End If

Como podemos ver, la aplicación tiene un IF inicial donde filtra si la página está en estado "Post", es decir, si se recibe un formulario o no. Si recibe un formulario, automáticamente intentará realizar la búsqueda, pero antes realiza un par de comprobaciones, como por ejemplo, si la frase viene vacía o mide menos de tres caracteres. La comprobación de los tres caracteres la hacemos porque las búsquedas FullText obligan a que sea la longitud mínima de cadena.

Una vez realizado esto, la aplicación filtra si el tipo de búsqueda es Like o FullText, y construye la consulta correspondiente. Tras abrir la consulta, realiza un bucle para mostrar los resultados.

Para que todo quede más claro, os dejo el archivo con los ejemplos y el fichero con la base de datos.

Winrar Descargar ejemplo

Artículos Similares

ASk.com renueva su buscador

Parece ser que Ask.com ha dejado atrás el típico listado de 10 enlaces ya visto por todos en los buscadores más famosos, ha llegado la hora de renovarse.

¿Cómo aparecer en Google?

Una cosa está clara, aunque tengas el mejor portal del mundo, si no apareces en Google o cualquier otro buscador no te servirá para nada más que enseñárselo a tus amistades.

Musgle, usa Google para descargar Música

No hace mucho habia un buscador, que empleando Google y una sintaxis a la hora de hacer una busqueda, lograba mostrarte ficheros mp3´s alojado en directorios abiertos, servidores ftp, etc. Lástima que no recuerde el nombre...

Crear y Eliminar Cuentas de correo en Plesk

Si desea tener una dirección de email asociada con un sitio, como por ejemplo tunombre@dominio.com, debe crear un buzón de correo desde el panel Plesk. También podrá eliminar estas cuentas con 2 clicks de ratón

Condiciones de Uso | Política de Privacidad
Copyright © 2010 Solingest. Todos los derechos reservados.
Desarrollado por mediante sistema