Проверьте, совпадает ли текущая дата между двумя датами + mysql select query

У меня есть следующая таблица:

id dateStart dateEnd active 1 2012-11-12 2012-12-31 0 2 2012-11-12 2012-12-31 0 

Я хочу сравнить сегодняшнюю дату между dateStart и dateEnd.

Ниже приведен мой запрос:

 $todaysDate="2012-26-11"; $db = Zend_Registry::get("db"); $result = $db->fetchAll("SELECT * FROM `table` WHERE active=0 AND {$todaysDate} between dateStart and dateEnd"); return $result; 

Но это не работает. Любое решение. Заранее спасибо.

Попробуйте это: это решит вашу проблему

 SELECT * FROM `table` WHERE active=0 AND CURDATE() between dateStart and dateEnd 

По умолчанию MySQL использует YYYY-MM-DD:

 $todaysDate="2012-26-11"; 

должно быть:

 $todaysDate="2012-11-26"; 

И вам нужны одинарные кавычки вокруг него в запросе.

 $todaysDate="2012-11-26";//changed date $db = Zend_Registry::get("db"); $select=$db->query("SELECT * FROM `table` WHERE active=0 AND {$todaysDate} between dateStart and dateEnd"); $result = $select->fetchAll(); return $result; 
 $sql = mysql_query("SELECT * FROM register WHERE CURDATE() between reg_start_date and reg_end_date") or die(mysql_error()); 

Вам нужно было поместить одинарные кавычки вокруг измененной даты:

 "SELECT * FROM `table` WHERE active=0 AND '{$todaysDate}' between dateStart and dateEnd"