Cita:
Iniciado por gnzsoloyo
Código PHP:
Ver original$resultado = mysql_query("SELECT SUM(sueldo) AS sueldo, SUM(antiguedad) AS antiguedad,
SUM(Dif_Ant) AS Dif_Ant,
SUM(Turnicidad) AS Turnicidad,
SUM(C_Puesto) AS C_Puesto,
SUM(C_Niv_Retr) AS C_Niv_Retr,
SUM(C_Destino) AS C_Destino,
SUM(C_Prof_1) AS C_Prof_1,
SUM(C_Prof_2) AS C_Prof_2,
SUM(C_Prof_3) AS C_Prof_3,
SUM(C_Prof_4) AS C_Prof_4
FROM nomisferio") or
die("Error al ejecuta la consulta: ".mysql_error()); $total = $row('sueldo') + $row('antiguedad') + $row('Dif_Ant') + $row('Turnicidad')
+ $row('C_Puesto') + $row('C_Niv_Retr') + $row('C_Destino') + $row('C_Prof_1')
+ $row('C_Prof_2') + $row('C_Prof_3') + $row('C_Prof_4');
echo "Su salario es: ". $total * $dias_trabajados;
TE juro que da la impresión de que ni siquiera te pusieses a analizar lo que realmente HACE cada una de las sentencias, ni lo que realmente DEVUELVE. Sin pretender ofender...
Postea, POR FAVOR, el código REAL que estás usando. Y digo el REAL, porque por lo que te dije más arriba, es evidente para mí que lo que estás posteando NO ES lo que realmente estás usando. COmo ya te dije, siendo que no usas GROUP BY es IMPOSIBLE que la query te devuelva lo que dices que te devuelve...
Realmente, este es el código que he estado utilizando, he probado con el WHERE y sin él.
Realizando la consulta en MySQL
SIN el WHERE, me suma TODOS los registros de TODAS las filas.
Es decir, me suma todos los importes de los sueldos, todos los importes de la antigüedad...
En cambio, realizando la consulta
CON el WHERE, me saca TODOS los registros que contiene mi tabla, es decir, las 24 filas.
Aparte de utilizar esas dos consultas, también he probado con varias consultas, sin obtener resultados positivos. Aquí una de ellas:
Código PHP:
Ver originalif (isset($_POST['enviado'])){ if ($_POST['categoria'] == '1')&&($_POST['mes'] == '28'){
$query = "SELECT SUM(sueldo, antiguedad, Dif_Ant, Turnicidad, C_Puesto, C_Niv_Retr, C_Destino, C_Prof_1, C_Prof_2, C_Prof_3, C_Prof_4) FROM nomisferio WHERE ID_Nomisferio==1";
}elseif($_POST['categoria'] == '1')&&($_POST['mes'] == '30'){
$query = "SELECT SUM(sueldo, antiguedad, Dif_Ant, Turnicidad, C_Puesto, C_Niv_Retr, C_Destino, C_Prof_1, C_Prof_2, C_Prof_3, C_Prof_4) FROM nomisferio WHERE ID_Nomisferio==2";
}elseif($_POST['categoria'] == '1')&&($_POST['mes'] == '31'){
$query = "SELECT SUM(sueldo, antiguedad, Dif_Ant, Turnicidad, C_Puesto, C_Niv_Retr, C_Destino, C_Prof_1, C_Prof_2, C_Prof_3, C_Prof_4) FROM nomisferio WHERE ID_Nomisferio==3";
Lo que pretendo especificar con esta consulta es que si el usuario escoge la categoria 1 y el tipo de mes que sea, la consulta muestre los valores del ID_Nomisferio que corresponda a esa categoría y ese mes. No sé si se entenderá bien.
Con las dos primeras consultas, no obtengo ningún error, pero no me realiza la suma de los importes. Esto es lo que me sale:
No tengo ninguna necesidad de no poner el código real, bastante que estáis intentando ayudarme, como para "engañaros".
Muchas gracias por el interés, de verdad, pero no entiendo bien como tengo que hacerlo, aparte que creo que no tiene que ser muy complicado, pero me he quedado atascado y no consigo avanzar.
Gracias.