Foros del Web » Programando para Internet » PHP »

Sumando y Update

Estas en el tema de Sumando y Update en el foro de PHP en Foros del Web. Hola, resulta que tengo el siguiente script y no logro hacerlo funcionar, consta de unas 3 variables que cada vez reciben unas cantidades diferentes, lo ...
  #1 (permalink)  
Antiguo 06/09/2013, 15:04
tukymix
Invitado
 
Mensajes: n/a
Puntos:
Sumando y Update

Hola, resulta que tengo el siguiente script y no logro hacerlo funcionar, consta de unas 3 variables que cada vez reciben unas cantidades diferentes, lo que me interesa es que sume las cantidades de esas variables a las que ya estan predefinidas en la base de datos para asi ir sumando los resultados, necesito alguien que me explique como hacerlo, ya nose que probar.

Código PHP:
<?
include('conexion.php');

$trabajador $_GET["trabajador"];
$cobrado $_GET["cobrado"];
$ganado $_GET["ganado"];
$ganancias $_GET["ganancias"];

$sql=mysql_query("SELECT * FROM trabajadores WHERE trabajador='$trabajador'");

if(
$ok=mysql_fetch_array($sql)){
    
mysql_query("UPDATE trabajadores SET cobrado+=$cobrado, ganado+=$ganado,ganancias+=$ganancias WHERE trabajador='$trabajador'");
}else{
    
    
mysql_query("INSERT INTO trabajadores (trabajador,cobrado,ganado,ganancias) VALUES ('$trabajador','$cobrado','$ganado','$ganancias')");
    
}
?>
Gracias por adelantado,
Tukymix.
  #2 (permalink)  
Antiguo 06/09/2013, 15:13
Avatar de bet7o  
Fecha de Ingreso: febrero-2010
Ubicación: DF
Mensajes: 315
Antigüedad: 14 años, 9 meses
Puntos: 20
Respuesta: Sumando y Update

Prueba así y también es recomendable hacer una buena validación de las variables para evitar problemas inesperados.


Código PHP:
Ver original
  1. ...
  2.  
  3. if ($rs = mysql_fetch_assoc($sql))
  4. {
  5.     $cobrado += $rs['cobrado'];
  6.     $ganado += $rs['ganado'];
  7.     $ganancias += $rs['ganancias'];
  8.  
  9.     mysql_query('
  10.        UPDATE trabajadores
  11.        SET
  12.            cobrado = ' + $cobrado + ',
  13.            ganado = ' + $ganado + ',
  14.            ganancias ' + $ganancias + '
  15.        WHERE trabajador = "' + $trabajador + '"
  16.    ');
  17. }
  18. else
  19. {
  20.     . . .
  21. }
__________________
Pero el no contaba con una cosa, mi peligroso desinteres por la vida humana
  #3 (permalink)  
Antiguo 07/09/2013, 08:37
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Sumando y Update

Código MySQL:
Ver original
  1. UPDATE trabajadores
  2. SET cobrado = cobrado + $cobrado, ganado = ganado + $ganado, ganancias = ganancias + $ganancias
  3. WHERE trabajador='$trabajador'

SQL no es PHP, no te confundas.
Los DBMS no interpretan las mismas operaciones matemáticas, y por otro lado, una asignación a un campo de un registro en una tabla, no es una operacion aritmética entre variables, por lo que ni siquiera es funcional en otros motores de bases de datos.

No confundir. Que puedas embeber un lenguaje de consultas en uno de programación no implica que sus entornos de ejecución sean compartidos. Las bases de datos tienen su propio entorno y debes respetar sus reglas.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: mysql, select, sql, sumando, update, variable
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:19.