Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Ilość rekordów z tego miesiąca
Michcio_
post 30.10.2011, 21:14:20
Post #1





Grupa: Zarejestrowani
Postów: 62
Pomógł: 3
Dołączył: 30.07.2008

Ostrzeżenie: (0%)
-----


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.
Go to the top of the page
+Quote Post
abort
post 30.10.2011, 21:22:18
Post #2





Grupa: Zarejestrowani
Postów: 590
Pomógł: 107
Dołączył: 25.10.2011

Ostrzeżenie: (0%)
-----


Jeśli chodzi o listę, zainteresuj się ograniczeniem wyniku przez LIKE.
Ale jeśli interesuje Cię tylko ilość, to dołóż jeszcze COUNT.
Go to the top of the page
+Quote Post
Michcio_
post 30.10.2011, 21:47:46
Post #3





Grupa: Zarejestrowani
Postów: 62
Pomógł: 3
Dołączył: 30.07.2008

Ostrzeżenie: (0%)
-----


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.
Go to the top of the page
+Quote Post
abort
post 30.10.2011, 21:54:29
Post #4





Grupa: Zarejestrowani
Postów: 590
Pomógł: 107
Dołączył: 25.10.2011

Ostrzeżenie: (0%)
-----


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.
Go to the top of the page
+Quote Post
Michcio_
post 31.10.2011, 08:10:53
Post #5





Grupa: Zarejestrowani
Postów: 62
Pomógł: 3
Dołączył: 30.07.2008

Ostrzeżenie: (0%)
-----


Ok, teraz rozumiem. Rozwiązałem.
  1. SELECT count(*) FROM users WHERE data LIKE "2011-10%"

Dzięki. Temat do zamknięcia.

Ten post edytował Michcio_ 31.10.2011, 08:12:26
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 08:03