Ver Mensaje Individual
  #2 (permalink)  
Antiguo 17/03/2017, 02:27
markus18
 
Fecha de Ingreso: noviembre-2010
Mensajes: 4
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: Contultar entre fechas para mysql

Te recomiendo poner esta consulta en el subforo de MySQL.

Sin ver todo el código lo primero que tengo que decirte es que creo que tienes un gran problema de seguridad, en la forma como metes las variables a la consulta, te pueden hacer una inyección SQL, repito que no lo se seguro, ya que al no ver más código no te puedo decir.

Conforme a tu consulta:

¿La variable $Fecha_Inicial y $Fecha_Final, has comprobado si su valor es el esperado?
¿Los campos de la base de datos, son tipo fecha?

El único problema que veo es que te faltan dos paréntesis en la consulta, aunque no te se decir si son necesarios, ya que cada version de MySQL es un mundo, no obstante yo, personalmente los hubiera puesto, para englobar las dos consultas BETWEEN y asegurarte que se cumplan las dos condiciones a la vez. No se si esto resolverá tus problemas.

SELECT `id` FROM `hab` WHERE `id` NOT IN
(SELECT `id_hab` FROM `reservas` WHERE `estado` ='reservado' AND ( ('$Fecha_Inicial' BETWEEN `fec_ini` AND `fec_fin`) AND ( '$Fecha_Final' BETWEEN `fec_ini` AND `fec_fin`) ) )

Un salud, espero que te sirva

Última edición por markus18; 17/03/2017 a las 02:42