Espero que esto te ayude.
*** Elementos para la prueba ***
Código SQL:
Ver original-- Base de datos: `test`
CREATE TABLE IF NOT EXISTS `eventos` (
`id` INT( 11 ) NOT NULL AUTO_INCREMENT ,
`fecha_inicio` DATE DEFAULT NULL ,
`fecha_fin` DATE DEFAULT NULL ,
`evento` VARCHAR( 20 ) COLLATE utf8_spanish_ci DEFAULT NULL ,
PRIMARY KEY ( `id` )
) ENGINE = InnoDB DEFAULT CHARSET = utf8 COLLATE = utf8_spanish_ci AUTO_INCREMENT =1
INSERT INTO `test`.`eventos` (`id`, `fecha_inicio`, `fecha_fin`, `evento`) VALUES ('1', '2013-08-05', '2013-08-23', 'evento 1');
*** Se selecciona una fecha ***
Código PHP:
Ver original$fechas['fecha_selec'] = '2013-08-20';
*** ¿hay eventos en esa fecha? ***
2013-08-05 ¿está dentro del rango inicio/fin de los eventos?
Código PHP:
Ver original$sql = "SELECT * FROM eventos
WHERE
'".$fechas['fecha_selec']."'
BETWEEN
fecha_inicio
AND
fecha_fin;";
* Rdo con: '2013-08-20'
Código PHP:
Ver original["id"]=> string(1) "1"
["fecha_inicio"]=> string(10) "2013-08-05"
["fecha_fin"]=> string(10) "2013-08-23"
["evento"]=> string(8) "evento 1"
}
* Rdo con fechas: '2013-08-04' y '2013-08-24'