Ver Mensaje Individual
  #7 (permalink)  
Antiguo 05/02/2011, 20:37
JaimeSavines
 
Fecha de Ingreso: octubre-2009
Mensajes: 245
Antigüedad: 15 años, 1 mes
Puntos: 17
Respuesta: que le ocurre a mi update? aveces envia vacio otras no

El problema es que estas concatenando los valores de la variable $_POST sin verificar si realmente contienen algún valor, y para efectos de usar UPDATE necesitas solo pasar los campos que necesitan ser cambiados.
Te dejo un ejemplo de como puedes hacer eso, ojo es un ejemplo así que solo ocupa la idea principal y adaptalo a tu problema.
Código PHP:
Ver original
  1. $post_array = Array('nombre' => 'Juan','apellido'=>'Cabrera','email'=>'[email protected]','edad' => '20');
  2.            $id = 10;
  3.            function getSetString($parray){
  4.                foreach($parray as $key => $value){
  5.                    if(!empty ($value)){
  6.                        if(is_numeric($value)){
  7.                            $setArray[] = "$key = $value";
  8.  
  9.                        }else{
  10.                            $setArray[] = "$key = '$value'";
  11.                        }
  12.                        
  13.                    }
  14.                }
  15.                return empty($setArray)? false: implode(', ',$setArray);
  16.            }
  17.  
  18.            $setString = getSetString($post_array);
  19.            $sqlQuery = "UPDATE tabla SET {$setString} where id=$id";
  20.            echo $sqlQuery;
__________________
Saludos.