Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Data
Forum PHP.pl > Forum > Przedszkole
-Krzysztof-
Hej. Mam zapisaną datę w formacie dd.mm.rrrr w bazie i chciałbym wyświetlić wszystkie wyniki które mieszczą się w tym samym tygodniu co to baza. Czyli załóżmy Poniedziałek to 01.02.2012, Niedziela to 07.02.2012. No a data w bazię jest 04.02.2012, No to chciałbym wyświetlić wszystkie wyniki które mają datę od poniedziałku do piątku.

Z góry dzięki za pomoc, starałem się to wytłumaczyć jak najlepiej.
ActivePlayer
to Ci jest potrzebne: http://dev.mysql.com/doc/refman/5.5/en/dat...-functions.html
-Krzysztof-
Przejrzałem to, ale nie wiem jak tego użyć. Nie jestem na tyle zaawansowany, a dużo rozumiem z przykładów. Mógłby ktoś coś zarzucić? Dziękuje.
Krzyszt0f
Wie ktoś coś?
Zosiek
Jeżeli znasz daty początku i końca tygodnia to:
- Zmieniasz sobie daty na czas unixowy i wyświetlasz wszystkie, które mieszczą się w tym przedziale tygodnia
Jeżeli nie znasz daty początku i końca tygodnia to:
za pomocą http://dev.mysql.com/doc/refman/5.5/en/dat...ction_dayofweek pobierasz sobie który to jest dzień tygodnia i sprawdzasz czy w następnych datach (do góry i w dół) zwracana wartość funkcji dayofaweek mieści się w przedziale 1-7

To drugie chyba będzie najlepsze, szybko sprawdzi i będzie dla każdego tygodnia.
Funkcja dayoftheweek zwraca 1-niedziela, 7-sobota.
-Krzysztof-
Wielkie dzięki, nawet mam pomysł jak to ma działać. smile.gif
Tylko nie wiem jak do zmiennej przypisać to dayofweek. Trzeba zrobić zapytanie, czy co?
-krzysztof-
  1. $data[$i]=$dzien-($dzien_tyg-$i)'.'$miesiac'.'$rok;



Czemu mi nie działa takie coś? Chcę zrobić string który pomieści te zmienne, oddzielone kropkami.
-krzysztof-
  1. $data[$i]=$dzien-($dzien_tyg-$i). "." $miesiac. "." $rok;


Tak mi też nie działa. :x
nospor
operatora łączenia używa się po obu stronach a nie po jednej.
-krzysztof-
  1. $data[$i]=.$dzien-($dzien_tyg-$i). "." .$miesiac. "." $rok;


Dalej nic.
nospor
Bo dalej nie dałeś wszędzie operatora łączenia.
-krzysztof-
Okej, już zrozumiałem jak to działa. Ale mam problem.

  1. $data[1]=$dzien . '.' . $miesiac . '.' . $rok
  2. echo $data["1"]
;

Gdy robie takie coś, to w elemncie nie ma całego stringu, tylko jego początek. Czyli jak jest 02.02.2012. to jest samo 0.
nospor
Powinny byc jeszcze przynajmniej dwie kropki oprócz zera, więc coś kręcisz wink.gif
-krzysztof-
  1. $data[0]=$dzien . '.' . $miesiac . '.' . $rok;
  2. echo $data[0];



Nie kręcę. biggrin.gif. To mi zapisuje tylko 1 znak, zamiast ciągu. Jakie kropki, gdzie?
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.