Hola Buenas tardes soy bastante nuevo en el foro, y espero poder ayudar en lo que pueda y que me ayuden en lo que puedan, tengo un formulario dinámico con el cual espero agregar campos dinámicamente según la necesidad del usuario, pero no logro hacer la inserción a la base de datos, pues siempre se me toma es el ultimo archivo les dejo copia de mi trabajo:
Código HTML:
Ver original <link href="http://netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap.min.css" rel="stylesheet"> <link href="http://cdnjs.cloudflare.com/ajax/libs/jQuery-Validation-Engine/2.6.4/validationEngine.jquery.css" rel="stylesheet"> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> <script src="http://cdnjs.cloudflare.com/ajax/libs/jQuery-Validation-Engine/2.6.4/jquery.validationEngine.min.js"></script> <script src="http://cdnjs.cloudflare.com/ajax/libs/jQuery-Validation-Engine/2.6.4/languages/jquery.validationEngine-es.js"></script> .top-buffer {
margin-top:20px;
}
<div class="row-fluid top-buffer"> <div class="col-lg-6 col-lg-offset-3 text-center"> <form id="miform" method="post" name="miform" > <table id="tblprod" class="table table-hover table-bordered"> <div class="form-group col-lg-12"> <input class="form-control validate[required]"name="prod[]" /> <div class="form-group col-lg-13"> <input class="form-control validate[required]"name="valor[]" /> <div class="form-group col-lg-14"> <input class="form-control validate[required]"name="cant[]" />
<button id="btnadd" class="btn btn-primary">Agregar Nuevo
</button> <button id="btnsubmit" type="submit" class="btn btn-success">Guardar
</button>
<script type="text/javascript"> $(function() {
var count = 1;
jQuery("#miform").validationEngine({promptPosition : "centerRight:0,-5"});
$(document).on("click","#btnadd",function( event ) {
count++;
$('#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><td><div class="form-group col-lg-13"><input class="form-control validate[required]"name="valor[]" /></div></td><td><div class="form-group col-lg-14"><input class="form-control validate[required]"name="cant[]" /></div></td></tr>');
event.preventDefault();
});
$( "#miform" ).submit(function( event ) {
var frm = $(this);
var formulario = $(this).serialize();
if($('#miform').validationEngine('validate')){
$.post( "guardar.php", formulario)
.done(function(data){
alert(data);
$(frm)[0].reset();
})
.fail(function() {
alert( "error no pude enviar los datos" );
});
}
event.preventDefault();
});
});
el codigo de mi archivo guardar es el siguiente
Código PHP:
if(isset($_POST['prod']) && !empty($_POST['prod'])){
foreach (array_keys($_POST['prod']) as $i)
{
// Acá usamos los campos.
$prod=$_POST['prod'][$i];
$var=$_POST['valor'][$i];
$cant=$_POST['cant'][$i];
echo $prod;
echo $var;
echo $cant;
}
}else{
echo 'failed';
}
$sql="insert into prueba(prod, val, cant)
values('$prod', '$var', '$cant')";
$rest = mysql_query($sql);