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

Problema ASP

Estas en el tema de Problema ASP en el foro de ASP Clásico en Foros del Web. Buenas, tengo un problema cuando haciendo una aplicacion ASP que muestra los resultados de una consulta a una base de datos Access de forma paginada ...
  #1 (permalink)  
Antiguo 25/08/2006, 12:37
 
Fecha de Ingreso: agosto-2006
Mensajes: 65
Antigüedad: 17 años, 9 meses
Puntos: 0
Problema ASP

Buenas, tengo un problema cuando haciendo una aplicacion ASP que muestra los resultados de una consulta a una base de datos Access de forma paginada solo se muestra la primera página (si le intentas dar a las siguientes sale el mensaje de error: ADODB.Recordset (0x800A0BCD) ). Adjunto el código para ver si me podeis ayudar:

Cita:
<html>
<head>
<title>ACTUR</title>
<%
Dim nombre
Dim localitat
Dim numresult
'declaramos nom y guardamos la info asi.
nombre = Request.Form("nombre")
localitat=Request.Form("localitat")
numresult=Request.Form("numresult")
Session("nombre")=nombre
Session("localitat")=localitat
Session("numresult")=numresult

response.write(Session("localitat"))
sSQL="SELECT * FROM cases WHERE Ciudad = '"&localitat&"' OR Nombre = ''"

'actualizamos numero de pagina
If Request.QueryString("pag")<>"" then
Session("pagina")=Request.QueryString("pag")
Else
Session("pagina")=1
End If

'constantes ADO VBScript
Const adCmdText = &H0001
Const adOpenStatic = 3

Set Conn = Server.CreateObject("ADODB.Connection")
Set Command = Server.CreateObject("ADODB.Command")
Set RS =Server.CreateObject("ADODB.RecordSet")
Conn.Open "buscador"
RS.Open sSQL,Conn,adopenstatic,adcmdtext

'resultados por pagina
num_registros = 1


'Dimensionamos las paginas y determinamos la pagina actual
RS.PageSize=num_registros
RS.AbsolutePage=Session("pagina")

%>

<br><br>

<table cellspacing="2" cellpadding="2" border="1" align="center">
<%
'Contamos el numero de campos de la tabla
num_campos=RS.Fields.Count
For campo=0 to num_campos-1%>
<td align="center"><%=RS(campo).Name%>&nbsp;</td>
<%
Next
registros_mostrados = 0
While (Not RS.eof And registros_mostrados < num_registros)
registros_mostrados = registros_mostrados +1
%>
<tr>
<%For campo=0 to num_campos-1 %>
<td align="center"><%=RS(campo)%>&nbsp;</td>
<%Next%>
</tr>
<%
RS.MoveNext
Wend
%>
<tr>
<td colspan="<%=num_campos%>" align="center">
<%
i=0
While i<RS.PageCount
i=i+1
%>
<b><a href="holaw.asp?pag=<%=i%>"><%=i%></a></b>
<%
Wend
%> &nbsp;</td>
</tr>
</table>
<%
RS.Close
Conn.Close
%><a href="index.asp">Tornar a l'índex
</body>
</a>
</html>


Sin embargo, cuando en la consulta SQL le pongo 'Barcelona' en vez de '"& localitat &" ', el programa funciona perfectamente.

Este archivo ASP recibe unas variables (nombre, localitat, numresult) que se introducen en otro archivo. Creo que el problema viene cuando se intenta trabajar con estas variables, pero no estoy seguro.

A ver si me podeis ayudar, un saludo!
  #2 (permalink)  
Antiguo 25/08/2006, 13:52
 
Fecha de Ingreso: agosto-2006
Mensajes: 6
Antigüedad: 17 años, 9 meses
Puntos: 0
En este link encontre el uso de esa propiedad...tal ves el error pueda estar definido en la Nota q aparece en la definicion


www_w3schools_com/ado/prop_rs_absolute.asp
  #3 (permalink)  
Antiguo 25/08/2006, 15:10
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 20 años, 7 meses
Puntos: 27
tu codigo:

recoges
Cita:
nombre = Request.Form("nombre")
localitat=Request.Form("localitat")
numresult=Request.Form("numresult")
haces consulta
Cita:
sSQL="SELECT * FROM cases WHERE Ciudad = '"&localitat&"' OR Nombre = ''"
enlaces
Cita:
href="holaw.asp?pag=<%=i%>"
recomendacion
en el enlace deverias de llevarte las variables que recoges arriba, porque al pasar solamente el numero de pagina no estas re haciendo el query porqeu no llevas las variables necesarias para tu consulta

Cita:
href="holaw.asp?pag=<%=i%>&ciudad=<%=request("loca litat")%>"
suerte
__________________
JuanRa Pérez
San Salvador, El Salvador
  #4 (permalink)  
Antiguo 25/08/2006, 15:20
 
Fecha de Ingreso: agosto-2006
Mensajes: 65
Antigüedad: 17 años, 9 meses
Puntos: 0
He probado y no me funciona, era buena la idea. A ver si al final lo saco. Muchas gracias!
  #5 (permalink)  
Antiguo 25/08/2006, 15:28
 
Fecha de Ingreso: agosto-2006
Mensajes: 65
Antigüedad: 17 años, 9 meses
Puntos: 0
Para más detalle, me da error en: RS.AbsolutePage=Session("pagina")
Sin embargo no me da error cuando pruebo sin utilizar las variables que recojo de otro archivo...
  #6 (permalink)  
Antiguo 25/08/2006, 15:51
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 20 años, 7 meses
Puntos: 27
mira ha de ser que vos estas haciendo un request.form
y cuando le das a la pagina en la numeracion tendrias que usar request.querystring


tu codigo
Cita:
nombre = Request.Form("nombre")
localitat=Request.Form("localitat")
numresult=Request.Form("numresult")
probalo asi
Cita:
nombre = Request("nombre")
localitat=Request("localitat")
numresult=Request("numresult")
__________________
JuanRa Pérez
San Salvador, El Salvador

Última edición por JuanRAPerez; 25/08/2006 a las 15:58
  #7 (permalink)  
Antiguo 25/08/2006, 15:59
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 20 años, 7 meses
Puntos: 27
pero ponele los enalces las variables ok?
__________________
JuanRa Pérez
San Salvador, El Salvador
  #8 (permalink)  
Antiguo 25/08/2006, 16:20
 
Fecha de Ingreso: agosto-2006
Mensajes: 65
Antigüedad: 17 años, 9 meses
Puntos: 0
funciona!, muchas gracias!
  #9 (permalink)  
Antiguo 28/08/2006, 09:07
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 20 años, 7 meses
Puntos: 27
oki me alegra

suerte
__________________
JuanRa Pérez
San Salvador, El Salvador
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 00:29.