Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> wiek osoby na podstawie PESEL, jak obliczyć?
ktuvok
post
Post #1





Grupa: Zarejestrowani
Postów: 243
Pomógł: 0
Dołączył: 30.11.2003

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


Wydawałoby się proste - pobrać z PESEL'u datę urodzenia, przeliczyć na znacznik czasu Unixa, odjąć go od mktime() i przeliczyć na lata... Niestety - znaczniki czasu Unixa obejmują zakres dat od 1970 r.

Jak zatem policzyć wiek osoby na podstawie PESEL'a?

Pozdrawiam,
K
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 10)
plewa
post
Post #2





Grupa: Zarejestrowani
Postów: 66
Pomógł: 0
Dołączył: 16.01.2005

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


ja mam taki pesel bo sie uroszilem 6 grudnia 1990

90 12 06 cos tam dalej

wic pobierasz perwsze dwa znaki to rok i dodajesz np 1990
12 to miesiac

06 t odzien

tylko jak ktos ma pesel np 02 12 06 tak jak ja to moze sie urodzic albo w 1802 albo 1902 albo 2002.
Mialem program kiedy ktory z dalszej czesci peselu obliczal lata. pokombinuj smile.gif powodzenia smile.gif)


--------------------
W razie problemów zapoznaj się z treścią manuala dołączonego do internetu bądź skonsultuj się z programistą lub jego asystentem.
Go to the top of the page
+Quote Post
crash
post
Post #3





Grupa: Przyjaciele php.pl
Postów: 2 196
Pomógł: 2
Dołączył: 17.01.2004
Skąd: Sosnowiec

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


A po prostu tak?:
  1. <?php
  2. $pesel = 85062711111;
  3.  
  4. echo (date('Y') - (1900 + substr($pesel, 0, 2)));
  5. ?>


--------------------
Go to the top of the page
+Quote Post
ktuvok
post
Post #4





Grupa: Zarejestrowani
Postów: 243
Pomógł: 0
Dołączył: 30.11.2003

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


Tak można, ale to ogranicza algorytm do osób urodzonych przed 2000 rokiem.

sad.gif

Pozdrawiam,
K
Go to the top of the page
+Quote Post
dr_bonzo
post
Post #5





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


Pear ma chyba taki modul do obslugi dlugich timestampow -- poszukaj.


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
SongoQ
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


Po roku 2000 do miesiaca dodaje sie 20.


--------------------
Go to the top of the page
+Quote Post
xberus
post
Post #7





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 6.08.2003

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


Cytat(plewa @ 2005-04-18 22:52:48)
tylko jak ktos ma pesel np 02 12 06 tak jak ja to moze sie urodzic albo w 1802 albo 1902 albo 2002.

Nieprawda... sposob zapisu zmienia sie przy takich datach:
Cytat
dla osób urodzonych w innych latach niż 1900 - 1999 dodawane są do numeru miesiąca następujące wielkości:
    * dla lat 1800-1899 - 80
    * dla lat 2000-2099 - 20
    * dla lat 2100-2199 - 40
    * dla lat 2200-2299 - 60
wikipedia


I trzeba to uwzglednic...
Nie wiem czy nadal Ci potrzebne, ale dam:
  1. <?
  2. $pesel = '85862711111';
  3.  
  4. $rok=substr($pesel, 0, 2);
  5. $liczba=substr($pesel, 2, 2);
  6. if($liczba<33){
  7. $wiek=1900;
  8.  }elseif($liczba<53){
  9. $wiek=2100;
  10.  } elseif($liczba<73){
  11. $wiek=2200;
  12.  } elseif($liczba<93){
  13. $wiek=1800;
  14.  }
  15.  
  16. $lata = date('Y') - ($wiek + $rok);
  17. echo 'Osoba ma: '.$lata.' lat';
  18. ?>


Kod
Osoba ma: 120 lat


Moze rozwiazanie nie jest optymalne (sprawdza rocznik, a nie miesiac), ale dziala

Ten post edytował xberus 24.04.2005, 06:50:18
Go to the top of the page
+Quote Post
SongoQ
post
Post #8





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


Dodatkowo mozna by to wsadzic w funkcje/klase i dodac validacje poprawnosci.


--------------------
Go to the top of the page
+Quote Post
ulka
post
Post #9





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 15.03.2006

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


[php] mam pytanko jak zrobić to zadanie w formularzu?? żeby w jednym okienku wpisać pesel a w drugim żeby mi się wyświetliło ile dana osoba ma lat... i mam jeszcze jedną prośbę moglibyście mi ten skrypt wysłać z opisem proszę odpiszcie jak najszybciej bo bardzo teraz tego potrzebuje sadsmiley02.gif smile.gif
Go to the top of the page
+Quote Post
Kshyhoo
post
Post #10





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Cytat(ulka @ 2006-03-15 09:17:33)
... i mam jeszcze jedną prośbę moglibyście mi ten skrypt wysłać z opisem proszę odpiszcie jak najszybciej bo bardzo teraz tego potrzebuje sadsmiley02.gif  smile.gif

Ale się uśmiałem. Koleżanko, to Forum jest po to żeby pomagać a nie odwalać za kogoś robotę. Wyżej masz co nieco opisane, kombinuj a w razie problemów na pewno ktoś się znajdzie, żeby pokierować...


--------------------
Go to the top of the page
+Quote Post
SongoQ
post
Post #11





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


Wystarczy zebrac informacje i polaczyc w calosc.


--------------------
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 Aktualny czas: 20.08.2025 - 12:10