[Php-avanzado] Ventas entre dos fechas

Leandro Schereik lschereik en hotmail.com
Jue Jul 22 14:43:04 ART 2010


Hola Leo me quedo asi funcionando bien:

 

$sql=mysql_query("SELECT * FROM cabecventas WHERE fecha BETWEEN '$fecha1' AND '$fecha2'");   


if (mysql_error())
    print("Error");
   else{

     print("Cantidad: ".mysql_num_rows($sql));

}

 

En $sql asigno la salida de mysql_query(...) no el string con la query por lo tanto en  mysql_num_rows($sql) anda bien.

 

Saludos 
Leandro > From: leonardot en pegasusnet.com.ar
> To: php-avanzado en pato2.fi.mdp.edu.ar
> Date: Thu, 22 Jul 2010 14:25:26 -0300
> Subject: Re: [Php-avanzado] Ventas entre dos fechas
> 
> Hola Leandro,
> 
> El jue, 22-07-2010 a las 14:25 +0000, Leandro Schereik escribió:
> > Hola Leo le agregue comillas simples a las variables y salio.
> 
> Me alegra... y acordate: no te compliques con la sintaxis.
> 
> > Pero tengo una duda: 
> > Esta es la consulta correcta.
> > $sql=mysql_query("SELECT * FROM cabecventas WHERE fecha BETWEEN
> > '$fecha1' AND '$fecha2'");
> > 
> > 
> > Y esta es la que devuelve 0, no entiendo porque no anda con esta.
> > Donde estaria el error? mas alla que a partir de ahora voy a usar la
> > estructura anterior.
> 
> Acá me pierdo... mysql_query() devuelve un handler a la respuesta, sin
> embargo tu asignación es "rara", porque típicamente la variable $sql
> tiene la query a ejecutar (en este caso el select), y el resultado de
> esto se suele cargar en una variable $res o $result... fijate la
> secuencia en el apunte, al final del de PHP Inicial.
> 
> Por otra parte, decís que devuelve 0, pero yo te pregunto: qué función
> devuelve cero?
> Para saber la cantidad de registros, deberías llamar a
> mysql_num_rows(), pero el parámetro de esta función es la salida de
> mysql_query(), y no la query en sí misma como ponías unos mails atrás.
> 
> Si el que devuelve 0 es mysql_num_rows() de la respuesta de
> mysql_query(), significaría que el SELECT no devuelve ningún resultado.
> Por esto te pedía que hagas un print() de la query generada y la copies
> y pegues en phpmyadmin, para ver qué da de resultado.
> 
> Por otra parte, la fecha debería estar en el formato del campo de la
> tabla. Hay 3 o 4 formatos de tipo fecha, y si no usás exactamente el
> mismo, la respuesta te dará vacío siempre, pero no dará error.
> 
> Enviá la porción de código que tenés ahora para verla completa y
> seguimos!
> 
> 
> Saludos!
> 
> > $sql=mysql_query("SELECT * FROM cabecventas WHERE fecha BETWEEN
> > ".$fecha1." AND ".$fecha2);
> > 
> > Muchas Gracias 
> > 
> > Leandro
> > 
> > > From: leonardot en pegasusnet.com.ar
> > > To: php-avanzado en pato2.fi.mdp.edu.ar
> > > Date: Wed, 21 Jul 2010 16:09:15 -0300
> > > Subject: Re: [Php-avanzado] Ventas entre dos fechas
> > > 
> > > Hola Leandro,
> > > 
> > > no sé como sabés que la query no da error... tu código no tiene
> > ningún
> > > control de errores!
> > > 
> > > Por ejemplo en este mail, la query no está bien formada porque le
> > > faltan las comillas envolviendo a las fechas, y sin esas comillas
> > MySQL
> > > dará un error.
> > 
> > 
> > > 
> > > Por otra parte, mysql_num_rows() lleva como parámetro el handler al
> > > recurso de la consulta, es decir, la salida de mysql_query(), y no
> > el
> > > string con la query...
> > > 
> > > Seguimos!
> > > 
> > > El mié, 21-07-2010 a las 19:01 +0000, Leandro Schereik escribió:
> > > > Hola Leo: 
> > > > La consulta no da error el tema es que hay ventas en ese rango de
> > > > fechas ingresadas pero mysql_num_rows($sql) imprime 0. 
> > > > 
> > > > include("conexion.php");
> > > > $fecha1="2010-7-07";
> > > > $fecha2="2010-7-31";
> > > > 
> > > > $sql=mysql_query("SELECT * FROM cabecventas WHERE fecha BETWEEN
> > > > $fecha1 AND $fecha2");
> > > > print("Cantidad: ".mysql_num_rows($sql));
> > > > 
> > > > 
> > > > 
> > > > 
> > > > 
> > > > Textos
> > > > completos
> > > > id
> > > > id_compr
> > > > nom_compr
> > > > ape_compr
> > > > tel_compr
> > > > fecha
> > > > 
> > > > Editar
> > > > Borrar
> > > > 3
> > > > 2
> > > > Leandro
> > > > Schereik
> > > > 4956698
> > > > 2010-07-05 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 4
> > > > 2
> > > > Leandro
> > > > Schereik
> > > > 4956698
> > > > 2010-07-05 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 5
> > > > 2
> > > > Leandro
> > > > Schereik
> > > > 4956698
> > > > 2010-07-05 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 6
> > > > 2
> > > > Leandro
> > > > Schereik
> > > > 4956698
> > > > 2010-07-05 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 7
> > > > 2
> > > > Leandro
> > > > Schereik
> > > > 4956698
> > > > 2010-07-05 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 8
> > > > 2
> > > > Leandro
> > > > Schereik
> > > > 4956698
> > > > 2010-07-05 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 9
> > > > 2
> > > > Leandro
> > > > Schereik
> > > > 4956698
> > > > 2010-07-08 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 10
> > > > 2
> > > > Leandro
> > > > Schereik
> > > > 4956698
> > > > 2010-07-08 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 15
> > > > 10
> > > > Lean
> > > > 
> > > > 
> > > > 2010-07-19 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 16
> > > > 10
> > > > Lean
> > > > 
> > > > 
> > > > 2010-07-19 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 17
> > > > 10
> > > > Lean
> > > > 
> > > > 
> > > > 2010-07-19 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 18
> > > > 10
> > > > Lean
> > > > 
> > > > 
> > > > 2010-07-19 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 19
> > > > 10
> > > > Lean
> > > > 
> > > > 
> > > > 2010-07-19 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 20
> > > > 10
> > > > Lean
> > > > 
> > > > 
> > > > 2010-07-19 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 21
> > > > 10
> > > > Lean
> > > > 
> > > > 
> > > > 2010-07-19 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 22
> > > > 10
> > > > Lean
> > > > 
> > > > 
> > > > 2010-07-19 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 23
> > > > 10
> > > > Lean
> > > > 
> > > > 
> > > > 2010-07-19 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 24
> > > > 11
> > > > pepe
> > > > 
> > > > 
> > > > 2010-07-19 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 25
> > > > 11
> > > > pepe
> > > > 
> > > > 
> > > > 2010-07-19 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 26
> > > > 11
> > > > pepe
> > > > 
> > > > 
> > > > 2010-07-19 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 27
> > > > 10
> > > > Lean
> > > > 
> > > > 
> > > > 2010-07-21 00:00:00
> > > > 
> > > > Editar
> > > > Borrar
> > > > 28
> > > > 11
> > > > pepe
> > > > 
> > > > 
> > > > 2010-07-21 00:00:00
> > > > 
> > > > Hola Leo: 
> > > > La consulta no da error el tema es que hay ventas en ese rango de
> > > > fechas ingresadas pero mysql_num_rows($sql) imprime 0. 
> > > > 
> > > > include("conexion.php");
> > > > $fecha1="2010-7-07";
> > > > $fecha2="2010-7-31";
> > > > 
> > > > $sql=mysql_query("SELECT * FROM cabecventas WHERE fecha BETWEEN
> > > > $fecha1 AND $fecha2");
> > > > print("Cantidad: ".mysql_num_rows($sql));
> > > > 
> > > > print($sql);
> > > > 
> > > > 
> > > > > From: leonardot en pegasusnet.com.ar
> > > > 
> > > > > To: php-avanzado en pato2.fi.mdp.edu.ar
> > > > > Date: Wed, 21 Jul 2010 15:43:18 -0300
> > > > > Subject: Re: [Php-avanzado] Ventas entre dos fechas
> > > > > 
> > > > > Hola Leandro,
> > > > > 
> > > > > hacé un print($sql), copiá y pegá la query generada en
> > phpmyadmin (o
> > > > en
> > > > > el cliente MySQL que uses) y fijate el error que da.
> > > > > 
> > > > > Este debuging es simple, pero si pusieran las querys en un IF
> > para
> > > > ver
> > > > > si dan falso y luego mostrasen la salida de mysql_error()
> > también se
> > > > lo
> > > > > ahorrarían...
> > > > > 
> > > > > El mié, 21-07-2010 a las 18:01 +0000, Leandro Schereik escribió:
> > > > > > Hola Lucas anteponiendo comillas simples la cunsulta queda
> > asi:
> > > > > > $sql=mysql_query("SELECT * FROM cabecventas WHERE fecha
> > BETWEEN
> > > > > > ".'$fecha1'." AND ".'$fecha2');
> > > > > > 
> > > > > > 
> > > > > > include("conexion.php");
> > > > > > $fecha1="2010-7-07";
> > > > > > $fecha2="2010-7-31";
> > > > > > $sql=mysql_query("SELECT * FROM cabecventas WHERE fecha
> > > > > > BETWEEN ".'$fecha1'." AND ".'$fecha2');
> > > > > > echo("Cantidad: ".mysql_num_rows($sql));
> > > > > > mysql_close();
> > > > > > 
> > > > > > 
> > > > > > Me tira:
> > > > > > 
> > > > > > Warning: mysql_num_rows(): supplied argument is not a valid
> > MySQL
> > > > > > result resource in C:\wamp\www\practicaphp\php_avanzado\tesis
> > > > \sitio
> > > > > > \21-07-2010\calen.php on line 61
> > > > > > 
> > > > > > Cantidad: 
> > > > > > 
> > > > > > Y con 
> > > > > > $sql="SELECT * FROM cabecventas WHERE fecha BETWEEN
> > '{$fecha1}'
> > > > AND
> > > > > > '{$fecha2}';"; 
> > > > > > el mismo warning.
> > > > > > 
> > > > > > Saludos
> > > > > > 
> > > > > > >Leandro, probá anteponiendo a las variables $fecha en la
> > query,
> > > > la
> > > > > > comilla simple, tanto para abrir como para cerrar. después
> > contá.
> > > > > > Lucas
> > > > > > 
> > > > > > 
> > > > > > 
> > > > > >
> > > >
> > ______________________________________________________________________
> > > > > > Porque tu vida necesita más espacio y comodidad. Muy pronto
> > > > descubrí
> > > > > > un nuevo Hotmail. Ver más
> > > > > > _______________________________________________
> > > > > > Php-avanzado mailing list
> > > > > > Php-avanzado en pato2.fi.mdp.edu.ar
> > > > > >
> > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> > > > > -- 
> > > > > 
> > > > > Leonardo Tadei
> > > > > leonardot en pegasusnet.com.ar
> > > > > http://blog.pegasusnet.com.ar
> > > > > Firma pública:
> > http://www.pegasusnet.com.ar/LeonardoTadei-public.key
> > > > > 
> > > > > _______________________________________________
> > > > > Php-avanzado mailing list
> > > > > Php-avanzado en pato2.fi.mdp.edu.ar
> > > > > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> > > > 2010-07-19 00:00:00 Editar Borrar 26 11 pepe 2010-07-19 00:00:00
> > > > Editar Borrar 27 10 Lean 2010-07-21 00:00:00 Editar Borrar 28 11
> > > > pepe 2010-07-21 00:00:00 
> > > > > To: php-avanzado en pato2.fi.mdp.edu.ar
> > > > > Date: Wed, 21 Jul 2010 15:43:18 -0300
> > > > > Subject: Re: [Php-avanzado] Ventas entre dos fechas
> > > > > 
> > > > > Hola Leandro,
> > > > > 
> > > > > hacé un print($sql), copiá y pegá la query generada en
> > phpmyadmin (o
> > > > en
> > > > > el cliente MySQL que uses) y fijate el error que da.
> > > > > 
> > > > > Este debuging es simple, pero si pusieran las querys en un IF
> > para
> > > > ver
> > > > > si dan falso y luego mostrasen la salida de mysql_error()
> > también se
> > > > lo
> > > > > ahorrarían...
> > > > > 
> > > > > El mié, 21-07-2010 a las 18:01 +0000, Leandro Schereik escribió:
> > > > > > Hola Lucas anteponiendo comillas simples la cunsulta queda
> > asi:
> > > > > > $sql=mysql_query("SELECT * FROM cabecventas WHERE fecha
> > BETWEEN
> > > > > > ".'$fecha1'." AND ".'$fecha2');
> > > > > > 
> > > > > > 
> > > > > > include("conexion.php");
> > > > > > $fecha1="2010-7-07";
> > > > > > $fecha2="2010-7-31";
> > > > > > $sql=mysql_query("SELECT * FROM cabecventas WHERE fecha
> > > > > > BETWEEN ".'$fecha1'." AND ".'$fecha2');
> > > > > > echo("Cantidad: ".mysql_num_rows($sql));
> > > > > > mysql_close();
> > > > > > 
> > > > > > 
> > > > > > Me tira:
> > > > > > 
> > > > > > Warning: mysql_num_rows(): supplied argument is not a valid
> > MySQL
> > > > > > result resource in C:\wamp\www\practicaphp\php_avanzado\tesis
> > > > \sitio
> > > > > > \21-07-2010\calen.php on line 61
> > > > > > 
> > > > > > Cantidad: 
> > > > > > 
> > > > > > Y con 
> > > > > > $sql="SELECT * FROM cabecventas WHERE fecha BETWEEN
> > '{$fecha1}'
> > > > AND
> > > > > > '{$fecha2}';"; 
> > > > > > el mismo warning.
> > > > > > 
> > > > > > Saludos
> > > > > > 
> > > > > > >Leandro, probá anteponiendo a las variables $fecha en la
> > query,
> > > > la
> > > > > > comilla simple, tanto para abrir como para cerrar. después
> > contá.
> > > > > > Lucas
> > > > > > 
> > > > > > 
> > > > > > 
> > > > > >
> > > >
> > ______________________________________________________________________
> > > > > > Porque tu vida necesita más espacio y comodidad. Muy pronto
> > > > descubrí
> > > > > > un nuevo Hotmail. Ver más
> > > > > > _______________________________________________
> > > > > > Php-avanzado mailing list
> > > > > > Php-avanzado en pato2.fi.mdp.edu.ar
> > > > > >
> > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> > > > > -- 
> > > > > 
> > > > > Leonardo Tadei
> > > > > leonardot en pegasusnet.com.ar
> > > > > http://blog.pegasusnet.com.ar
> > > > > Firma pública:
> > http://www.pegasusnet.com.ar/LeonardoTadei-public.key
> > > > > 
> > > > > _______________________________________________
> > > > > Php-avanzado mailing list
> > > > > Php-avanzado en pato2.fi.mdp.edu.ar
> > > > > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> > > > 
> > > > 
> > > >
> > ______________________________________________________________________
> > > > Descubrí un nuevo Hotmail: con más herramientas para una vida más
> > > > práctica. Muy pronto. Ver más
> > > > _______________________________________________
> > > > Php-avanzado mailing list
> > > > Php-avanzado en pato2.fi.mdp.edu.ar
> > > > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> > > -- 
> > > 
> > > 
> > > Leonardo Tadei
> > > leonardot en pegasusnet.com.ar
> > > Pegasus Tech Supply
> > > Tel: (+54)(+223) 471-2880
> > > La Salle 1131 - Mar del Plata - Argentina
> > > http://www.pegasusnet.com.ar / http://blog.pegasusnet.com.ar
> > > http://www.prometeustech.com.ar / http://www.grupopegasus.com
> > > Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
> > > 
> > > 
> > > _______________________________________________
> > > Php-avanzado mailing list
> > > Php-avanzado en pato2.fi.mdp.edu.ar
> > > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> > 
> > 
> > ______________________________________________________________________
> > Para que en tu casilla haya mucho más de lo que te importa. Descubrí
> > un nuevo Hotmail. Ver más
> > _______________________________________________
> > Php-avanzado mailing list
> > Php-avanzado en pato2.fi.mdp.edu.ar
> > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> -- 
> 
> Leonardo Tadei
> leonardot en pegasusnet.com.ar
> http://blog.pegasusnet.com.ar
> Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
> 
> _______________________________________________
> Php-avanzado mailing list
> Php-avanzado en pato2.fi.mdp.edu.ar
> http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
 		 	   		  
_________________________________________________________________
Pronto descubrirás un nuevo Hotmail. Nos estamos reinventando. Preparate para lo que se viene.
http://www.nuevohotmail.com
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://www3.fi.mdp.edu.ar/pipermail/php-avanzado/attachments/20100722/92bad485/attachment-0001.htm 


Más información sobre la lista de distribución Php-avanzado