PHP - problemas between rango de fechas

   
Vista:

problemas between rango de fechas

Publicado por luis enrique luisenriquegiraldo@gmail.com (2 intervenciones) el 06/05/2012 02:58:32
Hola amigos
estoy creando una agenda médica y tengo problemas al insertar los datos en la tabla.
la agenda me permite seleccionar los dias de la semana que quiero, ingresarle una fecha inicial y una fecha final, ademas manejo un campo intervalo para definir cuanto tiempo quiero que duren las citas, donde pueden ser cada 15, 20, 10 minutos, etc.

los campos de mi tabla son
fecha y ffinal de tipo datetime

mis variables son
$datot y $df1 respectivamente

Ejemplo:
2012-04-27 10:00:00
2012-04-27 10:20:00

los datos se insertan bien cuando agrego datos despues de las 2012-04-27 10:20:00, pero si quiero crear un calendario que vaya desde las
2012-04-27 09:00:00 hasta las 2012-04-27 10:00:00, no me lo deja insertar, me toca hacerlo hasta las 2012-04-27 09:59:00, por que la instrucción me causa problemas con 2012-04-27 10:00:00


este es el código que tengo
$sql = "SELECT count(*) as cuantos FROM calendario WHERE
'$datot' BETWEEN ffinal AND fecha OR '$df1' BETWEEN fecha AND ffinal";

AGRADEZCO MUCHO la ayuda que me puedan brindar.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

problemas between rango de fechas

Publicado por xve (5516 intervenciones) el 06/05/2012 10:24:12
Hola Luis, no entiendo muy bien que quieres llegar a hacer, pero me parece que la consulta SQL esta mal...
para utilizar el comando between, creo que tienes que hacerlo así:
campoBaseDatos BETWEEN fecha1 AND fecha2

Para tu consulta, si lo he entendido bien, creo que deberia ser...
1
2
$sql = "SELECT count(*) as cuantos FROM calendario WHERE
ffinal BETWEEN '".$datot."' AND '".$df1."'";

Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

problemas between rango de fechas

Publicado por luis enrique giraldo luisenriquegiraldo@gmail.com (2 intervenciones) el 07/05/2012 05:28:23
gracias por responder

lo que quiero es consultar en la BD si los datos que quiero insertar existen, si no existen me los deje insertar.

es por eso que consulto de mi tabla los campos fecha y ffinal que corresponde a la hora de inicio de la cita médica y la hora de terminación.

el inconveniente es cuando ya existen citas asignadas y quiero insertar citas antes de horario existente.

ejemplo

2012-04-27 10:00:00 ESTA ES EL CAMPO FECHA INCIAL DE MI TABLA
2012-04-27 10:20:00 ESTA ES EL CAMPO FECHA FINAL DE MI TABLA

para este caso tengo una cita médica que va desde las 10:00 hasta las 10:20, si quiero asignar citas despues de ese horario no tengo problemas ya que puedo decirle que la nueva cita sea de
2012-04-27 10:20:00 hasta 2012-04-27 10:40:00. ó
2012-04-27 10:20:00 hasta 2012-04-27 12:00:00 con intervalos de 20 minutos

EL PROBLEMA surge cuando le digo que me cree una agenda que va desde
2012-04-27 09:00 hasta 2012-04-27 10:00:00., en intervalos de 20 minutos.

El código sólo me inserta
2012-04-27 09:00 hasta 2012-04-27 09:20:00
2012-04-27 09:20 hasta 2012-04-27 09:40:00

el horario 2012-04-27 09:40 hasta 2012-04-27 10:00:00 no me lo inserta ya que me causa problema esta hora, es decir tengo problemas con la fecha final que vendria siendo la hora inicial del calendario o cita médica que ya tenia creada en el ejemplo o sea las 2012-04-27 10:00:00

espero haberme explicado bien, para que asi me puedas ayudar

DE ANTEMANO MUCHAS GRACIAS
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar