Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Ilość rekordów z tego miesiąca
Forum PHP.pl > Forum > Przedszkole
Michcio_
Witam,
Jak skutecznie można pobrać ilość rekordów z tego miesiąca? W tabeli "users" mam kolumnę "data" gdzie pokazuje datę: Y-m-d

Aktualnie robię to tak:
  1. $wynik=mysql_query("select * from users");
  2. while($rekord=mysql_fetch_array($wynik)){
  3. $data = date("Y-m");
  4. $d="".strtotime($rekord["data"])."";
  5. $nowa_data = date("Y-m", $d);
  6. if ($data==$nowa_data)
  7. {
  8. if (empty($miesiac))
  9. {
  10. $miesiac="1";
  11. }
  12. else
  13. {
  14. $miesiac=$miesiac+1;
  15. }
  16. }
  17. }

Ale jak będzie dużo użytkowników to długo strona będzie się ładować więc raczej to odpada.
abort
Jeśli chodzi o listę, zainteresuj się ograniczeniem wyniku przez LIKE.
Ale jeśli interesuje Cię tylko ilość, to dołóż jeszcze COUNT.
Michcio_
Wyświetla ilość, tylko chodzi mi o to jak to uprościć, bo aktualnie sprawdza po kolei każdy rekord i sprawdza czy on jest z tego miesiąca i jeśli tak to dopisuje do zmiennej +1, lecz jak będzie tysiąc użytkowników to strona będzie za długo się wtedy ładować jak będzie pojedyńczo sprawdzać każdy rekord.
abort
Spraqwdzanie każdego rekordu (jak również liczenie) zrzuć na SQL. Naprawdę lubisz pisać zbędny kod?
Powtarzam: LIKE i COUNT zastosuj w zapytaniu SQL.

poczytaj manual do SQL, warto. Ode mnie tyle.

P.S.
Nie daję ryby - ja daję wędkę. I czasami przynętę. Wyżej masz obie rzeczy.
Michcio_
Ok, teraz rozumiem. Rozwiązałem.
  1. SELECT count(*) FROM users WHERE data LIKE "2011-10%"

Dzięki. Temat do zamknięcia.
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.