Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] Wiek i data urodzenia w MySQL
Forum PHP.pl > Forum > Przedszkole
Zaszczyk
W bazie danych mam tablelę users i kolumne data w której zapisana jest data urodzenia w formacie date(YYYY-MM-DD) do tego stworzoną mam wyszukiwarkę która wyszukuje według kilkunastu różnych parametrów w tym według wieku podawanego jako liczba lat. I tutaj rodzi się mój problem, bowiem skoro przekazuję do skryptu tylko wiek według którego szukam jakiejś osoby np. 19-30 lat, to jak to teraz porównać z tym co mam w bazie? Szukałem w google i w manualu, ale nie potrafię złożyć sensownego zapytania które by działało.

Dzięki za pomoc
gitbejbe
skoro masz podany wiek użytkownika, to możesz obliczyć w którym roku się urodził - odejmując od obecnej daty wiek użytkownika. Wynik wstawiasz do w warunku zapytania i włala : )

  1. $wiek_uzytkownika = 35; //np 35 lat
  2. $data = date("Y-m-d", strtotime ("-'.$wiek_uzytkownika.' year"));
  3. echo''.$data;


sprawdź czy działa. Dawno nie bawiłem się strtotime ;p W każdym razie trzeba iść w tym kierunku : ) Powodzenia !
Zaszczyk
Sam kod działa, wielkie dzięki za pomoc wink.gif ale coś nie działa mi warunek MySQL. Mam np takie zapytanie

  1. SELECT * FROM `users` WHERE DATA >=1995 -01 -13


i pokazuje mi rekordy które jako data mają i 1998-xx-xx i 1976-xx-xx, w czym tkwi problem?
mmmmmmm
Aby wybrać 35-latków z bazy:
  1. SELECT * FROM `users` WHERE `data_urodzenia` BETWEEN DATE_SUB(now(), INTERVAL 36 YEARS) AND DATE_SUB(now(), INTERVAL 35 YEARS)
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.