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

agregar varios con varios input text

Estas en el tema de agregar varios con varios input text en el foro de ASP Clásico en Foros del Web. Haber si me explico, una ayudadita por fa... Tengo en una pagina 10 input text necesito que si se llena 1 obvio se genere ese ...
  #1 (permalink)  
Antiguo 12/02/2008, 21:29
 
Fecha de Ingreso: noviembre-2004
Mensajes: 30
Antigüedad: 19 años, 6 meses
Puntos: 0
agregar varios con varios input text

Haber si me explico, una ayudadita por fa...

Tengo en una pagina 10 input text

necesito que si se llena 1 obvio se genere ese registro en una db si se llenan 2, 2 registos y asi consecutivamente

los ipput text estan numerados del 1 al 10, vienen la pregunta

si alguien se salta un input text como valido para ese registro no ponerlo null en mi db ??

y por ejemplo como podria poner N input text y de igual forma como recoger esos valores y ponerlos en la db

espero haberme explicado ((ups creo yo no entendi )) jaja

saludos
  #2 (permalink)  
Antiguo 13/02/2008, 15:21
 
Fecha de Ingreso: octubre-2007
Mensajes: 76
Antigüedad: 16 años, 8 meses
Puntos: 1
Busqueda Re: agregar varios con varios input text

que buena pregunta omrios y creo que si te puedo ayudar
para empezar mi forma de trabajar es esta

FormularioConInputText.asp
ProcesoDeInputText.asp

osea yo hago una pagina especialemte para mostrar la informacion y otra pagina para el proceso
ahora ya diciendote esto vamos a empezar y tratare de ser lo mas lejible posible
comoquiera cualquier uda para eso estamos todos aqui para solucionar dudas

primero lo primero voy a tomar tu ejemplo de 10 input text.

este seria el codigo para la pagina FormularioConInputText.asp
Código:
<table border="0" cellpadding="0" cellspacing="0">
<form name="forma" method="post" action="ProcesoDeInputText.asp">
<tr>
	<td>Textbox 1:<input type="text" name="Text1" value="" /></td>
</tr>
<tr>
	<td>Textbox 2:<input type="text" name="Text2" value="" /></td>
</tr>
<tr>
	<td>Textbox 3:<input type="text" name="Text3" value="" /></td>
</tr>
<tr>
	<td>Textbox 4:<input type="text" name="Text4" value="" /></td>
</tr>
<tr>
	<td>Textbox 5:<input type="text" name="Text5" value="" /></td>
</tr>
<tr>
	<td>Textbox 6:<input type="text" name="Text6" value="" /></td>
</tr>
<tr>
	<td>Textbox 7:<input type="text" name="Text7" value="" /></td>
</tr>
<tr>
	<td>Textbox 8:<input type="text" name="Text8" value="" /></td>
</tr>
<tr>
	<td>Textbox 9:<input type="text" name="Text9" value="" /></td>
</tr>
<tr>
	<td>Textbox 10:<input type="text" name="Text10" value="" /></td>
</tr>
<tr>
	<td><input type="submit" value="Enviar datos"></td>
</tr>
</form>
</table>
y este codigo para la pagina receptora ProcesoDeInputText.asp

Código:
<%
for i=1 to 10 ' el numero 10 es el numero de inputs
	sDato = request.Form("Text" & i)
	if sDato <>"" then
		sSQL="INSER INTO NombreTabla(campo) VALUES ('"& sDato &"')"
		oConn.execute(sSQL)
	end if
next
%>
espero y te sirva saludos
p.d. cualquier duda. hazla saber.

Última edición por rene_bustos; 13/02/2008 a las 15:23 Razón: puse 1 en lugar de i en el ciclo
  #3 (permalink)  
Antiguo 13/02/2008, 16:09
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 17 años, 3 meses
Puntos: 88
Re: agregar varios con varios input text



otra manera de tomar los valores sin definir el numero de vueltas que dara el FOR, seria de esta manera.... tomando el codigo de las FAQS #3 y modificandolo solo lo necesario
Cita:
<%
function AgregarDatos(sDato)
'Deberas agregar tu cadena de conexion
set oConn = server.CreateObject("ADODB.Connection")
sSQL="INSER INTO NombreTabla(campo) VALUES ('"& sDato &"')"
oConn.execute(sSQL)
if Err = 0 then
response.Write "Dato Agregado Correctamente<br />"
else
response.Write "Error al ingresar datos<br />Detalle" & Err
end if
oConn.close
set oConn = nothing
end function

if request.ServerVariables("REQUEST_METHOD")="POST" then
for each item in request.form
if request.Form(item)<>"" then
response.Write "Valor = " & request.Form(item) & "<br />"
AgregarDatos(request.Form(item))
'Esto se puede omitir
lleno=lleno+1
else
vacio=vacio+1
end if
next
elseif request.ServerVariables("REQUEST_METHOD")="GET" then
for each item in request.QueryString
if request.QueryString(item)<>"" then
response.Write "Valor = " & request.QueryString(item) & "<br />"
AgregarDatos(request.QueryString(item))
'Esto se puede omitir
lleno=lleno+1
else
vacio=vacio+1
end if
next
else

'Esta parte tambien se puede omitir
response.Write "De los " &_
(cint(lleno)+cint(vacio)) &_
" TextBox, se encontraron <br />LLenos (" &_
cint(lleno) &") y Vacios (" &_
cint(vacio) &")"
%>
<a href="inputsdinamicos.asp">Regresar</a>
__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
  #4 (permalink)  
Antiguo 13/02/2008, 16:28
 
Fecha de Ingreso: octubre-2007
Mensajes: 76
Antigüedad: 16 años, 8 meses
Puntos: 1
De acuerdo Re: agregar varios con varios input text

claro esa es una idea genial y no te digo que este mal porque no esta nada mal el codigo solo que tambien hay que anlisar el tipo depregunta que ponen
y asi podras entender os ejemplos claros y sencillos, para que la persona interesada pueda analisarlo facilmente

pero bueno si lo que se necesita es recoger de N cantidad de datos
entonces solo bastaria con modificar el codigo y es en dos pasos

1er paso.- a todos los inputs poner el mismo nombre(name, igual que un radio, o checkbox)
2do paso.- quitar el for y poner un FOR EACH
y asi quedaria:

pagina de proceso ProcesoDeInputText.asp

Código:
for each sDato in request.form("texto")
         if sDato <>"" then
	sSQL="INSER INTO NombreTabla(campo) VALUES ('"& sDato &"')"
                oConn.execute(sSQL)
         end if
next
  #5 (permalink)  
Antiguo 21/02/2008, 14:16
 
Fecha de Ingreso: noviembre-2004
Mensajes: 30
Antigüedad: 19 años, 6 meses
Puntos: 0
Re: agregar varios con varios input text

hola gracias a los dos por la ayuda... rene me agrado mas tu codigo ya que presisamente es lo que necesito, solo tengo alguna spreguntas:

tengo en mi tabla 2 columnas, como le hago para insertar esos 2 datos ??

como hago el ""INSER INTO NombreTabla(campo1,campo2) VALUES ('"& sDato &"', '"& sDato2 &"')" con el mismo for??


me explico??
  #6 (permalink)  
Antiguo 21/02/2008, 14:46
Avatar de leoaraguas  
Fecha de Ingreso: febrero-2008
Ubicación: Rosario
Mensajes: 17
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: agregar varios con varios input text

Divertite con esto. =)


<NOMBRE DEL ARCHIVO CAMPOS.ASP >

Código:
<%
if request.form("submit") = "Enviar" then
cadena= ""
valores = ""
	for each id in request.form()
		if id <> "Submit" then  'para que no te incorpore el boton de envio
			campos = campos & id & ","
			valores = valores & "'" & request.form(id) & "',"
		end if
	next
			cadena = "INSER INTO NombreTabla("&campos&") VALUES ("&valores&")" 
			response.write cadena
else
%>
<form action="campos.asp" method="post">
	<input type="text" name="codigo" value="" />
	<input type="text" name="nombre" value="" />
	<input type="text" name="apellido" value="" />
	<input type="text" name="edad" value="" />
	<input type="text" name="estado" value="" />
	<input type="submit" value="Enviar" name="Submit"/>
</form>
<%end if%>
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 00:51.