Comunidad de diseño web y desarrollo en internet online

problema con la suma de valores de una tabla

Citar            
MensajeEscrito el 25 Feb 2011 04:58 pm
hola:
busco la forma de hacer las suma de los litros de una tabla entre unas fechas definidas por un formulario. alguien sabe explicarme porque no me las muestra
el tema del formulario lo tengo claro,busco la informacion sobre el PHP


Código PHP :

$desde='';$hasta='';

$desde=$_POST["fechaini"];
$hasta=$_POST["fechafin"];

$consulta=mysql_query("select sum (litros) FROM litros
where fecha between date $desde and date $hasta;",$link);


echo $consulta;

Por cannibales1974

2 de clabLevel



 

chrome
Citar            
MensajeEscrito el 26 Feb 2011 11:39 am
La variable $consulta no contiene el o los registros de la consulta SQL, solamente un puntero a los resultados de la consulta. Para leer los resultados debes usar cualquiera de estas funciones:
mysql_ fetch_ array
mysql_ fetch_ assoc

Código PHP :

$consulta=mysql_query("select sum (litros) FROM litros
where fecha between date $desde and date $hasta;",$link);
$registro = mysql_ fetch_ assoc($consulta);
print_r($registro);

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 27 Feb 2011 03:54 am
Además generalmente no se hace directo en la función mysql_query el SQL. Usualmente se declara algo así:

Código PHP :

$SQL = "select sum (litros) FROM litros 
where fecha between date $desde and date $hasta;"
$consulta = mysql_query($SQL,$link); 


Por otra parte, es considerado buena practica, declarar en mayúsculas los comandos claves usados en SQL:

Código PHP :

 "SELECT SUM (litros) FROM litros 
WHERE fecha BETWEEN date $desde AND date $hasta;"
$consulta = mysql_query($SQL,$link);


Otro detalle, es que usualmente en algo así, es más fácil declarar una variable:

Código PHP :

 "SELECT SUM (litros) as total FROM litros 
WHERE fecha BETWEEN date $desde AND date $hasta;"
$consulta = mysql_query($SQL,$link);


También es buena practica usar comillas para datos clave como tablas y rows:

Código PHP :

 "SELECT SUM (litros) as `total` FROM `litros` 
WHERE `fecha` BETWEEN date $desde AND date $hasta";
$consulta = mysql_query($SQL,$link);


Además la consulta del Between está mal formado, debería ser:

Código PHP :

 "SELECT SUM (litros) as `total` FROM `litros` 
WHERE `fecha` BETWEEN $desde AND $hasta";
$consulta = mysql_query($SQL,$link);


El último detalle, es no mezclar variables de PHP con el SQL:

Código PHP :

 "SELECT SUM (litros) as `total` FROM `litros` 
WHERE `fecha` BETWEEN ".$desde." AND ".$hasta;
$consulta = mysql_query($SQL,$link);


Por cierto, un tip, hacer así te solucionará más de un dolor de cabeza:

Código PHP :

$SQL = "select sum (litros) FROM litros 
where fecha between date $desde and date $hasta;"
$consulta = mysql_query($SQL,$link) or die(mysql_error()); 


Saludos, Hernán . -

Por Hernán

BOFH

6148 de clabLevel

19 tutoriales
23 articulos

Genero:Masculino   REC Desarrollador de GAIA

Marketing & IT

chrome
Citar            
MensajeEscrito el 27 Feb 2011 02:24 pm
Se me pasó el error de sintaxis en la sentencia SQL :).
Gracias por señalarlo Hernán.

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 28 Feb 2011 02:17 am

DriverOp escribió:

Se me pasó el error de sintaxis en la sentencia SQL :).
Gracias por señalarlo Hernán.


jeje sí es muy sutil, tampoco me dí cuenta de primeras XD

Saludos, Hernán . -

Por Hernán

BOFH

6148 de clabLevel

19 tutoriales
23 articulos

Genero:Masculino   REC Desarrollador de GAIA

Marketing & IT

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.