# Alter ausrechnen mittels dem Geburtsdatum



## d4$_boese (3. Juni 2006)

Hie ich weis nicht ob dieses Thema schon mal angesprochen worden ist aber ich wusste nicht unter was ich suchen sollte .....

Ich würde gerne aus dem Datensatz wo ein Geburtsdatum eingetragen ist z.B. 04.10.1985
auf den aktuellen Tag ausrechnet wie alt es ist Sprich das richtige Ergebnis wäre hier 20.


----------



## SilentWarrior (3. Juni 2006)

Vielleicht klappt’s so:
	
	
	



```
floor((time()-mktime(12, 0, 0, 10, 4, 1985))/31536000)
```


----------



## d4$_boese (3. Juni 2006)

der soll des dtum aus der datenbank lesen nicht das ich des selber mit reinschreiben kann oder ist es evtl das es mit sogar direkt in der datenbank selber ausrechnet


----------



## andulus (3. Juni 2006)

Hi!
Schau dir mal die Funktion mktime() genauer an. Das wird dir weiterhelfen 
Bei PHP.net ist übrigens unter http://at.php.net/manual/de/function.mktime.php eine Funktion get_age() zur Schau gestellt 
lg Andulus

#### EDIT #####

Ich poste mal schnell wie die das auf *PHP.net* lösen:

```
<?php
   function get_age($dob_stamp) {
       $dob = getdate($dob_stamp);
       $now = getdate(time());
       $age = $now['year'] - $dob['year'];
       $age-= (int)($now['mon'] < $dob['mon']);
       $age-= (int)(($now['mon'] == $dob['mon']) && ($now['mday'] < $dob['mday']));
       return $age;
   }
?>
```
Du brauchst dann nur noch get_age() mit deinen MYSQL-Ergebnisen zu füttern und schon sollte es funktionieren


----------



## Gumbo (3. Juni 2006)

Du könntest das Alter auch gleich in der Datenbankabfrage von MySQL berechnen lassen:
	
	
	



```
LEFT(CURDATE()-`spalte`, CHAR_LENGTH(CURDATE()-`spalte`) - 4)
```


----------



## d4$_boese (3. Juni 2006)

Gumbo hat gesagt.:
			
		

> Du könntest das Alter auch gleich in der Datenbankabfrage von MySQL berechnen lassen:
> 
> 
> 
> ...


Also wenn ich des jetzt richtig verstandeen habe den Code

```
LEFT(CURDATE()-`spalte`, CHAR_LENGTH(CURDATE()-`spalte`) - 4)
```
in der datenbank selber eingeben und in der daten bnk abspeichern und dann auf der php pge abfragen


----------



## Gumbo (3. Juni 2006)

Nein, dieser MySQL-Algorithmus berechnet das Alter aufgrund des in „spalte“ gespeicherten Geburtsdatums und des aktuellen Datums.


----------

