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

Menu desplegable con DB

Estas en el tema de Menu desplegable con DB en el foro de ASP Clásico en Foros del Web. Necesito llenar un combo con los datos de una consulta, y por ahora lo que he conseguido (que no sé si me valdrá) es este ...
  #1 (permalink)  
Antiguo 05/07/2002, 06:52
Avatar de ferent  
Fecha de Ingreso: junio-2002
Ubicación: Madrid
Mensajes: 633
Antigüedad: 22 años
Puntos: 0
Menu desplegable con DB

Necesito llenar un combo con los datos de una consulta, y por ahora lo que he conseguido (que no sé si me valdrá) es este código sacado de un ejemplo:

<select name="id_proyecto" class="ctexto350">
<%
do while not rs.eof
%>
<option value="<%= rs("id_proyecto") %>"><%= rs("proyecto") %></option>
<%
rs.movenext
loop
%>
</select>

¿Si mi variable se llama "categoria" sabrían decirme qué variables y dónde he de ponerlas?

Si no entienden la pregunta, por favor indíquenmelo por que es muy importante,
GRACIAS
  #2 (permalink)  
Antiguo 05/07/2002, 09:19
Avatar de akela  
Fecha de Ingreso: septiembre-2000
Ubicación: Frente a la compu
Mensajes: 660
Antigüedad: 23 años, 9 meses
Puntos: 2
Re: Menu desplegable con DB

pues a ver si entendí, voy explicar como funciona este codigo:

<select name="id_proyecto">
En esta línea se le da un nombre al menú para que después puedas recuperar el valor

<%
do while not rs.eof
%>
aqui se supone que ya tienes una consulta realizada en SQL y el resultado se guardó en RS, y que mientras RS no llehgue al final deberá sacar valores de él

<option value="<%= rs("id_proyecto") %>"><%= rs("proyecto") %></option>
En esta línea se indica el valor(value) que sale da la BD y es el Id del proytecto, <%= rs("proyecto") %> es lo que el usuario verá en el menú

<%
rs.movenext
Aquí se mueve al siguiente registro

loop
aquí lo cicla y regresa a una instrucción después del While
%>
</select>
Esta línea indica donde termina el menú.

espero que esto te ayude a completar tu codigo. ;)
  #3 (permalink)  
Antiguo 05/07/2002, 14:09
Avatar de SUMMITE  
Fecha de Ingreso: julio-2002
Mensajes: 19
Antigüedad: 21 años, 11 meses
Puntos: 0
Re: Menu desplegable con DB

<p>

<select size="1" name="idcategoria" tabindex="3">
<option selected value="<%response.write (miid)%> "><%response.write (micategoria)%></option>

<%
If rsG2.EOF = True then
Response.Write "<center> No hay registros relacionados "
Else

While NOT rsG2.EOF
%>
<option value="<%response.write rsG2("Num_Id")%> "><%response.write rsG2("nombre")%></option>
<%
rsG2.MoveNext
Wend
rsG2.Close
Set rsG2 = Nothing
Set cn1 = nothing

end if
%>


</select></p>
<p><input type="submit" value="Modificar" name="familia" tabindex="2"><span lang="es">  &nb sp;   
</span><input type="reset" value="Restablecer" name="r" tabindex="1"></p>
</form>
<p> </p>


  #4 (permalink)  
Antiguo 05/07/2002, 14:13
Avatar de SUMMITE  
Fecha de Ingreso: julio-2002
Mensajes: 19
Antigüedad: 21 años, 11 meses
Puntos: 0
Re: Menu desplegable con DB

explicacion :

para montar un selec seguramente tienes que abrir una o dos tablas diferetes ese es el caso que te pongo.

abro una tabla para dar el valor actual del selec i asi mostrar seleccionado este, i despues abro la tabla para dar la lista de opciones , no se si es lo mejor pero funciona.

nota: hay que acordarse de cerrar cada conexion a la base de datos al finalizar la peticion.
  #5 (permalink)  
Antiguo 08/07/2002, 03:49
Avatar de ferent  
Fecha de Ingreso: junio-2002
Ubicación: Madrid
Mensajes: 633
Antigüedad: 22 años
Puntos: 0
Re: Menu desplegable con DB

Akela, me estás ayudando mucho, y te lo agradezco. La consulta que hago en SQL, es la siguiente:

<%
set con = server.CreateObject("ADODB.Connection")
set rs = server.CreateObject("ADODB.Recordset")
con.open "nombredemibase"
sql = "SELECT Cod_Categoria, Categoria, Descripcion FROM " & "Categorias WHERE Activa ORDER BY Orden"
rs.open sql,con
%>

Si te soy sincero la he tomado de otra que tenía, pero que en vez de en un Select lo metía en una tabla, así era el original:

<%
SET Base = Server.CreateObject ("ADODB.Connection")
SET Tabla = Server.CreateObject ("ADODB.RecordSet")
Base.Open "mibasededatos
SQL = "SELECT Cod_Categoria, Categoria, Descripcion FROM " & "Categorias WHERE Activa ORDER BY Orden"
Tabla.Open SQL, Base, 3,3
%>

¿Qué he echo mal para que no me funcione?

Luego la cierro de este modo:

<%
rs.close
con.close
set rs = nothing
set con = nothing
%>

Muchísimas gracias, de verdad.
  #6 (permalink)  
Antiguo 08/07/2002, 04:00
Avatar de ferent  
Fecha de Ingreso: junio-2002
Ubicación: Madrid
Mensajes: 633
Antigüedad: 22 años
Puntos: 0
Re: Menu desplegable con DB

Además, al hacer una prueba aparece el siguiente error en el select:

"ADODB.Recordset error '800a0cc1'No se encontro el elemento que corresponde con el nombre o el ordinal pedido."

;)
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:38.