Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/11/2006, 16:07
Neron
 
Fecha de Ingreso: abril-2002
Mensajes: 18
Antigüedad: 22 años
Puntos: 0
Actualización masiva de registros

Estimados,

He revisado todo este foro y todo lo que pude encontrar en Google y aún no puedo ver la luz.

En palabras simples, quiero mostrar una serie de registros en un formulario, hacerles modificaciones, marcarlos con un checkbox para finalmente guardarlos en la base de datos.

Estoy claro que debo usar un array bidimensional, pero no logro que se actualicen los cambios en la base de datos:

Resumiendo el código, tengo:
Código PHP:
             <form action='mod_art.php' method='post'>

      <
tr bordercolor='#CCCCCC'>

        <
td colspan='15' class='contenido'><div align='center'>En el cat&#6959;go existen $cuenta2 registros $muestra</div></td>

        
</tr>

        <
tr class='pie' bgcolor='#006699'>

          <
td>Familia</td>

          <
td>Subfamilia</td>

          <
td>MOD</td>

          <
td>Categor&#55392;Web</td>

          
<td>C&oacute;digo</td>

          <
td>Descripci&oacute;n</td>

          <
td>Proveedor</td>

          <
td>Proveedor Web</td>

          <
td>Bodega</td>

          <
td>Precio Neto</td>

          <
td>Precio Oferta</td>

          <
td>Stock F&iacute;sico</td>

          <
td>Unidad</td>

          <
td>Estado</td>

          <
td>Empresa</td>

        </
tr>";



while ($a = mysql_fetch_array($consulta2))

{

echo"    
<tr bordercolor='#1851C6' bgcolor=$color

          <
input type='hidden' name='codigo[]' value='$codigo'>

          <
td class='contResul2'>$a[familia]</td>

          <
td class='contResul2'>$a[subfamilia]</td>

          <
td class='contResul2'><input type='checkbox' name='mod[]' value='Si' class='contResul2'></td>

          <
td class='contResul2'>$a[codigo]</td>

          <
td class='contResul2'>$a[descripcion]</td>

          <
td class='contResul2' align='right'>$$a[precio]</td>

          <
td class='contResul2' align='right'><input type='text' name='oferta[]' value='$a[precio_oferta]' size='6'></td>

          <
td class='contResul2' align='right'>$a[stock]</td>

          <
td class='contResul2'>$a[unidades]</td>

          <
td class='contResul2'><select name='estado2[]' class='contResul2' id='select4'>

                  <
option value='$a[estado]'>$a[estado]</option>";        



            //guardamos la consulta en un array y llenamos la opcion con las unidades de negocio

             while ($resul_est2 = mysql_fetch_array($estados2))

            {

            echo "
<option value='$resul_est2[estado]'>$resul_est2[estado]</option>"; 

            } 



echo "

                  
</select></td>

          <
td class='contResul2'><select name='empresa[]' class='contResul2' id='select4'>

                                 <
option value='$a[empresa]'>$a[empresa]</option>

                                 <
option value='Ninguna'>Ninguna</option>

                                 <
option value='Ambas'>Ambas</option>

                                 <
option value='Easy'>Easy</option>

                                <
option value='Sodimac'>Sodimac</option></select></td>

        </
tr>";

}

            echo "
<tr>

                    <
td colspan='3' align='right'><input type='submit' name='mod' value='Modificar'></td>

                    <
td colspan='12' align='right'></td>

                    </
tr></form
Y para actualizar tengo lo siguiente:
Código PHP:
for ($i 0$i count($_POST['codigo']); $i++) 



mysql_query("UPDATE catalogo SET categoria_web='{$_POST['categoria3'][$i]}',proveedor_web='{$_POST['proveedorweb2'][$i]}',precio_oferta='{$_POST['oferta'][$i]}',estado='{$_POST['estado2'][$i]}',empresa='{$_POST['empresa'][$i]}' WHERE codigo='{$_POST['codigo'][$i]}'"); 


Y NO ME RESULTA!!!!, ¿Que estoy haciendo mal?.

slds
Mauricio