Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] wie zeitraum ermitteln und ausgabe als dropdown?

Einklappen

Neue Werbung 2019

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

  • [Erledigt] wie zeitraum ermitteln und ausgabe als dropdown?

    ich habe ein Start und Enddatum:
    PHP-Code:
    $start $_GET["start"];
    $end $_GET["end"]; 
    also z.b. 2010-10-19 und 2010-10-25

    wie kann ich nun den zeitraum (start, end) für die ausgabe in einem dropdownmenu ermitteln?

    ausgabe im menu:
    2010-10-19
    2010-10-20
    2010-10-21
    2010-10-22
    2010-10-23
    2010-10-24
    2010-10-25

  • #2
    Z.B. in einen Timestamp umwandeln und dann vom einen zum anderen jeweils einen Tag drauf zählen und dadurch das Datum generieren?

    Oder z.B. das Date Objekt verwenden: http://www.php.net/manual/en/datetime.add.php

    Kommentar


    • #3
      mach mittels mktime(0,0,0,monat,tag,jahr) in einen timestamp umrechnen - den kannst du dann jeweils um 86400 erhöhen - und das zugehörige Datum mittels der date-Funktion ausgeben

      Kommentar


      • #4
        Wenn das Format yyyy-mm-dd ist kann man auch strtotime() verwenden um einen Timestamp zu bekommen (ist einfacher).

        Kommentar


        • #5
          strtotime kommt doch noch mit viel mehr Zeitformaten zurecht ..

          Kommentar


          • #6
            wow - werde das mit dem timestamp mal versuchen

            Zitat von Flor1an Beitrag anzeigen
            Wenn das Format yyyy-mm-dd ist kann man auch strtotime() verwenden um einen Timestamp zu bekommen (ist einfacher).

            Kommentar


            • #7
              Zitat von eagle275 Beitrag anzeigen
              strtotime kommt doch noch mit viel mehr Zeitformaten zurecht ..
              Ja tut es, wird aber hier nicht gebraucht Genauso wenig wie mktime.

              Kommentar


              • #8
                Es dürfte auch nützlich für den TE sein das strtotime auch sowas wie "2010-02-14 + 1 day" verarbeiten kann

                Kommentar


                • #9
                  Jetzt wirds zu einfach xD

                  Kommentar


                  • #10
                    hm - aber wie komme ich nun an die einzelnen tage mit datum ran?
                    PHP-Code:
                    <?php
                    $start 
                    strtotime("2010-10-19") ;
                    $end strtotime("2010-10-25") ;
                    $diff $end $start;
                    $diff $diff 86400;
                    echo 
                    "$diff";
                    ?>

                    Kommentar


                    • #11
                      mit ner schleife und einem "+ 1 day"

                      Kommentar


                      • #12
                        du machst einfach erstmal den Start-Tag als timestamp , dann durchläufst du die Zeit bis zum End-Zeitstempel und für jeden Tag machst du ne Ausgabe - alternativ so wie cycap sagt ...

                        PHP-Code:
                        $start "2010-10-19" ;
                        $now=$start;
                        $end strtotime("2010-10-25") ; 
                        while (
                        $now=strtotime($now." + 1 day ")< $end) {
                           echo 
                        date("Y-m-d",$now);

                        Kommentar


                        • #13
                          komme jetzt in der ausgabe nur bis 24.
                          ist es sonst richtig?


                          PHP-Code:
                          <?php
                          $start 
                          strtotime("2010-10-19") ;
                          $end strtotime("2010-10-25") ;

                          $diff $end $start;
                          $diff $diff 86400;

                          for (
                          $zaehler 0$zaehler $diff$zaehler++) {
                           echo 
                          date("d.m.Y"strtotime("+" $zaehler " day")) . "<br>";
                          }
                          ?>

                          Kommentar


                          • #14
                            dann musst du halt bei deiner for schleife statt < diff -> <= diff schreiben

                            Kommentar


                            • #15
                              Viele Wege führen nach Rom

                              Kommentar

                              Lädt...
                              X