Я пишу систему, которая будет показывать данные за выбранный месяц. Пользователь может выбрать месяц, который он хочет просмотреть, затем он создает URL-адрес примерно так .com / page.php? Month = 03 страница, как вы можете догадаться, примет идею и затем использует ее для получения данных из базы данных. с этого месяца.
Теперь, исходя из месяца в URL-адресе, который я создаю для переменной, $ startdate $ enddate, дата начала, основанная на этом примере, равна 2011-03-01, затем я добавляю 29 или 30 к части дней, в зависимости от того, месяц имеет 31 или 30 дней. Итак, я делаю даты как это:
$startdate = mktime(0,0,0,date("$month"),date("01"),date("2011"));
if( $month==04 || $month==06 || $month==9 || $month==11)
{
$enddate = mktime(0,0,0,date("$month"),date("01")+29,date("2011"));
}
else
{
$enddate = mktime(0,0,0,date("$month"),date("01")+30,date("2011"));
}
Теперь, когда я пытаюсь получить данные из базы данных с этими переменными, они, кажется, не работают, это запрос:
$getresults = mysql_query("SELECT * FROM table1 WHERE date BETWEEN $startdate AND $enddate ORDER BY date ASC");
Дело в том, что если я заменю переменные на жестко запрограммированные даты, то их работы станут удовольствием ... У кого-нибудь есть идеи? я думал, что это как-то связано с форматированием дня? в моей базе данных его "Y-м-д", а также то же самое в php.
спасибо за любую помощь людям, которых я действительно застрял на этом.