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

Urgente

Estas en el tema de Urgente en el foro de ASP Clásico en Foros del Web. Que tal? tengo unos datos en mi base de datos access los cuales quiero mostrar en una pagina asp, tengo un codigo que funciona bien ...
  #1 (permalink)  
Antiguo 07/01/2007, 14:15
 
Fecha de Ingreso: febrero-2003
Mensajes: 233
Antigüedad: 21 años, 3 meses
Puntos: 4
Sonrisa Urgente

Que tal? tengo unos datos en mi base de datos access los cuales quiero mostrar en una pagina asp, tengo un codigo que funciona bien pero me muestra todos los registros de la base y necesito que muestre solo los que tengo en una tabla que tienen los mismo valores.

Ejemplo, si fuese con alumnos de un salon, la tabla esta compuesta asi: edad, nombre, apellido, sexo, etc., en la filas llamada sexo estan mezclados hombres y mujeres, pero solo quiero mostrar los hombres en una sola pagina llamando desde la base de datos a asp, y otra las mujeres.

me imagino que debo filtrar los resultados pero nose como

Les dejo el codigo para que sea mas facil:

<%

Dim con,rs,sql,datos

datos= Server.MapPath ( "datapub/database.mdb " )

Set con= Server.CreateObject("ADODB.connection")
con.open "Provider=Microsoft.Jet.OLEDB.4.0;Data source="&datos&";"

sql= "SELECT * FROM Estudiantes"

Set rs= con.execute(sql)

%>

<HTML>
<HEAD>
<TITLE>Consulta total</TITLE>
</HEAD>
<BODY>
<h2 align="center">Consulta a mi base de datos</h2>
<br>
<Table align="center" width="65%" border="0">
<tr bgcolor="#338899"">
<td width="30%"><strong><font color="#FFFFFF" size="2" face="Arial, Helvetica, sans-serif">C&oacute;digo</font></strong></td>
<td width="36%"><strong><font color="#FFFFFF" size="2" face="Arial, Helvetica, sans-serif">C&eacute;dula</font></strong></td>
<td width="34%"><font color="#FFFFFF" size="2" face="Arial, Helvetica, sans-serif"><strong>Placa(s)</strong></font></td>
</tr>
<%

total=0
Do While Not rs.EOF
%>
<!-- Imprimimos el resultado de la consulta -->
<tr>
<td><p><%=rs("Id")%></p></td>
<td><p><%=rs("CI")%></p></td>
<td><%=rs("Placa_Carro1")%> - <%=rs("Placa_Carro2")%> - <%=rs("Placa_Carro3")%></td>
</tr>
<%

rs.movenext
total= total+1
loop
%>
</table>
<p align="center">Hubo un total de <%=total%> registros</p>

<%

rs.close
Set rs= Nothing
con.close
Set con= Nothing
%>

</BODY>
</HTML>

Gracias de antemano!
  #2 (permalink)  
Antiguo 07/01/2007, 14:34
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
Re: Urgente

Cita:
me imagino que debo filtrar los resultados pero nose como
...
sql= "SELECT * FROM Estudiantes WHERE Campo = '" & CondicionFiltro & "'"

...

¿Es eso lo que preguntas?
  #3 (permalink)  
Antiguo 07/01/2007, 14:54
 
Fecha de Ingreso: febrero-2003
Mensajes: 233
Antigüedad: 21 años, 3 meses
Puntos: 4
Re: Urgente

Me dael siguiente error

Tipo de error:
Microsoft JET Database Engine (0x80040E10)
No se han especificado valores para algunos de los parámetros requeridos.
guiadelviajero/estados/amazonas/TMPffstpbinc1.asp, línea 13


y la linea 13 es:

Set rs= con.execute(sql)

gracias
  #4 (permalink)  
Antiguo 07/01/2007, 15:02
 
Fecha de Ingreso: febrero-2003
Mensajes: 233
Antigüedad: 21 años, 3 meses
Puntos: 4
Re: Urgente

ok ya corregi el error anterior, pero ahora abre la pagina y no me aparecen los datos de la base de datos...
  #5 (permalink)  
Antiguo 07/01/2007, 15:08
 
Fecha de Ingreso: febrero-2003
Mensajes: 233
Antigüedad: 21 años, 3 meses
Puntos: 4
Re: Urgente

Así tengo el codigo y.... nada!

<%

Dim con,rs,sql,datos

datos= Server.MapPath ( "mibase/datos.mdb" )

Set con= Server.CreateObject("ADODB.connection")
con.open "Provider=Microsoft.Jet.OLEDB.4.0;Data source="&datos&";"

sql = "SELECT * FROM Estudiantes WHERE Sexo = '"&Hombres&"'"

Set rs= con.execute(sql)

%>
  #6 (permalink)  
Antiguo 08/01/2007, 08:24
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
Re: Urgente

Cita:
sql = "SELECT * FROM Estudiantes WHERE Sexo = '"&Hombres&"'"
Hombres es una variable que claramente no defines y no tiene nada, por lo que al interpretarse la linea te queda algo como
sql = "SELECT * FROM Estudiantes WHERE Sexo = '' y pues, claro que no te regresa nada.
  #7 (permalink)  
Antiguo 08/01/2007, 09:39
 
Fecha de Ingreso: febrero-2003
Mensajes: 233
Antigüedad: 21 años, 3 meses
Puntos: 4
Re: Urgente

Cierto no la había declarado , pero ya lo hice y nada tengo que ver si hice algo malo. Otra alternativa es dividir la base de datos y poner a que las muestre todas, pero es mayor trabajo y más espacio para el hosting. Para eso esta asp para facilitarnos la vida. Seguire intentando gracias
  #8 (permalink)  
Antiguo 08/01/2007, 11:03
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
Re: Urgente

De hecho el problema no era que te faltaba definirla, sino que no tenia valor. Debes de asignarle algo, supongo que un parámetro, algo como:

vSexo = Request("SeleccionDelSexoQueHisoElUsuarioEnAlgunFo rmulario")
sql = "SELECT * FROM Estudiantes WHERE Sexo = '" & vSexo & "'"

Puedes checar que el query te regrese datos, corriendo en Access el resultado de la interpretación colocando algo como:

vSexo = Request("SeleccionDelSexoQueHisoElUsuarioEnAlgunFo rmulario")
sql = "SELECT * FROM Estudiantes WHERE Sexo = '" & vSexo & "'"
response.write sql
response.end

rs.Open sql, Con

Y copiando el resultado que te aparezca en el editor de consultas del Access

Saludos
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 21:13.