Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/01/2013, 11:37
Avatar de Briss
Briss
 
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 10 meses
Puntos: 12
Actualizar arrays

Hola a todos tenia un problema al querer actualizar varios registros usando checkbox

bien lo consegui solo que no he logrado pasar una variable (osea no actualizar un valor fijo)


Formulario
Código HTML:
<form action='actualizar.php' method="post" id="form1">
<table>

  <thead>
      <tr>
      <td></td>
      <td>ID</td>
      <td>Nombre</td>
      <td>Seleccionar</td>
    </tr>
  </thead>
  <?php do { ?>
  <tbody>
  <tr>  
  <input type="hidden" name="idg" id="idg" value="" size="26" />/*Este valor lo obtengo al elegir un elemento  en un select (esto es lo que debo actualizar)*/
    
      <td><input type="text" name="clave3[]" id="clave3" value="<? echo $row_productos['id']; ?>" size="10" /></td>
      <td><? echo $row_productos['Nombre']; ?></td>
      <td><input name="aprobar[]" value="<? echo $row_productos['id'];?>" type="checkbox" /><td> 

    </tr>
  </tbody>
     <?php } while ($row_productos = mysql_fetch_assoc($productos)); ?>
</table>

    
      <input type="submit" value="Actualizar" />
 
      <input type="hidden" name="MM_update" value="form1" />
    

</form> 





PARA ACTUALIZAR

Código PHP:
<?php 

$con
=mysql_connect("$host""$username""$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");
if (
count($_POST['aprobar'])) 



foreach (
$_POST['aprobar'] as $v


$sql="UPDATE productos set estado='existencia' WHERE id='$v'"
$res mysql_query($sql,$con) or die(mysql_error());

}else{ echo (
'No has seleccionado ningún registro...');} 

?>
El problema ocurre que quiero actualizar estado obtenido del valor de mi input idg
pero no lo logro solo puedo actualizar poniendo un valor fijo...

asi paso el valor de mi select al input idg

<select name="estado" onClick="document.getElementById('idg').value=this .value;" >
<option value="0">Selecciona</option>
<?php

do {
$id = $row_edo['idedo'];
$fullName = $row_edo['edo'];
echo " <option value='$id'>$fullName</option>";
} while ($row_edo = mysql_fetch_assoc($edo));
?>
</select>


y en mi input idg

<input type="text" name="idg" id="idg" value="" size="26" />

lo deje asi para actualizar mediante una variable

Código PHP:
if (count($_POST['aprobar'])) 



foreach (
$_POST['aprobar'] as $v

 
$p=$_POST['idg'];

$sql="UPDATE productos set estado='$p' WHERE id='$v'"
$res mysql_query($sql,$con) or die(mysql_error());

}else{ echo (
'No has seleccionado ningún registro...');} 
?>


Solo q no funciona y no entiendo porque con un valor fijo si