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

buscador en una sola página

Estas en el tema de buscador en una sola página en el foro de ASP Clásico en Foros del Web. Tengo el código del buscador publicado en http://www.desarrolloweb.com/manuales/25/ El tema es que el formulario de busqueda y los resultados estan en páginas diferentes como tendria ...
  #1 (permalink)  
Antiguo 23/03/2004, 21:08
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 22 años, 9 meses
Puntos: 0
buscador en una sola página

Tengo el código del buscador publicado en http://www.desarrolloweb.com/manuales/25/

El tema es que el formulario de busqueda y los resultados estan en páginas diferentes como tendria que hacer para que lo que buscas y el resultado aparezcan en la misma página sin que tengas dos paginas , me explico ?

  #2 (permalink)  
Antiguo 24/03/2004, 06:35
Avatar de buliwyf  
Fecha de Ingreso: diciembre-2001
Ubicación: Caracas
Mensajes: 221
Antigüedad: 23 años, 4 meses
Puntos: 1
con un if refiriendote al boton de submir del buscador. P.E:

<%if request("submit")="" then 'no se ha usado el formulario%>
<form>
.....
<input type=submit name=submit value=submit>
</form>
<%else
set rs=connection.execute("select * from.........


end if>
__________________
RTFM antes de preguntar...
  #3 (permalink)  
Antiguo 24/03/2004, 08:37
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 22 años, 9 meses
Puntos: 0
He tratado de hacerlo pero sigo con problemas mira paso el codigo del formulario y del buscador el tema es juntar a los dos en una sol pagina he intentado hacer como vos me decis pero me da errores y no llego a nada

CODIGO DEL BUSCADOR :

<%
function Sacar(cadena,campos)
dim i
dim SacarAux
while InStr(cadena," ")
Cadena=Replace(Cadena," "," ")
wend
if len(cadena)>0 then
if InStr(cadena," ")>0 then
Sacar= Sacar(left(cadena,InStr(cadena," ")-1),campos) & " OR " & Sacar(right(cadena,len(cadena)-InStr(cadena," ")),campos)
elseif InStr(cadena,"+")>0 then
Sacar=Sacar(left(cadena,InStr(cadena,"+")-1),campos) & " AND "& Sacar(right(cadena,len(cadena)-InStr(cadena,"+")),campos)
elseif InStr(cadena,"-")>0 then
Sacar=Sacar(left(cadena,InStr(cadena,"-")-1),campos) & " AND NOT " & Sacar(right(cadena,len(cadena)-InStr(cadena,"-")),campos)
else
'fijamos la sentencia
SacarAux=""
i=1
SacarAux= "( " & campos(i) & " Like '%" & cadena & "%'"
i=i+1
while len(campos(i))>0
SacarAux= SacarAux & " OR " & campos(i) & " Like '%" & cadena & "%'"
i=i+1
wend
SacarAux=SacarAux & " )"
Sacar=SacarAux
end if
else
sacar=""
end if
end function

function GeneraSql(cadena,tabla,campos)
if len(cadena)>0 then
generaSql="Select * from " & tabla & " Where " & Sacar(cadena,campos)
else
Response.Write "No hay criterios"
end if
end function
%>

<html>

<head>
<title>Buscar datos</title>
</head>

<body bgcolor="#FFFFCC">

<p><font face="Tahoma" size="2">Resultados obtenidos con <strong><%=Request("Palabra") %></strong></font></p>

<%

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")

Dim Temp


dim campos(3) 'el tamano del array debe superar en uno al numero de campos
campos(1)="nombre"
campos(2)="des"

'para mostrar cual seria el resultado...
cadena=Request.form("palabra")
tabla_bbdd="Tabla"
Temp=GeneraSql(cadena,tabla_bbdd,campos)

response.write Temp

Tabla.Open Temp, Conexion
If Tabla.BOF And Tabla.EOF Then
%>

<p><font face="Tahoma" size="2">No se ha encontrado nada con <strong><%=Request("palabra")%></strong> en la Base de Datos</font></p>


<%
Else
%>
<div align="center"><center>
<table border="1" cellpadding="0" cellspacing="0" width="100%" height="74" bordercolor="#C0C0C0">
<tr>
<td width="28%" height="19">
<p align="center"><strong><font face="Tahoma" size="2">Categoria</font></strong>
</td>
<td width="28%" height="19">
<p align="center"><strong><font face="Tahoma" size="2">Nombre de la pagina</font></strong></p>
</td>
<td width="52%" height="19">
<p align="center"><strong><font face="Tahoma" size="2">Descripcion</font></strong>
</td>
<td width="19%" height="19">
<p align="center"><strong><font face="Tahoma" size="2">Url</font></strong></p>
</td>
</tr>
<% While Not Tabla.EOF%>
<tr>
<td width="28%" bgcolor="#FFCC00" height="51">
<p align="center"><font face="Tahoma" size="2"><%=Tabla.Fields("Categoria")%></font></td>
<td width="28%" bgcolor="#FFCC00" height="51">
<p align="center"><font face="Tahoma" size="2"><%=Tabla.Fields("Nombre")%></font></td>
<td width="52%" bgcolor="#FFCC00" height="51">
<p align="center"><font face="Tahoma" size="2"><%=Tabla.Fields("Des")%></font></td>
<td width="19%" bgcolor="#FFCC00" height="51">
<p align="center"><a href="<%=Tabla.Fields("file:///C|/WINDOWS/TEMP/Rar$DI00.399/url")%>"><font face="Tahoma" size="2">Ir</font></a>
</tr>
<%
Tabla.MoveNext
Wend
Tabla.Close
Conexion.Close
End If
%>
</table>
</center></div>
<p align="center"><font face="Tahoma" size="2">Busquedas</font></p>
<p align="center"><font face="Tahoma" size="2">2002</font></p>
<p align="center"> </p>
</body>
</html>


CODIGO DEL FORMULARIO QUE ENVIA LOS DATOS

<html>

<head>
<title>Busqueda</title>
</head>
<form method="Post" action="buscar.asp">
<body bgcolor="#FFFFCC">
<p align="center"><font face="Tahoma" size="2"><b><i>Ingrese Palabra a buscar</i></b></font>

</p>
<p align="center"><input type="text" name="palabra" size="20">

</p>

<p align="center">
<input type="submit" value="Buscar" name="boton1">
<input type="reset" value="Restablecer" name="boton"></form>
<p> </p>
</body>

</html>

TE ASEGURO QUE ESTOY PROBANDO DE TODO PERO ESTOY TRABADO ALGUIEN QUE ME AYUDE PLISSSSSS

  #4 (permalink)  
Antiguo 24/03/2004, 15:26
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 22 años, 9 meses
Puntos: 0
Plisss necesito una mano por favor estoy trabado
  #5 (permalink)  
Antiguo 25/03/2004, 09:10
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 22 años, 9 meses
Puntos: 0
Ayuda plissss
  #6 (permalink)  
Antiguo 25/03/2004, 12:57
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 22 años, 9 meses
Puntos: 0
Ya pude poner todo en una página sin que me de error tanto el formulario como el buscador , lo que necesitaria por favor es lo siguiente, cada vez que la consulta da un resultado el formulario para la busqueda desaparece y solo queda el resultado sin el formulario para que siga el usuario consultando el tema es como hago para que este formulario este siempre visible tenga o no resultados , la idea que el usaurio no tenga que volver para atras para realizar otra consulta , me explico.

POR FAVOR UNA MANITO Y NO MOLESTO MAS
  #7 (permalink)  
Antiguo 25/03/2004, 13:51
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años, 2 meses
Puntos: 535
Pues, simplemente metés el formulario fuera del condicional o ponés otro formulario, idéntico al anterior, dentro del condicional
__________________
...___...
  #8 (permalink)  
Antiguo 25/03/2004, 14:34
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 22 años, 9 meses
Puntos: 0
Perfecto , una mas lo prometo la ultima, y como hago para que no me muestre (la primera vez cuando la busqueda todavia no se inicio ) toda la tabla si no por ejemplo los primeros 5 registros a modo de ejemplo ?
  #9 (permalink)  
Antiguo 25/03/2004, 15:13
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años, 2 meses
Puntos: 535
Mejor poner que no se muestre la tabla si no se ha buscado nada.. a manera de ejemplo:

<%
If Request.Form() <> "" Then
'mostrás la tabla de resultados aquí
Else
response.write "Por favor, efectúe una búsqueda"
End if
%>
__________________
...___...
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 15:17.