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

pasar listado de base de datos a tabla

Estas en el tema de pasar listado de base de datos a tabla en el foro de ASP Clásico en Foros del Web. Saludos... Tengo que generar una tabla de dos columnas, que se vaya rellenando de izquierda a derecha y de arriba a abajo con un listado ...
  #1 (permalink)  
Antiguo 14/09/2003, 11:34
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago de Compostela
Mensajes: 603
Antigüedad: 21 años, 11 meses
Puntos: 0
pasar listado de base de datos a tabla

Saludos...
Tengo que generar una tabla de dos columnas, que se vaya rellenando de izquierda a derecha y de arriba a abajo con un listado de una base de datos realizado en asp. Evidentemente este listado puede variar con lo que también variarán las filas de la tabla. ¿Alguien puede darme una idea?. Gracias
  #2 (permalink)  
Antiguo 15/09/2003, 10:18
 
Fecha de Ingreso: julio-2003
Ubicación: mi camioneta?
Mensajes: 87
Antigüedad: 21 años, 9 meses
Puntos: 0
tus renglones se generan de forma dinamica, prueba algo asi:

<table>
<%
do while not rs.eof
%>
<tr>
<td>
<% response.write rs.fields("dato")%>
</td>
</tr>
<%
rs.MoveNext
loop
%>
</table>

-------
de esta manera por cada registro en tu base de datos, se genera de manera dinamica un renglon de tu tabla.
  #3 (permalink)  
Antiguo 15/09/2003, 11:44
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago de Compostela
Mensajes: 603
Antigüedad: 21 años, 11 meses
Puntos: 0
Gracias Nachohuerta, pero lo que yo quiero es que me genere dos registros por cada línea de la tabla.
  #4 (permalink)  
Antiguo 15/09/2003, 18:07
 
Fecha de Ingreso: julio-2003
Ubicación: mi camioneta?
Mensajes: 87
Antigüedad: 21 años, 9 meses
Puntos: 0
es lo mismo...

<tr>
<td>
<% response.write rs.fields("dato")
rs.MoveNext
response.write rs.fields("dato")%>
</td>
</tr>

Le pones un if para que valides si no ha llegado el fin de archivo (eof) y listo.
  #5 (permalink)  
Antiguo 16/09/2003, 12:24
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago de Compostela
Mensajes: 603
Antigüedad: 21 años, 11 meses
Puntos: 0
No consigo hacerlo, a ver .... debe aparecer lo siguiente:

*Imagen+: se refiere al boton del formulario que al ser pulsado sacará otro listado.

columna1 columna2 columna3 columna4
------------ ------------ ------------ ------------
Imagen+ registro1 Imagen+ registro2
Imagen+ registro3 Imagen+ registro4

y así hasta el registro final de la tabla.

Te paso el código de la página para que veas lo que he hecho:

Código:
----------

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<%response.Expires=0%>
<%
Response.AddHeader "PRAGMA", "NO-CACHE"
%>
<html>
<head>
<title>Escoja su clase de oferta</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_reloadPage(init) { //reloads the window if Nav4 resized
if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function MM_jumpMenu(targ,selObj,restore){ //v3.0
eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
if (restore) selObj.selectedIndex=0;
}

function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_jumpMenuGo(selName,targ,restore){ //v3.0
var selObj = MM_findObj(selName); if (selObj) MM_jumpMenu(targ,selObj,restore);
}
//-->
</script>

</head>

<body background="images/frame_izqda_con_opacidad.jpg">
<!--Incluimos el fichero de constantes-->
<!--#INCLUDE file="ADOVBS.inc"-->
<%
'Para conexión a dsn arsys con ACCESS
'Set Ob_Conn= Server.CreateObject("ADODB.Connection")
'Set Ob_Command= Server.CreateObject("ADODB.Command")
'Ob_Conn.open "DSN=clubviajesoferta.com.access"
'Ob_Command.ActiveConnection=Ob_Conn
'Ob_Command.CommandType=adCmdText
'Ob_Command.CommandText= "SELECT DISTINCT claseoferta FROM ofertas WHERE claseoferta <> 'última hora'"
'Set Ob_RS=Ob_Command.Execute ()
'Termina aquí la conexion a dsn arsys con ACCESS

'Para conexion a ODBC local
Set Ob_Conn = Server.CreateObject("ADODB.Connection")
Set Ob_Command= Server.CreateObject("ADODB.Command")
Ob_Conn.open "cvo_odbc"
' Abrimos la tabla, declaramos que conexión esta abierta, tipo de cursor, tipo de cerrojo, y opciones
Ob_Command.ActiveConnection=Ob_Conn
Ob_Command.CommandType=adCmdText
Ob_Command.CommandText= "SELECT DISTINCT claseoferta FROM ofertas WHERE claseoferta <> 'última hora'"
Set Ob_RS=Ob_Command.Execute ()
%>
Estos son las clases de ofertas que tiene a su disposición:
Haga click sobre el botón "Ir A" correspondiente para ver el contenido de dichas ofertas
<table align="left" cellpadding="0" cellspacing="0">
<%
do while not ob_rs.eof
%>
<tr>
<td>
<form method="post" action="generartabla.asp?claseoferta=<%=Ob_RS("cla seoferta")%>">
<%'la línea siguiente especifica un botón que es una imagen en vez del botón "enviar" del formulario%>
<input name="image" type="image" src="images/iconomasinformacion.gif" alt="Pulse aqu&iacute; para ver esta oferta" align="bottom" width="17" height="17" border="0">
</form>

</td>
<td>
<% response.write ob_rs.fields("claseoferta")%>
</td>
</tr>
<%
ob_rs.MoveNext
loop
%>
</table>
<%Ob_RS.close
Ob_Conn.close%>
</body>
</html>

-----------------
Fin de código



Gracias por todo
  #6 (permalink)  
Antiguo 17/09/2003, 13:21
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago de Compostela
Mensajes: 603
Antigüedad: 21 años, 11 meses
Puntos: 0
Perdon por mi ignorancia.... ;)
ya me he dado cuenta del error y lo he corregido.
Muchísimas gracias
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 09:29.