Datumseingabe mit PHP ändern

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

  • Datumseingabe mit PHP ändern

    Hi,

    Hab' ein Problemchen; hoffe das mir jemand weiterhelfen kann!

    In einem Formular (Feld: Geburtsdatum), muß die Eingabe für Gebutsdatum sich nach dem abschicken des Formulars in ein vorbestimmtes Format verändern z.B.

    Eingabe zB: 5.1.02 ----> verändert in 05.01.2002
    Eingabe zB: 05.1.02 ----> verändert in 05.01.2002
    Eingabe zB: 5.01.02 ----> verändert in 05.01.2002
    Eingabe zB: 5.1.2002 ----> verändert in 05.01.2002

    Ich habe leider keinen Plan, wie ich das mit PHP realisieren kann.

    Vielleicht können mir die PHP-Profies weiterhelfen.


    Besten Dank
    Zuletzt geändert von bigtail; 11.08.2003, 07:34.

  • #2
    Hi

    Ich gehe davon aus dass jeder Wert in einer Varibale gespeichert wird: $tag $monat und $jahr

    Dann musst du erstmal das Datum als Timestamp erfassen um es weiter zu verarbeiten:

    PHP-Code:
    $timestamp=mktime(0,0,0,$monat,$tag,$jahr); 
    Danach kannst du den Timestamp beliebig umwandeln und ausgeben:

    PHP-Code:
    $ausgabe=date(d.m.Y);
    echo 
    $ausgabe
    Wenn du möchtest, dass das ganze ohne Seitenreload geschehen soll, musst du dich noch an die Javascript Experten wenden

    Gruss
    framix

    Kommentar


    • #3
      Ich gehe davon aus dass jeder Wert in einer Varibale gespeichert wird: $tag $monat und $jahr
      Nein, das Ganze wird nur in einer Variablen, nämlich $_POST['datum'] gespeichert.

      Kommentar


      • #4
        hallo,
        das mit dem timestamp ist ok,
        nur in diesem fall muss noch ein schritt vorgeschaltet werden, aus einer variablen drei machen:

        explode(".",$_POST['datum'])
        gruss oskar40

        kapieren - nicht kopieren

        Kommentar


        • #5
          Besten Dank für die Antworten.
          Das Problem habe ich wie folgt gelöst:

          $avar = explode(".", $_POST['bis']);
          $tag=$avar[0];
          $monat=$avar[1];
          $jahr=$avar[2];
          $rightdatum = date ( "d.m.Y", mktime(0,0,0,$monat,$tag,$jahr) );

          Was meint ihr? Könnte man es noch besser machen?

          Kommentar


          • #6
            finde ich gut!

            Gleich in ne FKT packen und zu den Snippets.

            macht er die Schaltjahre und vorallem sommer/winterzeit korrekt. Sieht so aus. kannste ja mal testen..

            Kommentar


            • #7
              die lösung ist so, wie ich sie auch einsetze, funktioniert.

              schaltjahr oder nicht spielt hier nicht die rolle, es geht ja nicht um abstände zwischen zwei terminen (da kann ein schalttag das ergebnis verfälschen, wenn er nicht berücksichtigt wurde), sondern um einzeltermine.

              und zb der 31. april (den es im kalender nicht gibt, der aber in eine eingabe vorkommen kann) wird auf den 1. mai umgesetzt, ohne weitere maßnahme.

              sommer-/winterzeit ist wegen der gleichen überlegung (keine ermittlung der zeitdifferenz) auch ok.
              Zuletzt geändert von oskar40; 12.08.2003, 09:19.
              gruss oskar40

              kapieren - nicht kopieren

              Kommentar


              • #8
                War auch nur, weil es hin und wieder ungeahnte probs mit sowas gab...

                --> Also ab nach snippets!

                Kommentar

                Lädt...
                X