Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL]pobranie rekordów z obecnego miesiąca
Forum PHP.pl > Forum > Przedszkole
jacke
Mam takie cudo które ma za zadanie wyciągać rekordy z bazy, ale tylko z obecnego miesiąca
  1. $query = "SELECT *, DATE_FORMAT(data, '%d-%m-%Y') as data FROM lista_wysylek WHERE active = 'tak' OR active = '$act1' AND YEAR(data) = YEAR(CURDATE()) AND MONTH(data) = MONTH(CURDATE()) ORDER BY active DESC, data DESC";
  2.  


Datę w bazie trzymam jako "DATE", zmieniam format tylko po to żeby mi się bardziej podobało. Problem jest jednak taki, że uparcie mi wyciąga daty z wcześniejszych miesięcy. Co ciekawe, wyżej w kodzie mam takie zapytanie:

  1. $query = "SELECT COUNT(rodzaj_przesylki) as rodzaj_przesylki FROM lista_wysylek WHERE active = 'tak' AND rodzaj_przesylki = '$row[ID]' AND YEAR(data) = YEAR(CURDATE()) AND MONTH(data) = MONTH(CURDATE())";
  2.  


które działa tak jak powinno, czyli nie liczy mi rekordów z wcześniejszych miesięcy. WTF? : )
Crozin
Pierwsze zapytanie jest traktowane jako:
  1. ...(active = 'tak') OR (active='act1' AND YEAR(...) = ... AND MONTH(...) = ...)...
Już chyba widzisz w czym problem.
jacke
  1. $query = "SELECT *, DATE_FORMAT(data, '%d-%m-%Y') as data FROM lista_wysylek WHERE (active = 'tak' OR active = '$act1') AND YEAR(data) = YEAR(CURDATE()) AND MONTH(data) = MONTH(CURDATE()) ORDER BY active DESC, data DESC";


Takie proste, a zarazem tak odległe w mojej głowie było ; )
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.