Ankündigung

Einklappen
Keine Ankündigung bisher.

Datum auf Richtigkeit überprüfen

Einklappen

Neue Werbung 2019

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

  • Datum auf Richtigkeit überprüfen

    Hallo php Community,

    ich lerne seit ein paar Tagen php und komme gerade nicht ganz so weiter, ich hoffe ihr könnt mir da helfen.

    Ich habe ein kleines Formular wo man ein Datum eingeben kann und dieses Zeig mir dann den Wochentag.
    Jetzt möchte ich gerne hinzufügen das, wenn man z.B. als Datum den 64.15.3017 (Tag, Monat, Jahr) eingibt, php den Benutzer dann sagt das dieses Datum nicht existiert (also in dem Fall dann Tag und Monat).
    Es soll auch Schaltjahre berücksichtigen. (im html Dokument ist das Formular welches den Namen ["datum"] hat und mit action auf das php Dokument zugreift).

    <?php
    setlocale (LC_ALL, "de_DE");

    $datum = $_POST["datum"];

    $datum_elemente = explode(".", $datum);

    echo 'Wochentag: '.date('l',mktime(0,0,0,$datum_elemente[1],$datum_elemente[0],$datum_elemente[2]));

    ?>

    Hab schon alles mögliche mit Bedingungen also if versucht aber bekomme es nicht hin... Ich habe auch schon etwas gegoogelt und es soll wohl mit checkdate funktionieren aber in Kombination mit $datum_element[1], [0| und [2] klappt es irgendwie nicht.

    Hoffe ihr könnt mir da etwas weiter helfen bzw. mir noch Tipps geben was ich brauche.

  • #2
    PHP-Code:
    if(!checkdate($datum))
    {
        echo 
    "Ungültig";

    http://php.net/manual/de/function.checkdate.php
    - Laravel

    Kommentar


    • #3
      Ich finde das ganz schön "DateTime()"

      Musste dich zwar ein wenig reinlesen, abre wenn du dann weißt, was du damit:
      PHP-Code:
      $date = new DateTime($myDate);
      echo 
      $date->format($format); 
      anfangen kannst, geht's wie von allein
      Die Jatravartiden auf Viltwodl VI können den Kram von dir auch nicht nachvollziehen

      Kommentar


      • #4
        Das mit $datum hat nicht funktioniert und bekomme die Fehlermeldung das ich 3 Parameter vergeben muss aber mit $datum_element[1], [0] und [2] hat es funktioniert. Komischerweise hab ich es damit oft getestet, auch so wie du das gerade geschrieben hast und dann ging es doch plötzlich irgendwie...^^

        <?php

        setlocale (LC_ALL, "de_DE");

        $datum = $_POST["datum"];

        $datum_elemente = explode(".", $datum);

        if (!checkdate($datum_elemente[1],$datum_elemente[0],$datum_elemente[2])) {
        echo "Dieses Datum existiert nicht";
        }

        else {
        echo "Wochentag: ".date('l',mktime(0,0,0,$datum_elemente[1],$datum_elemente[0],$datum_elemente[2]));
        }
        ?>


        Auf jeden Fall vielen Dank für die Hilfe

        Kommentar


        • #5
          Zitat von tera3yte Beitrag anzeigen
          PHP-Code:
          if(!checkdate($datum))
          {
              echo 
          "Ungültig";

          http://php.net/manual/de/function.checkdate.php
          Du postest einen Link auf die Funktion und ein FALSCHES Beispiel dazu?

          Mir fehlen die Worte...
          Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

          Kommentar

          Lädt...
          X