Foros del Web » Programando para Internet » ASP Clásico »

AYUDA!! Busqueda avanzada

Estas en el tema de AYUDA!! Busqueda avanzada en el foro de ASP Clásico en Foros del Web. ¿¿¿Alguien puede ayudarme con esto??? Necesito hacer una busqueda con 2 criterios. Tengo una página con un buscador,pero debe hacer la busqueda por medio de ...
  #1 (permalink)  
Antiguo 18/11/2002, 10:35
 
Fecha de Ingreso: noviembre-2002
Mensajes: 130
Antigüedad: 22 años, 5 meses
Puntos: 0
AYUDA!! Busqueda avanzada

¿¿¿Alguien puede ayudarme con esto???

Necesito hacer una busqueda con 2 criterios.
Tengo una página con un buscador,pero debe hacer la busqueda por medio de un <INPUT TYPE=radio> tanto de Autor como de Titulo.
El usuario escoge que tipo de busqueda quiere hacer ya sea de Autor o Titulo de la obra. Escribe el texto y busca.
El resultado aparece en otra página con el resultado de la busqueda. Trabajo con una base de datos Access2000.

Si alguien sabe como resolverlo se lo agradecería.
Gracias por anticipado.
  #2 (permalink)  
Antiguo 18/11/2002, 10:45
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 23 años, 4 meses
Puntos: 1
If Request.Form("tipo")="Autor" Then
'SQL que busque en el campo autor
Else
'SQL que busque en otro campo
End If
  #3 (permalink)  
Antiguo 18/11/2002, 10:47
 
Fecha de Ingreso: noviembre-2002
Mensajes: 130
Antigüedad: 22 años, 5 meses
Puntos: 0
Voy a probarlo.

gracias.
  #4 (permalink)  
Antiguo 18/11/2002, 11:02
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 23 años, 4 meses
Puntos: 1
Cita:
busqueda
No hay manera de que salga..
Algo hago mal...

Tengo la sentencia así..

Dim Temp
If Request.Form("tipo")="Autor" Then
Temp ="Select Autor From images "
Else
Temp ="Select Titulo From images "
End If


Intenta seguir el tema aqui y no en privado...

Si vas a BUSCAR debes hacer algo así:

Dim Temp
If Request.Form("tipo")="Autor" Then
Temp ="Select * From images where Autor like'% "&Request.Form("Campo_Palabras")&"%'"
Else
Temp ="Select * From images where tITULO like'% "&Request.Form("Campo_Palabras")&"%'"
End If

Saludos
  #5 (permalink)  
Antiguo 18/11/2002, 11:15
 
Fecha de Ingreso: noviembre-2002
Mensajes: 130
Antigüedad: 22 años, 5 meses
Puntos: 0
No acaba de funcionar.
Creo que el problema viene de la página anterior.

Cuando hago el submit la variable que le pasa a la siguiente página es "palabra" que es el nombre del campo de texto

<form name=buscador action=busca.asp method=post target=contenido>
<input type=hidden value=busqueda name=command>
<INPUT TYPE=radio NAME="tipo" value"Autor"> Autor<br>
<INPUT TYPE=radio NAME="tipo" value="Titulo"> Título </td>

<INPUT TYPE=TEXT NAME="palabra ">
<br>
<input input type="submit" value="Buscar">

Tal y como me lo dices me dice que no hay campos en la base de datos.

Un saludo
  #6 (permalink)  
Antiguo 18/11/2002, 11:18
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 23 años, 4 meses
Puntos: 1
<INPUT TYPE=TEXT NAME="palabra ">

cambialo por

<INPUT TYPE=TEXT NAME="palabra">
  #7 (permalink)  
Antiguo 18/11/2002, 11:23
 
Fecha de Ingreso: noviembre-2002
Mensajes: 130
Antigüedad: 22 años, 5 meses
Puntos: 0
Perdon, a sido un error mio al copiar y pegar. al igual que en el anterior INPUT del Autor le falta un =.

Te puedo asegurar que está bien escrito.

El error se resiste...
  #8 (permalink)  
Antiguo 18/11/2002, 11:38
 
Fecha de Ingreso: noviembre-2002
Mensajes: 130
Antigüedad: 22 años, 5 meses
Puntos: 0
Bueno aquí ya me echan a la calle...

Voy a casa y segúiré desde allí.
Espero que alguien pueda ayudarme! POR FAVOR!
Tardo 30min.

Un saludo a todos
  #9 (permalink)  
Antiguo 18/11/2002, 12:06
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 23 años, 4 meses
Puntos: 1
Dim Temp
If Request.Form("tipo")="Autor" Then
Temp ="Select * From images where Autor like'%"&Request.Form("Palabra")&"%'"
Else
Temp ="Select * From images where tITULO like'%"&Request.Form("Palabra")&"%'"
End If
  #10 (permalink)  
Antiguo 18/11/2002, 14:18
 
Fecha de Ingreso: noviembre-2002
Mensajes: 130
Antigüedad: 22 años, 5 meses
Puntos: 0
Bueno ya llegé. Menudo atasco!!!....
Otra vez on-line... Haber si sale esto de una vez. LLevo toda la mañana y toda la tarde para que salga esto y no es posible.

Urjose sige sin funcionar. No se si falta alguna cosa por poner. A muy malas puedo enviar o escribir aquí mismo el codigo para ver si podemos entre los dos (bueno más bien tú por que eres un experto en esto) sacarlo.¿?

Un saludo
  #11 (permalink)  
Antiguo 18/11/2002, 14:43
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 23 años, 4 meses
Puntos: 1
con que palabras intentas buscar? y que palabras o frases son las que tienes en tu BD?
  #12 (permalink)  
Antiguo 19/11/2002, 02:54
 
Fecha de Ingreso: noviembre-2002
Mensajes: 130
Antigüedad: 22 años, 5 meses
Puntos: 0
Mira te explico.
Tengo la primera página donde el usuario debe buscar por Autor o Título. Por ejemplo si busca Arturo Perez Reverte , o simplemente Arturo , en teoría debería encontrar todos los nombres con esa entrada (Arturo). Por lo contrario si busca por Titulo y escribe La tabla de Flandes debería encontar todos los campos con ese nombre.

La base de datos está montada de la siguiente manera:
Tengo un campo ID, Autor, Titulo, Ano, Genero, Sinopsis, Imagen.

Cuando hago la busqueda, quiero que vaya a buscar, si selecciono Autor, en el campo Autor que hay entradas como:
Autor:
Arturo Perez Reverte
Ernesto Sábato
Eduardo Mendoza
Isabel Allende
Paolo Coelho
Josten Gaarder
Felix de Azua
etc..

Por Titulo:
Titulo
La tabla de Flandes
El oro del rey
El misterio de la cripta embrujada
La verdad sobre el caso Savolta
El mundo de Sofía
Sobre héroes y tumbas
El Alquimista
La casa de los espíritus
etc...

Espero que te sirva de ayuda.
Un saludo
  #13 (permalink)  
Antiguo 19/11/2002, 04:54
 
Fecha de Ingreso: noviembre-2002
Mensajes: 130
Antigüedad: 22 años, 5 meses
Puntos: 0
Ya encontré la solución....
Hay que ver como son las cosas.

Si hago la busqueda como Arturo (la primera Mayuscula) me da un resultado negativo. Es decir no encuentra nada.

Pero si escribo arturo (sin mayusculas) la busqueda es correcta..

Ahora viene la pregunta del Millón.
¿¿Como puedo hacer para que tanto en mayuscula como en minúscula me encuentre los datos???

Si hay alguien por ahí y sabe resolverlo se lo agradecería..

Gracias a todos por anticipado.
  #14 (permalink)  
Antiguo 19/11/2002, 09:58
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 23 años, 4 meses
Puntos: 1
http://www.aspfacil.com/articulos/020401.asp
  #15 (permalink)  
Antiguo 19/11/2002, 10:09
 
Fecha de Ingreso: noviembre-2002
Mensajes: 19
Antigüedad: 22 años, 6 meses
Puntos: 0
Tal vez asi funcione no?

Temp ="Select * From images where UPPER(TITULO) like'%" & Ucase(Request.Form("Palabra")) & "%'"

Lo unico que hace es cambiar ambos a mayusculas temporalmente mientras lo compara y ya.

Ahi me avisas si funciono....
  #16 (permalink)  
Antiguo 19/11/2002, 10:59
 
Fecha de Ingreso: noviembre-2002
Mensajes: 130
Antigüedad: 22 años, 5 meses
Puntos: 0
Perfecto!!!

Ya funciona todo.

Bueno decirles a todos que Muchíiiisimas gracias por su ayuda.

Seguiremos en contacto por aquí.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:02.