Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/02/2005, 07:35
Avatar de polaya
polaya
 
Fecha de Ingreso: diciembre-2004
Ubicación: Chile
Mensajes: 191
Antigüedad: 19 años, 4 meses
Puntos: 0
Pregunta Modificar varios registros

Hola, tengo un problemilla al momento de actualizar varios registros a la vez, el tema es que cuando inserto varios me resulta sin problemas y cuando los quiero modificar, utilizo la misma formula pero me arroja un error.
envio el codigo para queme comprendan mejor, el primero es del formulario de donde envio los datos modificados.
Código PHP:
if (!empty($_POST['todas']))
        {
            
$sql="SELECT * FROM caja where cliente='$idcliente'";
            
$result=mysql_query($sql,$IdConexion);
            
$Ccajas mysql_num_rows($result);
               if (
$rowmysql_fetch_array($result))
            {
                echo 
"<form action=\"".$_SERVER['PHP_SELF']."\" method=\"POST\">\n\n";
                echo 
"<b><BR>DESPLEGANDO TODAS LAS CAJAS</B>";
                echo 
"<table border=\"1\" bordercolor=\"000000\" cellspacing=\"0\">";
                echo 
"<tr><td align='center'>Caja</td><td align='center'>Departamento</td><td align='center'>Estado</td><td align='center'>Tipo</td><td align='center'>Bodega</td><td align='center'>Sala</td><td align='center'>Estante</td><td align='center'>Linea</td><td align='center'>Columna</td></tr>";
                
$i=1;
                DO
                   {
                    echo 
"<tr>";
                    echo 
"<td align='center'>$row[numero]</td>";
                    
$numcs$row[numero];
                    echo 
"<input type=\"hidden\" name=\"numcs$i\" value=\"$numcs\">";
                    echo 
"<td><select name=\"iddepto$i\">";
                    
$SQLconsulta="SELECT * FROM departamento where cliente='$idcliente' and estado='1'";
                    
$consulta mysql_query($SQLconsulta,$IdConexion) or die(mysql_error());
                    
$NFilasd mysql_num_rows($consulta);
                    if(
$NFilasd==0)
                    {
                        echo 
"<option value=\"No Posee\"> No Posee </option>";
                    }
                    else
                    {
                        echo 
"<option value=\"Pendiente\"> Pendiente </option>";
                        While(
$registro=mysql_fetch_assoc($consulta))
                        {
                            if (
$row[depto] == $registro['nombre'])
                               {
                                echo 
"<option value=\"".$registro['nombre']."\" selected>".$registro['nombre']."</option>\n";
                            }
                            else
                            {
                                echo 
"<option value=\"".$registro['nombre']."\">".$registro['nombre']."</option>\n";
                            }
                        }
                    }
                       echo 
"</select></td>";
                    echo 
"<td><select name=\"estado$i\">";
                    
$SQLestado="SELECT * FROM estado order by idestado asc";
                    
$consultae mysql_query($SQLestado,$IdConexion) or die(mysql_error());
                    While(
$registroe=mysql_fetch_assoc($consultae))
                    {
                        if (
$row[estado] == $registroe['nombre'])
                        {
                            echo 
"<option value=\"".$registroe['nombre']."\" selected>".$registroe['nombre']."</option>\n";
                        }
                        else
                        {
                            echo 
"<option value=\"".$registroe['nombre']."\">".$registroe['nombre']."</option>\n";
                        }
                    }
                       echo 
"</select></td>";
                    echo 
"<td><select name='tipo$i'>";
                    if(
$row[tipo] == 'Normal'){echo "<option value='Normal' selected>Normal</option><option value='Resagos'>Resagos</option>";}
                    if(
$row[tipo] == 'Resagos'){echo "<option value='Normal'>Normal</option><option value='Resagos' Selected>Resagos</option>";}
                    echo 
"</select></td>";
                    echo 
"<td><input name=\"bodega$i\" type=\"text\" size='7' value='$row[bodega]'></td>";
                    echo 
"<td><input name=\"sala$i\" type=\"text\" size='7' value='$row[sala]'></td>";
                    echo 
"<td><input name=\"estante$i\"type=\"text\" size='7' value='$row[estante]'></td>";
                    echo 
"<td><input name=\"linea$i\"type=\"text\" size='7' value='$row[linea]'></td>";
                    echo 
"<td><input name=\"columna$i\"type=\"text\" size='7' value='$row[columna]'></td>";
                    echo 
"</tr>";
                    
$i++;
                 }
                WHILE (
$row=mysql_fetch_array($result));
                
//$i++;
                //}
                 
echo "</table>";
                echo 
"<input type=\"hidden\" name=\"Ccajas\" value=\"$Ccajas\">";
                echo 
"<br><input type=\"submit\" name=\"modificat\" value=\"Realizar Modificacion\">";
                 echo 
"</form>";
            }
        } 
Como ya dije utilizo la misma formula para insertar y me resulta, ahora envio el codigo del update:

Código PHP:
if (!empty($_POST['modificat']))
     {
        
$idcliente=$_POST['idcliente'];$Ccajas=$_POST['Ccajas'];
        
$i=1;

        While(
$i<=$Ccajas)
        {
            
$sql="UPDATE caja SET depto="$_POST['iddepto$i']",estado="$_POST['estado$i']",tipo="$_POST['tipo$i']",bodega="$_POST['bodega$i']",sala="$_POST['sala$i']",estante="$_POST['estante$i']",linea="$_POST['linea$i']",columna="$_POST['columna$i']" WHERE cliente='$idcliente' and numero='"$_POST['numcs$i']"'";
            
mysql_query($sql);
            
$i++;
        }
     } 
Bueno, ese es el tema, si alguien me puede ayudar, se agradece.
__________________
La vida da muchas vueltas...debe ser por eso que uno se marea.