buenas compañeros, estoy en algo que de verdad no eh podido con el tengo formularios dinamicos yo puedo ingresar perfectamente pero a la hora de modificar, aparecen los articulos pero no puedo hacer las dos cosas a la vez es decir el me actualiza ese articulo pero no me deja insertar otro. pongo parte del codigo
Consulta normal
Código PHP:
<?
$contador='1';
$sql_articulo=pg_query("SELECT * FROM articulo_requisicion WHERE num_requisicion=$id");
//Una vez seleccionados los registros los mostramos para su edición
while($row_articulo=pg_fetch_array($sql_articulo))
{
?>
<table border="0.5" >
<tr>
<td ><input type='text' size='2' onFocus='this.blur()' value="<?php echo $contador ?>" name='renglon[]' readonly="readonly" ></td>
<td>
<input type='text' size='17' name='articulo[]' value="<?php echo $row_articulo['articulo'];?>" ></td>
<td>
<input type='text' size='28' name='descripcion[]' value="<?php echo $row_articulo['descripcion'];?>" >
</td>
<td><input type='text' size='5' name='unidad[]' value="<?php echo $row_articulo['unidad'];?>" ></td>
<td><input type='text' size='4' onkeyup='sumar()' name='cantidad[]' onkeypress='return onlyNumbersDano(event)'; value="<?php echo $row_articulo['cantidad'];?>"></td>
<td><a href=borrar_articulo.php?id_borrar=<?php echo $row_articulo['id_articulos'];?>&tnum=<?php echo $row_articulo['num_requisicion'];?> onclick="return confirm('¿Está seguro de eliminar este registro? \n P.D.: si lo elimina no lo podra recuperar de la base de datos.');">X</a></td>
</tr>
</table>
<?
$contador++;
}
pg_free_result($sql_articulo)
?>
ahora muestro el que me genera los campos dinamicos
Código HTML:
Ver original<table border="0" id="tablaFormulario">
<td align="center"><input type="button" onClick="addarticulo()" value="Añadir Articulo" class="buttonb" ></td>
<script language="javascript" type="text/javascript">
var indiceFilaFormulario=1;
function addarticulo(){
myNewRow = document.getElementById("tablaFormulario").insertRow(-1);
myNewRow.id=indiceFilaFormulario;
myNewCell=myNewRow.insertCell(-1);
var renglon=<?=$contador-1;?>//extraemos el valor de la variable renglon
alterno2=indiceFilaFormulario+renglon;
myNewCell.innerHTML="
<td><input type='text' size='1' onFocus='this.blur()' value='"+alterno2+"' name='renglon[]' style=' background:#FDFDFD; margin:3px 1px; padding:3px; border:1px solid #BCBCBC'></td>";
myNewCell=myNewRow.insertCell(-1);
myNewCell.innerHTML="
<td><input type='text' size='21' name='articulo[]' id='articulo' style=' background:#FDFDFD; margin:3px 1px; padding:3px; border:1px solid #BCBCBC'></td>";
myNewCell=myNewRow.insertCell(-1);
myNewCell.innerHTML="
<td><input type='text' size='37' name='descripcion[]' style=' background:#FDFDFD; margin:3px 1px; padding:3px; border:1px solid #BCBCBC'></td>";
myNewCell=myNewRow.insertCell(-1);
myNewCell.innerHTML="
<td><input type='text' size='4' name='unidad[]' style=' background:#FDFDFD; margin:3px 1px; padding:3px; border:1px solid #BCBCBC'></td>";
myNewCell=myNewRow.insertCell(-1);
myNewCell.innerHTML="
<td><input type='text' size='4' onkeyup='sumar()' onkeypress='return onlyNumbersDano(event)'; name='cantidad[]' style=' background:#FDFDFD; margin:3px 1px; padding:3px; border:1px solid #BCBCBC'></td>";
myNewCell=myNewRow.insertCell(-1);
myNewCell.innerHTML="
<td ><input type='button' value='Borrar' onclick='removeLine(this)' style=' background:#2CB1DD; margin:3px 1px; padding:3px; border:1px solid #000099' ></td>";
indiceFilaFormulario++;
}
function removeLine(obj){
var oTr = obj;
while(oTr.nodeName.toLowerCase()!='tr'){
oTr=oTr.parentNode;
}
var root = oTr.parentNode;
root.removeChild(oTr);
indiceFilaFormulario--;
}
ahora el php de guardar, se que tengo errores pero la verdad no se como guardar e actualizar a la vez espero me puedan ayudar estaré agradecido.
Código PHP:
Ver original$checkid = pg_query("SELECT * FROM articulo_requisicion WHERE num_requisicion='$id_requisicion'");
$i=0;
foreach($_POST['renglon'] as $renglon)
{
if ($userid_exist["num_requisicion"] == $id_requisicion) {// aqui si el numero de requisicion es igual al q esta en la base de datos actualiza si no inserta, necesito insertar y actualizar a la vez,
$query2 = "UPDATE articulo_requisicion SET renglon='".$_POST["renglon"][$i]."', articulo='$articulo',descripcion='$descripcion',unidad='$unidad', cantidad='$cantidad' Where num_requisicion=$id_requisicion AND renglon='".$_POST["renglon"][$i]."'" ;
//$query2 = "INSERT INTO articulo_requisicion (renglon,articulo,descripcion,unidad,cantidad,num_requisicion)
//VALUES ('".$renglon."','".$articulo."','".$descripcion."','".$unidad."','".$cantidad."','".$id_requisicion."')
//SELECT * From articulo_requisicion WHERE NOT EXIST (SELECT * FROM articulo_requisicion WHERE renglon='".$renglon."' AND articulo='".$articulo."')
//";
}else{
$query3 = "INSERT INTO articulo_requisicion (renglon,articulo,descripcion,unidad,cantidad,num_requisicion)
VALUES ('".$renglon."','".$articulo."','".$descripcion."','".$unidad."','".$cantidad."','".$id_requisicion."')";
}
$i++;
}