Ankündigung

Einklappen
Keine Ankündigung bisher.

Datum von morgen ermitteln!

Einklappen

Neue Werbung 2019

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

  • Datum von morgen ermitteln!

    Hallo PHP-Fachfrauen und Männer

    Ich habe da ein relativ dämliches Problem und hoffe, dass sich dennoch eine Lösung für dieses findet.

    Also: Ich habe eine Datenbank (MySQL), in der verschieden Datumsangaben gespeichert sind. Leider liegen die Daten in einem unendlich miesen Format vor, und zwar als Varchar... im Format Jahr Jahr -> Monat -> Tag
    Der 13.05.2008 liegt beispielsweise als Varchar-Feld wie folgt vor: 20080513. (ich hoffe, dass ist irgendwie verständlich)

    Um die Termine von "Heute" anzuzeigen habe ich nun folgendes unpraktikable Konstrukt errichtet:

    PHP-Code:
    $heute_jahr date("Y");
    $heute_monat date("m");
    $heute_tag date("d");
    $heute "$heute_jahr$heute_monat$heute_tag"
    Dann gleiche ich halt ab:

    SELECT * FROM `datenbestand` WHERE `datum`=$heute

    Soweit so gut. Die Sache ist umständlich, aber sie funktioniert.
    Nun habe ich aber das Problem, dass ich gerne auch mal die Termine von Morgen oder Übermorgen anzeigen lassen möchte.

    Ich müsse also das Datum von Morgen ermitteln, dieses muss dann aber im Format JahrMonatTag vorliegen.

    Wie kann ich dieses schnell realisieren? Ich nehme auch dankbar alle "Rough and Dirty" Varianten an.... es muss einfach nur relativ schnell gehen und soll keinen Schönheitswettbewerb gewinnen.

    Über Ratschläge und Hilfe bin ich sehr dankbar!


  • #2
    PHP-Code:
    $morgen time () + 60 60 24

    Kommentar


    • #3
      Nein das ist Blödsinn, mach es lieber so:

      PHP-Code:
      $morgen strtotome(date("Y-m-d".time())," + 1 day"); 
      dann bist du auch mit Zeitumstellung etc auf der sicheren seite

      Kommentar


      • #4
        btw. so wie dein query aussieht ist deine Datums-Spalte nicht vom typ date das solletst Du ändern, dann kannst Du auch in sql direkt rechnen.

        Kommentar


        • #5
          strtotime("+1 day") (oder war es +1 days?) liefert dir den Zeitstempel von morgen. Wie du Zeitstempel verarbeitest steht im PHP-Handbuch.

          Fuer MySQL gibt es da DATE_ADD, wie genau, auch hier => Manual
          "Mein Name ist Lohse, ich kaufe hier ein."

          Kommentar


          • #6
            Zitat von Timer Beitrag anzeigen
            Leider liegen die Daten in einem unendlich miesen Format vor, und zwar als Varchar
            Zitat von HPR1974 Beitrag anzeigen
            btw. so wie dein query aussieht ist deine Datums-Spalte nicht vom typ date das solletst Du ändern, dann kannst Du auch in sql direkt rechnen.
            guten morgen!

            Kommentar


            • #7
              Ahja, guten Morgen

              na dann würde ich empfehlen das ganze zu ändern.

              Kommentar


              • #8
                Ich danke Euch für Eure Antworten und Hilfen....
                ich habe die ganze Sache jetzt wie folgt gelöst:

                PHP-Code:
                <?PHP
                $morgen 
                strtotime("+1 day"); 
                $morgenist date("Ymd"$morgen);

                echo 
                "$morgenist <br>";


                ?>
                Und: Es funktioniert:

                Danke Euch

                Kommentar

                Lädt...
                X