Редактировать : Изменено их использование меток времени UNIX ...
Нет необходимости в strtotime()
для запроса по месяцу и году.Вместо этого вы можете просто сделать:
SELECT *
FROM blogtbl
WHERE
YEAR(FROM_UNIXTIME(postdate)) = 2012
AND UPPER(MONTHNAME(FROM_UNIXTIME(postdate))) = 'FEBRUARY'
Это также можно сделать с помощью DATE_FORMAT()
SELECT *
FROM blogtbl
WHERE
UPPER(DATE_FORMAT(FROM_UNIXTIME(postdate), '%M %Y')) = 'FEBRUARY 2012'
Примечание Я использую UPPER()
для преобразования запроса вв верхнем регистре, просто для упрощения передачи переменных PHP с непредсказуемым регистром.
Мы предполагаем, что вы уже знаете, как извлечь месяц и год из строки запроса в PHP через $_GET['Month'], $_GET['Year']
и правильно экранировать их для вставкив ваш запрос.