Foros del Web » Programando para Internet » PHP »

Mostrar registros de la base de datos por rango de fechas

Estas en el tema de Mostrar registros de la base de datos por rango de fechas en el foro de PHP en Foros del Web. Hola maestros, la verdad de las cosas es que he estado pensando bastante y aun no se me ocurre como hacer esto. Lo que quiero ...
  #1 (permalink)  
Antiguo 08/02/2008, 10:47
Avatar de El_Metallick  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago, Chile
Mensajes: 1.718
Antigüedad: 21 años, 5 meses
Puntos: 16
Mostrar registros de la base de datos por rango de fechas

Hola maestros, la verdad de las cosas es que he estado pensando bastante y aun no se me ocurre como hacer esto. Lo que quiero hacer es mostrar los eventos ingresados en una determinada semana en mi calendario, por ejemplo hoy es 08/02/2008 entonces quiero mostrar los eventos que comprenden entre el 04/02/2008 y el 10/02/2008 que corresponde a la semana en la que estamos, pero si hoy fuera 27/02/2008 tendría que mostrar los eventos comprendidos entre el 25/02/2008 y el 02/03/2008 y asi validar tambien los cambios de año y todo.

Bueno eso les agradeceria mucho cualquier tipo de ayuda

Saludos
__________________
Haz la guerra en la cama y el amor donde se te de la gana...
El tiempo es el mejor maestro, lo único malo es que te mata...¡¡Aprovecha tu tiempo!!
  #2 (permalink)  
Antiguo 08/02/2008, 12:42
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
Re: Mostrar registros de la base de datos por rango de fechas

Disculpa que no te responda con más ganas, pero no puedo en este momento...

Averigua de las siguientes funciones

PHP

time() y date()

Con time() obtienes los datos de la fecha actual, con date() puedes formatear esos datos y compararlos con los de la BD...

y en la consulta a la BD, utiliza el comando BETWEN...

http://sql.1keydata.com/es/sql-between.php

Nos vemos, ojalá se te ocurra como hacerlo xD
  #3 (permalink)  
Antiguo 08/02/2008, 14:03
Avatar de Sergestux  
Fecha de Ingreso: agosto-2007
Ubicación: Tapachula
Mensajes: 1.218
Antigüedad: 16 años, 8 meses
Puntos: 20
Re: Mostrar registros de la base de datos por rango de fechas

Código PHP:
    function Fechas($Fecha)
    {
        
$Bandera=true;
        
$Fecha1=$Fecha;
        
$Fecha2=$Fecha;
        do
        {
            if (
date("w"strtotime($Fecha1))>1)    //Si no es el principio de la semana
                
$Fecha1=date("Y-m-d"strtotime('-1 Day' strtotime($Fecha1) ));    //Le restamos un dia
            
elseif (date("w"strtotime($Fecha2))<6)    //Si no es el fin de la semana
                
$Fecha2=date("Y-m-d"strtotime('+1 Day' strtotime($Fecha2) ));    //Le restamos un dia
            
else
                
$Bandera=false;
        }
        while(
$Bandera);
        
$Fecha2=date("Y-m-d"strtotime('+1 Day' strtotime($Fecha2) ));    //Le agregamos un dia mas (no se por que)

        
$Fechas[1]=$Fecha1;
        
$Fechas[2]=$Fecha2;
        return 
$Fechas;
    }

    
$Hoy=date('Y-m-d');
    
$Fechas=Fechas($Hoy);
    
$Fecha1=$Fechas[1];
    
$Fecha2=$Fechas[2];
    echo 
"$Fecha1 y  $Fecha2"

Última edición por Sergestux; 08/02/2008 a las 14:23
  #4 (permalink)  
Antiguo 08/02/2008, 15:17
Avatar de El_Metallick  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago, Chile
Mensajes: 1.718
Antigüedad: 21 años, 5 meses
Puntos: 16
Re: Mostrar registros de la base de datos por rango de fechas

Gracias por sus respuestas he podido solucionar el problema

Saludos
__________________
Haz la guerra en la cama y el amor donde se te de la gana...
El tiempo es el mejor maestro, lo único malo es que te mata...¡¡Aprovecha tu tiempo!!
  #5 (permalink)  
Antiguo 18/02/2008, 11:30
Avatar de destor77  
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 19 años, 5 meses
Puntos: 43
Re: Mostrar registros de la base de datos por rango de fechas

como lo solucionaste, ponelo puede ayudar a muchos mas ;)
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 23:48.