Foros del Web » Programando para Internet » PHP »

Insertar N filas a Mysql, para gente con level !

Estas en el tema de Insertar N filas a Mysql, para gente con level ! en el foro de PHP en Foros del Web. 1.-Al ingresar, por ejemplo el numero, 6 al text y darle clic, me tiene que aparecer 6 textbox para ingresar los datos correspondientes. 2.- Al ...
  #1 (permalink)  
Antiguo 20/12/2011, 15:34
 
Fecha de Ingreso: agosto-2010
Ubicación: Lima - Perú
Mensajes: 90
Antigüedad: 14 años, 3 meses
Puntos: 2
Insertar N filas a Mysql, para gente con level !

1.-Al ingresar, por ejemplo el numero, 6 al text y darle clic, me tiene que aparecer 6 textbox para ingresar los datos correspondientes.

2.- Al darle clic en insertar, que inserte los 6 campos a la BD.

Para mayor claridad ver el siguiente grafico:



alguien me puede orientar o ayudar, le estaría muy agradecido.

saludos cordiales todos.
__________________
"La imaginación es más importante que el conocimiento. El conocimiento es limitado, mientras que la imaginación no"
  #2 (permalink)  
Antiguo 20/12/2011, 15:47
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 3 meses
Puntos: 1532
Respuesta: Insertar N filas a Mysql, para gente con level !

es realmente facil de hacer sólo con php, implicaría enviar ese pequeño form request a php y desde un ciclo replicar las filas de inputs que necesite, luego ése es otro form para otro request que procese la inserción en DB.

si quieres algo más sofisticado = manipulación del DOM con javascript (formulario dinámico)
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 20/12/2011, 16:04
 
Fecha de Ingreso: agosto-2010
Ubicación: Lima - Perú
Mensajes: 90
Antigüedad: 14 años, 3 meses
Puntos: 2
Respuesta: Insertar N filas a Mysql, para gente con level !

hola maycolalvarez, después de ver el karma que tienes claro que todo tiene que ser fácil para ti jaja, podrías ser un poco mas explicito con la explicación que me acabas de dar. saludos from Peru.
__________________
"La imaginación es más importante que el conocimiento. El conocimiento es limitado, mientras que la imaginación no"
  #4 (permalink)  
Antiguo 20/12/2011, 16:24
Avatar de ElSiniestro  
Fecha de Ingreso: diciembre-2011
Ubicación: Ibagué
Mensajes: 115
Antigüedad: 12 años, 11 meses
Puntos: 23
Respuesta: Insertar N filas a Mysql, para gente con level !

jimmymark

maycol no pudo ser más específico, lo que necesitas es elegir como resolver tu problema: si con PHP o con JavaScript

Código Javascript:
Ver original
  1. var nextinput = 0;
  2. function AgregarCampos(){
  3.     nextinput++;
  4.     campo = '<li id="campo'+nextinput+'">Campo:<input type="text" size="20" id="campo' + nextinput + '"  name="campo' + nextinput + '"  /></li>';
  5.     $("#campos").append(campo);
  6. }

Ahí tienes una función que afortunadamente tenía guardada. Te aclaro que está escrita en jQuery (un framework de JavaScript) y que debes adaptarla a tus necesidades. (No olvides bajar jQuery sino no funciona)

Código HTML:
Ver original
  1. <form id="form" name="form" onsubmit="return validarCampos();" method="POST">
  2.     <a href="#" onclick="AgregarCampos();">Agregar Campos</a>
  3.     <div id="campos">
  4.     </div>
  5.     <input type="submit" value="enviar">
  6. </form>

Este form lo metes en el <body></body> de tu página (Para la próxima no seas sarcástico cuando alguien te dice que hacer, esto es un sitio de ayuda por medio de asesoría, más no de trabajo completo, así que cualquier cosa que te digan es de ayuda)
  #5 (permalink)  
Antiguo 20/12/2011, 16:27
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 3 meses
Puntos: 1532
Respuesta: Insertar N filas a Mysql, para gente con level !

en efecto, tal cual te indica @elSiniestro, debes decidir, en función de ello seré más especifico, saludos
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #6 (permalink)  
Antiguo 20/12/2011, 23:52
 
Fecha de Ingreso: agosto-2010
Ubicación: Lima - Perú
Mensajes: 90
Antigüedad: 14 años, 3 meses
Puntos: 2
De acuerdo Respuesta: Insertar N filas a Mysql, para gente con level !

Este es el código del javascript
Código:
 function interactuar() { 
  var nro_calzado = document.getElementById("nro_calzado").value;

	for (i=0; i< nro_calzado; i++)
	{
	nextinput++;
    campo = '<li id="campo'+nextinput+'">Talla: ' + (1+i) + ' <input type="text" size="20" id="campo' + nextinput + '"  name="campo' + nextinput + '"  /></li>';
    $("#campitos").append(campo);
	}
}
este es el código del form:
Código HTML:
 <form action="" name="formulario" onsubmit="return validarCampos();" method="POST">
<table width="500" border="1" align="center">
  <tr>
    <td>cuantos calzados deseas ingresar?</td>
    <td><input name="nro_calzado" id="nro_calzado" type="text" /></td>
    <td> <input name="" value="Mostrar Tallas" type="button" onclick="interactuar();" /> </td>
  </tr>
</table><br>
<div id="campitos" align="center"> </div>
</form> 
este es el resultado (ver imagen)


Mi última consulta: al momento de hacer clic en el boton "insertar grupo de calzados" tengo que grabar los 4 pares de calzado lo unico que es diferente son las tallas, lo demas(marca, modelo, etc) es lo mismo.
Creo que tengo que llamar a una funcion javascript ?

gracias por la ayuda que me están brindando
__________________
"La imaginación es más importante que el conocimiento. El conocimiento es limitado, mientras que la imaginación no"
  #7 (permalink)  
Antiguo 21/12/2011, 00:58
Avatar de dggluz  
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 525
Antigüedad: 15 años, 6 meses
Puntos: 50
Respuesta: Insertar N filas a Mysql, para gente con level !

Si a los campos que pueden repetirse les pones el mismo name, terminado en corchetes (por ejemplo "campo[]"), desde PHP podrás recorrer el array $_REQUEST['campo'] (reemplaza "REQUEST" por "GET" o "POST" según el método que uses, aunque "REQUEST" funciona para ambos) con los valores introducidos. Ésa es la forma más fácil que se me ocurre para resolver el problema. Si quieres hacer alguna validación antes, sí debes usar JavaScript. Saludos.
  #8 (permalink)  
Antiguo 21/12/2011, 10:23
Avatar de ElSiniestro  
Fecha de Ingreso: diciembre-2011
Ubicación: Ibagué
Mensajes: 115
Antigüedad: 12 años, 11 meses
Puntos: 23
Respuesta: Insertar N filas a Mysql, para gente con level !

Hola
Primero que todo, te recomiendo el método post, porque es más privado. Para lo que dices debes recibir en el script la información enviada en el formulario y guardarla en variables, las tallas en arreglos (como dijo dggluz)

Creo que debes crear otra tabla en la cual relaciones cada talla con el código de pedido (por la relación 1-N); esa tabla también debe estar relacionada con la tabla producto (donde esté la descripción, modelo, color, y demás datos que manejes)

Después de guardar las variables en el arreglo, escribes un bucle que te permita guardar todo según los datos que recibas (es más deberías considerar manejar todo con arrays bidimensionales)

Inténtalo y nos cuentas
  #9 (permalink)  
Antiguo 23/12/2011, 02:03
 
Fecha de Ingreso: agosto-2010
Ubicación: Lima - Perú
Mensajes: 90
Antigüedad: 14 años, 3 meses
Puntos: 2
Respuesta: Insertar N filas a Mysql, para gente con level !

Hola amigos:

E estado viendo la manera de poder almacenar las variables en javascript pero estoy teniendo algun inconveniente con la sintaxis de mi codigo, para ver si me pueden dar una mano.

Este for esta dentro de mi funcion javascript y corre sin problemas por que me muestra la cantidad N de textboxes.

Código PHP:
for (i=0inro_calzadoi++)
    {
    
nextinput++;
    
campo '<li id="campo'+nextinput+'">Talla: ' + (1+i) + ' <input type="text" size="20" id="nrotalla'nextinput '"  name="campo' nextinput '"  /></li>';
    $(
"#campitos").append(campo);
    } 
lo que quiero es ponerle un id a cada textbox y queria saber si estaria bien esta sintaxis --> (......size="20" id="nrotalla'+ i + nextinput +.....). quiero que se vea asi por ejemplo:

<input type="text" size="20" id="nrotalla1" name="nrotalla1" />
<input type="text" size="20" id="nrotalla2" name="nrotalla2" />
<input type="text" size="20" id="nrotalla3" name="nrotalla3" />
.................................................. .................................................. ......
<input type="text" size="20" id="nrotallaN" name="nrotallaN" />

como estos texbox son dinamicos es que no puedo saber si mi codigo esta bien o mal, pa ver si me dan una manito, saludosss
__________________
"La imaginación es más importante que el conocimiento. El conocimiento es limitado, mientras que la imaginación no"

Etiquetas: filas, gente, level, mysql
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 17:30.