Foros del Web » Programando para Internet » Jquery »

Crear input dinámico y almacenar en BD

Estas en el tema de Crear input dinámico y almacenar en BD en el foro de Jquery en Foros del Web. Buenas. Estoy intentando realizar una aplicación que permita almacenar una cantidad indefinida de productos que se vayan agregando con un botón, es para realizar una ...
  #1 (permalink)  
Antiguo 20/03/2015, 04:43
Avatar de HackID1  
Fecha de Ingreso: febrero-2013
Ubicación: En Update
Mensajes: 492
Antigüedad: 11 años, 2 meses
Puntos: 17
Pregunta Crear input dinámico y almacenar en BD

Buenas.

Estoy intentando realizar una aplicación que permita almacenar una cantidad indefinida de productos que se vayan agregando con un botón, es para realizar una facturación, en la cual un cliente se le reparan o venden X cantidad de productos.

El código que estoy usando es este, el crear el producto de forma dinámica funciona (se van añadiendo inputs para el nombre de producto) lo único que me falta es poder realizar el guardado de esto y de el resto de campos input que tengo en el form.

Adjunto el código de creación de INPUTS por JQuery.

Código HTML:
Ver original
  1.  
  2. <link href="http://netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap.min.css" rel="stylesheet">
  3.     <link href="http://cdnjs.cloudflare.com/ajax/libs/jQuery-Validation-Engine/2.6.4/validationEngine.jquery.css" rel="stylesheet">
  4.     <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
  5.     <script src="http://cdnjs.cloudflare.com/ajax/libs/jQuery-Validation-Engine/2.6.4/jquery.validationEngine.min.js"></script>
  6.     <script src="http://cdnjs.cloudflare.com/ajax/libs/jQuery-Validation-Engine/2.6.4/languages/jquery.validationEngine-es.js"></script>
  7.     <style>
  8.         .top-buffer {
  9.             margin-top:20px;
  10.         }
  11.     </style>
  12. </head>
  13.  
  14.  
  15. <table width="100%" cellpadding="0" >
  16.            
  17.             <form method="post" action="procesar_datos.php" name="miform" id="miform">
  18.            
  19.             <tr>
  20.                 <td colspan="2"> DATOS CLIENTE </td>
  21.             <tr>
  22.                 <td> Nombre: </td>
  23.                 <td> <input type="text" name="nombre" value="" required="required" /> </td>
  24.             </tr>
  25. <div id="container ">
  26.                 <div class="row-fluid top-buffer">
  27.                     <div class="col-lg-6 col-lg-offset-3 text-center">
  28.                         <!-- <form id="miform" method="post" name="miform" > -->
  29.                             <table id="tblprod" class="table table-hover table-bordered">
  30.                                   <thead>
  31.                                     <tr>
  32.                                       <th>Codigo Producto</th>
  33.                                       <th>Nombre</th>
  34.                                     </tr>
  35.                                   </thead>
  36.                                   <tbody>
  37.                                     <tr>
  38.                                       <td>1</td>
  39.                                        <td>
  40.                                         <div class="form-group col-lg-12">
  41.                                             <input class="form-control validate[required]"name="prod[]" />
  42.                                         </div>
  43.                                      </td>
  44.                                     </tr>
  45.              
  46.                                   </tbody>
  47.                                 </table>
  48.                                 <button id="btnadd" class="btn btn-primary">Agregar Nuevo</button>
  49.                                 <button id="btnsubmit" type="submit" class="btn btn-success">Guardar</button>
  50.                         <!-- </form> -->
  51.                     </div>
  52.                 </div>
  53.             </div>
  54.  
  55.             <div align="center">
  56.                 <tr>
  57.                     <td colspan="2"> <input type="submit" name="enviar" value="Enviar" /> </td>
  58.                 </tr>
  59.             </div>
  60.                
  61.         </table>
  62. </form>
  63.  
  64.  
  65.  
  66.     <script type="text/javascript">
  67.         $(function() {
  68.             var count = 1;
  69.             jQuery("#miform").validationEngine({promptPosition : "centerRight:0,-5"});
  70.            
  71.            $(document).on("click","#btnadd",function( event ) {  
  72.               count++;
  73.               $('#tblprod tr:last').after('<tr><td>'+count+'</td><td><div class="form-group col-lg-12"><input class="form-control validate[required]" name="prod[]" /></div></td></tr>');
  74.               event.preventDefault();
  75.            });
  76.            
  77.            $( "#miform" ).submit(function( event ) {
  78.                   var frm = $(this);
  79.               var formulario = $(this).serialize();
  80.              
  81.               if($('#miform').validationEngine('validate')){
  82.               $.post( "save_article.php", formulario)
  83.                         .done(function(data){
  84.                         //  alert(data);
  85. //aqui me falta conocer el codigo o que estoy haciendo mal que no me procesa los datos.
  86.                       $(frm)[0].reset();
  87.                     })
  88.                     .fail(function() {
  89.                     alert( "error no pude enviar los datos" );
  90.                     });
  91.               }
  92.               event.preventDefault();
  93.             });
  94.  
  95.         });
  96.     </script>
  97.     <!-- END SCRIPT PARA ARTICULOS DINAMICOS ANADIDOS -->
  98.    
  99.  
  100.  
  101. </body>
  102.  
  103. </html>

Bien con esto creo los inputs de cada producto y además el del nombre del cliente(hay mas campos pero bueno el problema esta aquí).


Ahora quiero guardar los datos pero no lo consigo, por ahora estoy intentando mostrar TODOS los campos que cree, pero no me funcionan ni el proceso de enviarlos al php.

El código PHP es:

Código PHP:

<?php

    
if(isset($_POST['prod']) && !empty($_POST['prod'])) {
            echo 
join(",",$_POST['prod']);
            echo 
"<br/>" $_POST['prod'];
    }
    else {
      echo 
'failed';
    }
?>


Gracias a quien pueda ayudarme con el poco de código que creo me falta de JQuery (no soy muy entendido en este lenguaje solo lo muy básico), y ayudarme a mostrar los datos de todos los campos rellenados, luego esto lo intento procesar a la BD conectando y almacenando con INSERT en una tabla.


Saludos
__________________
Puntuar +1 es buena forma de dar las gracias. :P
Your Time is limited, so don't waste it living someone else´s life.
Por: HackID1

Etiquetas: almacenar, bd, input
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 03:20.