Ankündigung

Einklappen
Keine Ankündigung bisher.

Datumseingaben formatieren

Einklappen

Neue Werbung 2019

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

  • Datumseingaben formatieren

    Hallo zusammen,
    hab auch noch eine Frage zum totgetretenen Thema des Datums.
    Bei mir wird über eine html-Maske das Datum eingelesen. Per php übergeb ich die dann an eine Variable um sie später in einer Funktion zu verwenden.

    Die übergebenen Werte
    Code:
    $gebtag = $_POST["tag"].".".$_POST["monat"].".".$_POST['jahr'];
    Dann kommt die Funktion:
    Code:
    function errechne_alter($gebtag)
    {
      list($gtag[0], $gtag[1], $gtag[2]) = explode('.', $gebtag);
    
    $heute = explode('.',date('j.n.Y'));      # Splittet aktuelles Datum auf
      	$fl = 0;
      	for ($i=1; $i>=0; $i--)
      	{
          if ($heute[$i] > $gtag[$i]) break;
          if ($heute[$i] == $gtag[$i]) continue;
          $fl = 1;
      	}
      	$alter = $heute[2] - $gtag[2] - $fl;
    
      	RETURN $alter;
    
    }
    sowie deren Aufruf:
    Code:
    printf("Heute ist der %s, der Kunde ist %s Jahre alt und hat am %s Geburtstag.", date('d.m.Y'), errechne_alter($gebtag), $gebtag);
    Jetzt hab ich aber noch das Problem, dass jemand z.B. folgendes Datum eingeben kann 12.32.1998 (oder xf.12.q99. Ich will das jetzt mit der Funktion date() oder strftime() so formatieren, dass eine Fehlermeldung kommt wenn das Datum kein Standard ist (ich wills nicht über die html-Eingabemaske... machen, die Funktion soll einfach ein False zurückgeben).
    Leider hats mit den Funktionen nicht funktioniert. Hätte da jemand nen Tipp wie bei meinem Problem die schreibweise aussehen würde?
    Gruß und Dank im Voraus
    duerov

  • #2
    einfach gucken ob alle zahlen zwischen 0 und 99 liegen?
    [url=http://m7s.de/100.html]Klick mich
    [img]http://m7s.de/100.png[/img][/URL]

    [img]http://www3.stefanmaier.com/SONSTIGES/FSL/b-day.jpg[/img]

    Kommentar


    • #3
      Das wird nicht reichen, dachte in der date() Funktion sind vielleicht so Sache wie Schaltjahre berücksichtigt. Also wenn ich einfach die Eingabewerte in die date() Funktion schreiben könnte, und die dann sofort merkt ob da was inkorrektes eingegeben ist. Dann kann ich mir auch die ganzen if-Abfragen sparen.

      Kommentar


      • #4
        was ist an dne if abrafgen so schlimm?
        ist doch echt kein stress.

        P.s.: wäre eh nur eine?
        [url=http://m7s.de/100.html]Klick mich
        [img]http://m7s.de/100.png[/img][/URL]

        [img]http://www3.stefanmaier.com/SONSTIGES/FSL/b-day.jpg[/img]

        Kommentar


        • #5
          http://de2.php.net/checkdate
          http://www.phpfriend.de/forum/viewto...burtstag+alter

          Code:
          list ($gtag[0], $gtag[1], $gtag[2]) = explode(..)
          //Das macht keinen Sinn, das ist das gleiche wie
          $gtag = explode(..)
          Das Wichtige beim Programmieren ist das Verstehen dessen, was man anwendet. Aber wird ja eh wieder nicht ernstgenommen sondern nur mit jaja quittiert..

          Kommentar

          Lädt...
          X