Problem mit der Anzeige von Geburtstagen

  • Hallo, ich habe hier folgen des php Script:

    Code
    echo $ar2;
    $geb = "02.03.1987";
    $ar1 = explode(".", $geb);
    $ar2 = explode (".", date("d.m.Y"));
    $jahre = $ar2[2] - $ar1[2] - 1;
    if ($ar1[1] <= $ar2[1] && $ar1[0] <= $ar2[0])
    $jahre++;
    echo $jahre;

    Wenn ich jetzt dort bei $geb den 02.03.1987 Eintrage kommt das richtige Alter von 19 Jahren, wenn ich aber das Datum 16.06.1987 eintrage zeigt er mir 18 an obwohl es 19 anzeigen sollte. Ich kann den Fehler nicht finden.Kann mir da vielleicht jemand helfen ? Letztes Jahr hat das noch alles funktioniert aber jetzt auf einmal zeigt er mir das falsch an.

    MfG pixel

  • probiers mal so:

    so long

  • Schon mal vielen Dank für deine Hilfe, aber da funktioniert irgendwas
    noch nicht, ich habe jetzt das Script wie folgt ausprobiert:


    und er zeigt mir jetzt "09.07.1989 (-44)" an.

  • so - eine bessere version.

  • Hab das Script wie folgt ausprobiert, aber es funktioniert leider nicht..

    er zeigt mir jetzt "09.07.1989 (0)" an

  • Hab jetzt eben nochmal im Internet gesucht und folgendes gefunden. Und du
    wirst es nicht glauben es funktioniert !! Trotzdem Danke für deine Hilfe !

    PHP
    <?php
    $jahr = 1989;
    $mon  =  01;
    $tag  =  30;
    $alter = (date('Y') - $jahr) - intval(date('md') < sprintf('%02d%02d' , $mon , $tag ));
    echo $alter ;
    ?>