Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/07/2012, 21:13
elmundocabezon
 
Fecha de Ingreso: junio-2012
Ubicación: Buenos Aires
Mensajes: 4
Antigüedad: 11 años, 10 meses
Puntos: 0
Mensaje Actualizar varios registros a la vez

Hola gente de Foros del Web. Quería hacerles una consulta que no he podido solucionar. Ya me he fijado en el foro pero no le pude encontrar la vuelta a mi problema y quería ver si uds me podian ayudar con esto.
Recien estoy arrancando con php y no le pude encontrar la vuelta .

El asunto es que quiero actualizar varios registros en vez de hacerlo uno por uno, verificándolo por php con un checkbox. Lo que hice hasta ahora es:

el formulario: (que toma los datos desde una bd)
Código PHP:
Ver original
  1. <?php
  2.    
  3.     include("conexion.php");
  4.     $sql="SELECT mar_nombre , mar_id, mar_email, mar_tel FROM marcas ";
  5.     $resultado=mysql_query($sql);
  6.    
  7. ?>
  8. <form action="lala2.php" method="post">
  9.     <table>
  10.         <tr> <?php
  11.              while($fila=mysql_fetch_assoc($resultado)){
  12.              ?>
  13.             <td> <input type="checkbox" name="check[]" id="check[]" > </td>
  14.             <td> <input type="text" name="mar_nombre[]" id="mar_nombre" value="<?php echo($fila["mar_nombre"]); ?>"/> </td>
  15.             <td> <input type="text" name="mar_tel[]" id="mar_tel"  value="<?php echo($fila["mar_tel"]); ?>"/> </td>
  16.             <td> <input type="text" name="mar_email[]" id="mar_email"  value="<?php echo($fila["mar_email"]); ?>"/> </td>
  17.             <input type="hidden" value="<?php echo($mar_id); ?>" name="mar_id[]" id="mar_id" /> <!-- para mandar el prd_id sin llamarlo en otro lugar sin que haga falta -->
  18.  
  19.         </tr>
  20.      <?php
  21.                          
  22.         }
  23.          ?>                  
  24.         <tr>
  25.             <td  colspan="4" align="center"><input type="submit" value="Modificar Marca" class="botones"/></td>
  26.         </tr>
  27.     </table>
  28.    
  29. </form>

Y se envia esto al siguiente archivo:
Código PHP:
Ver original
  1. <?php
  2. include("conexion.php");
  3. $check=$_POST["check"];
  4.  
  5. if($check!=1){
  6.     echo("seleccione un registro a modificar");
  7. }else{
  8.  
  9.     $mar_id=$_POST["mar_id"];
  10.     $mar_nombre=$_POST["mar_nombre"];
  11.     $mar_tel=$_POST["mar_tel"];
  12.     $mar_email=$_POST["mar_email"];
  13.  
  14.    for ($i=0; $i<count($mar_id) ; $i++) {
  15.         $sql="UPDATE marcas SET mar_nombre='$mar_nombre', mar_tel='$mar_tel', mar_email='$mar_email' WHERE mar_id=$mar_id ";
  16.     $resultado=mysql_query($sql);
  17.     echo($resultado);
  18.     }
  19.  
  20. }
  21.  
  22. ?>


Sé que me faltan algunas lineas en el código...por lo que estuve viendo, hace falta un for (lo agregué...pero no se si esta bien puesto) y creo que un while, pero la verdad que me perdí.
Con este codigo que les pase me tira siempre "seleccione un registro a modificar"...

Agradeceria mucho su ayuda en este caso en particular y de paso decirles que me agrada mucho la página y la manera que se ayuda (ojala pueda estar algún día del otro lado ayudando )

Saludos