Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Jak pobrać dane z bazy z aktualnego tygodnia.
szczabik
post
Post #1





Grupa: Zarejestrowani
Postów: 226
Pomógł: 1
Dołączył: 13.05.2008

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


Mam w bazie danych pole z datą które jest w formacie unixowy i teraz chce pobrać rekordy tylko z aktualnego tygodnia.

Jak chcę pobrać z aktualnego dnia to robie tak

  1. <?php
  2. $rok = date('Y');
  3. $miech = date('n');
  4. $dzien = date('j');
  5. $time = gmmktime(0, 0, 0, $miech, $dzien, $rok);
  6. ?>

I potem daje tylko w zapytaniu w warunku takie coś
  1. WHERE DATA >'$time'"


I teraz moje pytanie jak zrobić by pobrać rekordy z aktualnego tygodnia ?

Ten post edytował szczabik 1.10.2008, 20:18:55
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
WojtasSP320
post
Post #2





Grupa: Zarejestrowani
Postów: 87
Pomógł: 13
Dołączył: 13.08.2008
Skąd: Chełmno

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


Tak samo, tylko zamiast dawać dzień dzisiejszy daj datę poniedziałku (np. do $pn) i zrób tak samo jak wyżej.

Kod na datę poniedziałku:
  1. <?php
  2. $wday = date('N');
  3. $rok = date('Y');
  4. $miech = date('n');
  5. $dzien = date('j');
  6. $time = gmmktime(0, 0, 0, $miech, ($dzien-(--$wday)), $rok);
  7. ?>


Musisz jeszcze tylko obsłużyć błędy typu: jeśli poniedziałek wypadał w poprzednim miesiącu lub roku.

Ten post edytował WojtasSP320 1.10.2008, 20:56:03
Go to the top of the page
+Quote Post
szczabik
post
Post #3





Grupa: Zarejestrowani
Postów: 226
Pomógł: 1
Dołączył: 13.05.2008

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


Nie działa wychodzi zawyżona wartość

Wychodzi że więcej w ciągu tygodnia niż w ciągu miesiąc bo z miesiąca to pobieram dane tak i wychodzi 1 a jak tym kodem pobieram z tygodnia wychodzi mi 3 rekordy
  1. <?php
  2. $rok = date('Y');
  3. $miech = date('n');
  4. $dzien = date('j');
  5. $miech1 = gmmktime(0, 0, 0, $miech, 1, $rok);
  6. ?>
Go to the top of the page
+Quote Post
tomm
post
Post #4





Grupa: Zarejestrowani
Postów: 142
Pomógł: 28
Dołączył: 7.04.2008

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


$obecny_tydzien = date('W');

$q = 'SELECT pole FROM tabela WHERE WEEK(FROM_UNIXTIME(nazwa_pola_ze_znacznikiem_czasu)) = '.$obecny_tydzien;

Ten post edytował tomm 2.10.2008, 10:45:59
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 6.10.2025 - 09:24