Foros del Web » Programando para Internet » PHP »

Ayuda con registro de fechas

Estas en el tema de Ayuda con registro de fechas en el foro de PHP en Foros del Web. Hola amigos del foro, lo que quiero hacer es lo siguiente: Estoy trabajando con php y mysql, tengo un registro para docentes en el cual ...
  #1 (permalink)  
Antiguo 08/08/2009, 07:28
Avatar de javierito10  
Fecha de Ingreso: julio-2008
Ubicación: Potosí - Bolivia
Mensajes: 135
Antigüedad: 15 años, 9 meses
Puntos: 1
Exclamación Ayuda con registro de fechas

Hola amigos del foro, lo que quiero hacer es lo siguiente:
Estoy trabajando con php y mysql, tengo un registro para docentes en el cual registran la hora de su llegada, salida, horario, fecha, carrera, y otros. Los docentes van registrando cada día sus asistencias durante todos los meses pero el problema esta que me pidieron que cuando genere el reporte de asistencias para calcularles las horas trabajadas de cada docente no lo genere de esta manera por ejemplo 1 de julio hasta 31 de julio o 1 de agosto hasta 31 de agosto, sino de esta manera desde 5 de julio hasta el 4 de agosto o desde el 5 de agosto hasta el 4 septiembre y asi sucesivamente.
Entonces como puedo hacer la consulta para filtrar estos datos? por ejemplo:

que me muestre todos lo registros desde el 5 de julio hasta el 4 de agosto.
  #2 (permalink)  
Antiguo 08/08/2009, 07:36
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Ayuda con registro de fechas

En el query puedes usar lo que se conoce como BETWEEN, claro estoy entendiendo que tienes las columnas creadas como DATE por lo tanto seria algo asi
Código PHP:
Ver original
  1. $s = "SELECT * FROM tabla WHERE date BETWEEN '2009-07-05' AND '2009-08-04'";
  2. $r = mysql_query($s) or die(mysql_error());
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 08/08/2009, 07:53
Avatar de javierito10  
Fecha de Ingreso: julio-2008
Ubicación: Potosí - Bolivia
Mensajes: 135
Antigüedad: 15 años, 9 meses
Puntos: 1
Respuesta: Ayuda con registro de fechas

Gracias por tu respuesta abimaelrc pero la columna fecha la puse como varchar esto influira?
  #4 (permalink)  
Antiguo 08/08/2009, 08:11
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Ayuda con registro de fechas

Eso es correcto tienes que convertilo a fecha para que puedas hacer los query pertinentes
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 08/08/2009, 08:27
Avatar de javierito10  
Fecha de Ingreso: julio-2008
Ubicación: Potosí - Bolivia
Mensajes: 135
Antigüedad: 15 años, 9 meses
Puntos: 1
Respuesta: Ayuda con registro de fechas

Y no habria la forma de solucionarlo asi con varchar??
  #6 (permalink)  
Antiguo 08/08/2009, 08:56
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Ayuda con registro de fechas

¿Como tienes declarado las fechas con el varchar? escribe ejemplos. Pero en un futuro cuando vayas a trabajar con fechas publicas los campos como fecha, te ahorran codigo y tiempo en las busquedas creandolos conforme a lo que vas a publicar en ellos.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #7 (permalink)  
Antiguo 08/08/2009, 10:34
Avatar de javierito10  
Fecha de Ingreso: julio-2008
Ubicación: Potosí - Bolivia
Mensajes: 135
Antigüedad: 15 años, 9 meses
Puntos: 1
Respuesta: Ayuda con registro de fechas

Bueno como tengo el campo fecha como varchar, las fechas se almacenan en este formato 05-08-2009 entonces desde un form yo ingreso el ci y el rango de la fecha para la consulta por ejemplo:

ci= 1234567
fechai= 5-07-2009
fechaf= 4-08-2009

Estos datos los recibo con post y como seria mi consulta para que me muestre todos los registros de la tabla control donde el campo ci sea igual a $ci y fecha >= $fechai y fecha <= $fechaf
  #8 (permalink)  
Antiguo 08/08/2009, 11:04
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Ayuda con registro de fechas

Tienes un grave problema. Primero la fecha esta invertida esto ocasiona que cuando vayamos a buscar no podemos en la consulta verificar de esta forma

fecha >= $fechai y fecha <= $fechaf

La razon es porque va a buscar todas las fecha que son menores al primer caracter y asi continua con el siguiente caracter etc etc. ¿De casualidad no tienes forma de cambiarlo a formato date y modificar que cuando se almacene la informacion se almacene 2009-07-05 (YYYY-MM-DD)? Es que sino tenemos que crear un codigo, que puede ser largo y no es pertinente consumir recursos innecesarios
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
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 09:21.