Zeit auf das aktuelle Datum addieren

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

  • Zeit auf das aktuelle Datum addieren

    Hallo Community Mitglieder,
    ich bin dabei ein einfaches Browsergame zu schreiben.
    Mein Problem dabei ist momentan, dass wenn man z.B. auf "Ausbauen" klickt,
    soll aus einer Datenbank die Zeit zum Ausbau herausgenommen werden und auf das Aktuelle Datum addiert werden, und dann soll das Ergebnis ausgegeben werden, wann der Aufbau fertig ist.

    Meine Frage nun: Wie addiere ich die Zeit auf das Aktuelle Datum?
    (Sagen wir die Zeit beträgt 3 Stunden)

    Ich hoffe das dieser Thread noch nicht existiert, wenn doch einfach den Link dazu posten.

    MfG

  • #2


    such mal nach mktime, date und strtotime. Da wirst du schon was finden. Ein paar zusätzliche Infos wären aber hilfreich. Und auch relevanter(!) Code.

    Peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      Schau Dir mal das DateTime Objekt von PHP an. Insbesondere die Methode add() sollte Dir hier weiterhelfen.
      PHP: DateTime::add - Manual
      MM Newmedia | MeinBlog

      Kommentar


      • #4
        Also ich habe es jetzt einfach mal ganz provisorisch so versucht:
        PHP-Code:
        <?php
                mysql_connect
        ("Host""User""Pass");
                
        mysql_select_db("onlinegame_gebaeude") or die("Datenbank exestiert nicht");
                
        $abfrage=("SELECT * FROM mainbuilding WHERE id='0+1';");
                
        $ergebnis=mysql_query($abfrage) OR die("Error: $abfrage <br>".mysql_error());
                while(
        $row mysql_fetch_object($ergebnis))
                {    
                    
        $jetzttime();
                    
        $hours="+".$row->hours." hours";
                    
        $minutes="+".$row->minutes." minutes";
                    
        $seconds="+".$row->seconds." seconds";
                    
        $neu1=strtotime($hours$jetzt);
                    
        $neu2=strtotime($minutes$neu1);
                    
        $neu3=strtotime($seconds$neu2);
                    echo 
        date("d.m.Y H:i:s"$neu3)."<br />";
                }
        ?>
        Nun meine Frage, warum bekomme ich keine Ausgabe? Er zeigt mir nur eine leere Seite an.

        Kommentar


        • #5
          Wie sieht es denn mit Zwischenausgaben aus?
          Error Reporting aufgedreht? Wird die while-Schleife ausgeführt? Sind überhaupt Daten in der Datenbank vorhanden? Was steht in der Variablen $row? Welche Werte werden den $neu Variablen zugewiesen?
          MM Newmedia | MeinBlog

          Kommentar


          • #6
            Ja es sind Daten in der DB gespeichert.
            $row gibt die Daten aus die in der DB-Tabelle unter dem namen hinterlegt sind.

            Der ersten $neu Variable wird "$neu1=strtotime($hours, $jetzt);"
            zugewiesen, d.h. er soll den Wert aus der DB zu der Aktuellen Zeit addieren.

            Das gleiche jeweils mit $neu2 und $neu3. Allerdings wird bei $neu2 die Zeit $neu1 angegeben und bei $neu3 wird die Zeit von $neu2 angegeben.

            Zwischen ausgaben funktionieren nicht. Ich habe den Code kopiert von einem anderen Quelltext von mir und dementsprechend geändert. In dem anderen Quelltext, ist die While-Schleife dazu da, um die Daten alle abzurufen und dann bestimmte Daten mit $row->... Auszugeben.

            Ich habe bei XAMPP nichts verändert, wo müsste ich die Error-reports aufdrehen?
            Normalerweise bekomme ich Fehlermeldungen wie z.B. Falsche Syntax o.ä.

            Kommentar


            • #7
              Schaue Dir bitte die Funktion error_reporting() und die Funktion var_dump() an.

              Das die Zwischenausgaben nicht funktionieren, ist vollkommener Quatsch.
              MM Newmedia | MeinBlog

              Kommentar


              • #8
                Also in der Schleife funktioniert keine Ausgabe.
                ich habe mal das error_reporting() eingebaut bzw error_reporting(-1), damit alle Fehler angezeigt werden.

                Da kommt dann die Ausgabe: 32767

                Muss ich jetzt gucken was die Nummer für ein Fehler ist oder wie?

                Kommentar

                Lädt...
                X