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

Ayuda con Drop box list con BD en ASP

Estas en el tema de Ayuda con Drop box list con BD en ASP en el foro de ASP Clásico en Foros del Web. Hola a todos. Soy nuevito en este forito jejejeje pero necesitaba preguntar en algun lado con respecto a algunos problemas que me an surgido al ...
  #1 (permalink)  
Antiguo 10/07/2007, 12:01
 
Fecha de Ingreso: julio-2007
Mensajes: 8
Antigüedad: 16 años, 11 meses
Puntos: 0
Ayuda con Drop box list con BD en ASP

Hola a todos.
Soy nuevito en este forito jejejeje pero necesitaba preguntar en algun lado con respecto a algunos problemas que me an surgido al crear una pagina web.
si bien se q existen muchos mejores programas como mambo o jomla o ajax creo q se llama.. yo me considero un artesano web, ya que mis paginas son creadas manualmente con puro codigo html, asp, conexiones a bd de acces con sentencias sql.
referente a esto va mi pregunta.


Problema

paso1
E creado una pagina web con un combobox o drop box list con datos. se selecciona cualquier dato y este es enviado a una pagina asp


paso 2
La pagina que recibe el dato lo toma con un request.form y luego conecto la pagina asp con la base de datos, creo una variable a la que le doy el valor del dato tomado desde el formulario anterior, y hago una query



<%Set oConn = Server.CreateObject("ADODB.Connection")
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("Galeria.mdb")
Set RS = Server.CreateObject("ADODB.RecordSet")
comi= Request.form("REG")
sql = "Select * From Remates WHERE Region = '"&comi&"' "
RS.Open sql, oConn %>



luego para que la pagina muestre la tabla con los datos tomados de la base de dato introdusco este codigo en el body



<%While Not RS.Eof
%><tr><%
%><td><%Response.Write(RS("Descripcion"))%></td><%
%><td><%Response.Write(RS("Minimo"))%></td><%
%><td><%Response.Write(RS("Codigo"))%></td><%
%><td><%Response.Write(RS("Estado"))%></td><%
%></tr><%
Rs.movenext
Wend%>



Hasta ahi todo bien, el resultado es optimo, pero???

quiero ingresar un combobox o drop box list que se autollene con todos los codigos que muestra la tabla.



pense en hacer esto

<%While Not RS.Eof
%><select size="1" name="comunas"><%
%><option><%Response.Write(RS("Codigo"))%></option><%
%></select><%
Rs.movenext
Wend%>


Este metodo resulta pero no en una pagina en donde ya habia usado un recordset anteriormente. El Rs.que use para llenar la tabla.

¿Como puedo crear este drop box list?
¿Como puedo Llenarlo con los mismos datos del campo codigo ya traido desde la base de datos anteriormente y que fueron mostrados en una tabla?
¿por que el recordset interfiere en esta tarea? ¿es que acaso se usa solo 1 sola vez?

¿ Puedo Crear un segundo recordset?
¿ existe algun problema en la query?


si me pueden ayudar muchisimas gracias me salvarian la vida :)
asi tambien espero que este codigo ayude a otros tambien
  #2 (permalink)  
Antiguo 10/07/2007, 12:28
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
Re: Ayuda con Drop box list con BD en ASP

Hola, es que el puntero del recordset quedó en el último registro (o en EOF, en realidad). Para volver a utilizar el recordset, debés posicionar el puntero en el primer registro:


Código:
<% RS.MoveFirst %>
<select size="1" name="comunas">
<% While Not RS.Eof %>
<option value="<% Response.Write(RS("Codigo")) %>"><% Response.Write(RS("Codigo")) %></option>
<%
Rs.movenext
Wend
%>
</select>
Y unas aclaraciones:
1- Debés quitar el <select></select> del While
2- Debés darle un value al <option>

Saludos y bienvenido al foro.
  #3 (permalink)  
Antiguo 10/07/2007, 13:13
 
Fecha de Ingreso: julio-2007
Mensajes: 8
Antigüedad: 16 años, 11 meses
Puntos: 0
Re: Ayuda con Drop box list con BD en ASP

wuaaaaa!!! me funciono jejejejeje :) muchisimas gracias bro por la ayuda enserio, no conocia el <Rs.movefirst> jejejej, quisas por q soy aun muy inexperto pero con esto ya tengo 1 problema solucionado :)

Gracias jejeje
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 14:37.