Datumseingabe mit PHP ändern

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • 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
    Last edited by bigtail; 11-08-2003, 06: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

    Comment


    • #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.

      Comment


      • #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

        Comment


        • #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?

          Comment


          • #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..

            Comment


            • #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.
              Last edited by oskar40; 12-08-2003, 08:19.
              gruss oskar40

              kapieren - nicht kopieren

              Comment


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

                --> Also ab nach snippets!

                Comment

                Working...
                X