Alter nach Geburtsdatum berechnen lassen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Alter nach Geburtsdatum berechnen lassen

    Hi, also ich hab ein kleines Script für meinen Clan geschrieben das das Alter dynamisch nach dem Geburtsdatum ausgibt. Der relevante Teil sieht so aus:

    Code:
    $alter = "$datum";
    $splitted = explode (".", $datum);
    
    $damals = mktime(23,59,59,$splitted[1],$splitted[0],$splitted[2]);
    $heute = time();
    
    $differenz = floor(($heute - $damals) / (60*60*24*365));
    problem ist dabei nur das es bei leuten die vor '79 geboren sind natürlich nicht funktioniert
    wie kann ich das zum laufen bringen?!


    Bill Gates tritt demnächst in "Wetten dass ...?" auf: Er wettet, daß er 8 von 10 Windows-98-Fehlern am Wutanfall der Anwender erkennt.

  • #2
    moin,

    bin noch nicht komplett wach, aber hier mal eine einfache Lösung:
    Code:
    $splitted = explode (".", $datum);
    
    $damals = mktime(23,59,59,$splitted[1],$splitted[0],date("Y")); // diesjähriger Geburtstag
    $heute = time();
    if ($splitted[2]<100) $dies_jahr = date("y"); else $dies_jahr = date("Y");
    
    if ($damals<$heute) $alter = $dies_jahr - $splitted[2]-1;
    else $alter = $dies_jahr - $splitted[2];
    keine Ahnung, ob das funktioniert, hab ich mir gerade aus dem hohlen Bauch ausgedacht -> deshalb muß ich jetzt erstmal was frühstücken

    P.S.: was du noch einbauen mußt, ist bei zweistelliger Jahreszahl die Korrekte Subtraktion durch den Wechsel von 99 nach 00

    Kommentar


    • #3
      nep, klappt nicht :/ trotzdem danke


      Bill Gates tritt demnächst in "Wetten dass ...?" auf: Er wettet, daß er 8 von 10 Windows-98-Fehlern am Wutanfall der Anwender erkennt.

      Kommentar


      • #4
        hmm,

        Code:
        <?php
        	$heute_tag = 11;
        	$heute_monat = 1;
        	$heute_jahr = 2002;
        	$tag = 11;
        	$monat = 1;
        	$jahr = 1973;
        	
        	$alter = $heute_jahr-$jahr;
        	if (mktime(0,0,0,$heute_monat,$heute_tag,$heute_jahr) < mktime(0,0,0,$monat,$tag,$heute_jahr))
        		{
        			$alter--;
        		}
        	echo $alter;
        ?>
        Die Variabeln $heute_... sind der aktuelle Tag, die anderen drei sind der Geburtstag.

        Kommentar


        • #5
          naja

          @JoelH: ist ja eigentlich genau derselbe Weg wie mein Vorschlag, oder?

          Kommentar


          • #6
            hmm,

            k.a.
            aber meins geht und berücksichtigt auch ob du dieses Jahr schon geburtstag hattest oder nicht. Ich muss gestehen dein Script nicht angeschaut zu haben.

            Kommentar


            • #7
              ha!

              bei mir ist auch die Abfrage drin, ob dieses Jahr schon Geburtstag war oder nicht. Allerdings scheint das Skript nicht zu funktionieren, da gebe ich dir Recht

              Kommentar


              • #8
                yep, joel's geht heissen dank


                Bill Gates tritt demnächst in "Wetten dass ...?" auf: Er wettet, daß er 8 von 10 Windows-98-Fehlern am Wutanfall der Anwender erkennt.

                Kommentar

                Lädt...
                X