tutorials.de Buch-Aktion 05/2012
Seite 2 von 2 ErsteErste 12
Like Tree3Danke
ERLEDIGT
NEIN
ANTWORTEN
25
ZUGRIFFE
361
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #16
    Muckel1986 Muckel1986 ist offline Mitglied Gold
    Registriert seit
    Sep 2007
    Ort
    Salzgitter, Germany, Germany
    Beiträge
    190
    Hallo zusammen,

    das Script klappt dank der arrays nun soweit auch. Denn es werden an einer Stelle die Treffen mit einer Bemerkung dazu geschrieben.

    Den Rest erledigt dann das Script, wie unter anderem die Ausgabe der Daten in einer Tabelle und die Berechnung der Dauer von den Treffen sowie die Wartezeit zwischen den Treffen.

    Das Script schaut nun so aus:
    PHP-Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <meta name="author" content="Muckel">
        <meta name="description" content="&Uuml;bersicht unserer &raquo;Zeiten&laquo; - Wie lange ist es noch? Wie lange haben wir uns gesehen? Wie lange mussten wir wieder warten?">
        <meta name="keywords" lang="de" content="Counter,Countdown,zaehlen,dauer,warten">
        <meta http-equiv="content-language" content="de">
        <meta name="robots" content="all">
        <title>&Uuml;bersicht unserer &raquo;Zeiten&laquo;</title>
        <!-- Fuer das eigentliche Script wird das Stylesheet wieder eingebunden. -->
            <!--    <link href="style.css" rel="stylesheet" type="text/css" />    -->
    </head>
    <body>
    <?php
    // Datum des ersten Kontaktes
        
    $kontakt strtotime("22.09.2010 14:34:00"); // Erster Kontakt auf einer Internetseite

    // Angabe der Treffen in einem Array1
        
    $treffen = array(
            array( 
    '22.09.2010''22.09.2010''Der erste Kontakt auf einer Internetseite.'),
            array( 
    '27.12.2010''08.01.2011''&Uuml;ber Silvester 2010 auf 2011 trafen sie sich das erstemal und verstanden sich auf anhieb gut. Durch eine akute Erkrankung hat er sie in das Krankenhaus begleitet und seinen Besuch nicht Abgebrochen, sondern ging jeden Tag zu ihr und besuchte sie. Vermutlich durch diese Situation ist eine feste Beziehung zwischen den beiden Entstanden.'),
            array( 
    '16.02.2011''01.03.2011''Ende Februar folgte das zweite Treffen, bei dem sie sich wieder gut verstanden und diesesmal ohne einen medizinischen Zwischenfall.'),
            array( 
    '21.04.2011''26.04.2011''Bei diesem Treffen gab es noch ein wenig Arbeit f&uuml;r beide, da sie eine &Auml;nderungsschneiderei er&ouml;ffnete und so wurden die letzten Beh&ouml;rdeng&auml;nge gemeinsam absolviert.'),
            array( 
    '01.06.2011''13.06.2011''Dieses Treffen war sehr sch&ouml;n, da die zwei das Schwimmen f&uuml;r sich entdeckt haben und die Zeit gemeinsam mit etwas Ruhe erleben durften.'),
            array( 
    '06.08.2011''20.08.2011''F&&uuml;r dieses Treffen haben beide schon ihre W&uuml;nsche und Vorstellungen. Was sie davon erleben werden und wie auch eine Feierlichkeit sein wird, verr&auml;t nur die Zukunft.')
        );

    // anzahl der Einträge in $treffen auslesen
        
    $counted count($treffen);

    // Versuch mit der Berechnung innerhalb der Tabelle
        
    echo "<h1><a name=\"berechnen\">Versuch die Zeiten zu berechnen</a></h1>
        <p>Als n&auml;chstes m&ouml;chte ich die Tabelle nochmal ausgeben und in ihr die <strong>Wartezeit</strong> zwischen der Treffen so wie auch die <strong>Dauer</strong> der Treffen zu errechnen.</p>"
    ;
        
    // Ausgabe des Tabellen-Kopfes
        
    echo "<table id=\"uebersicht\" border=\"1\" cellspacing=\"1\" cellpadding=\"1\" >
          <tr>
            <th align=\"center\" valign=\"middle\" scope=\"col\">Nr</th>
            <th align=\"center\" valign=\"middle\" scope=\"col\">Wartezeit</th>
            <th align=\"center\" valign=\"middle\" scope=\"col\">Beginn</th>
            <th align=\"center\" valign=\"middle\" scope=\"col\">Ende</th>
            <th align=\"center\" valign=\"middle\" scope=\"col\">Dauer</th>
            <th align=\"left\" valign=\"top\" scope=\"col\">Bemerkung</th>
          </tr>"
    ;
    // Ausgabe der übrigen Tabelle mit der Schleife
        
    for($i=0;$i<$counted;$i++)
            {

            
    // Berechnung der Dauer
                
    $dauer round((strtotime($treffen[$i][1]) - strtotime($treffen[$i][0])),2);
                
    $dauertage $dauer 60 60 24// in Minuten / in Stunden / in Tage
            // Berechnung der Wartezeit
                
    $warten round((strtotime($treffen[$i][0]) - strtotime($treffen[$i-1][1])),2); // Beginn - Ende letztes = Wartezeit
                
    $wartentage round($warten 60 60 24,2); // in Minuten / in Stunden / in Tage

            
    echo "<tr>";
                echo 
    "<td>".$i."</td>";
                echo 
    "<td>".$wartentage." Tage</td>";
                echo 
    "<td>".$treffen[$i][0]."</td>";
                echo 
    "<td>".$treffen[$i][1]."</td>";
                echo 
    "<td>".$dauertage." Tage</td>";
                echo 
    "<td>".$treffen[$i][2]."</td>";
            echo 
    "</tr>";
            }
        echo 
    "</table>"// Nach der Schleife muss die Tabelle ja geschlossen werden...
    ?>
    </body>
    </html>
    Lediglich für die Berechnung der Wartezeit muss ich mir noch eine Schleife oder ähnliches einfallen lassen.

    LG Muckel
     

  2. #17
    Avatar von chmee
    chmee chmee ist offline mod | media
    tutorials.de Moderator
    Registriert seit
    Apr 2004
    Ort
    Berlin bei Potsdam
    Beiträge
    7.630
    Blog-Einträge
    4
    Setz $warten und $wartentage in eine if-Clause, ob $i>0 ist, ansonsten soll $wartentage='0'; sein.

    php - if .. else .. http://php.net/manual/de/control-structures.elseif.php

    mfg chmee
     
    Mein Blog - VideoFAQ - FotoFAQ - bei Flickr - DSLR Kleinanzeigen
    Benutzt den DANKE-Knopf oder bewertet den Beitrag

    "GEHT NICHT" HILFT NICHT, TESTET EURE CODES ONLINE UND GEBT KLARE INFOS!
    -> Regexp <- -> php <- -> Javascript <-

  3. #18
    Muckel1986 Muckel1986 ist offline Mitglied Gold
    Registriert seit
    Sep 2007
    Ort
    Salzgitter, Germany, Germany
    Beiträge
    190
    Hallo,

    an eine Wenn Dann Sonst Bedingung dachte auch ich. Und zwar wollte ich damit schauen:

    Wenn treffen 22.09.2010 Dann keine Wartezeit Sonst die Berechnung.

    Versucht habe ich das so:
    PHP-Code:
            // Berechnung der Wartezeit
            
    if ($treffen[$i][0] == '22.09.2010') {
                
    $wartentage 'keine';
                }
                    
    $warten round((strtotime($treffen[$i][0]) - strtotime($treffen[$i-1][1])),2); // Beginn - Ende letztes = Wartezeit
                    
    $wartentage round($warten 60 60 24,2); // in Minuten / in Stunden / in Tage        // Berechnung der Wartezeit
            
    if ($treffen[$i][0] == '22.09.2010') {
                
    $wartentage 'keine';
                }
                    
    $warten round((strtotime($treffen[$i][0]) - strtotime($treffen[$i-1][1])),2); // Beginn - Ende letztes = Wartezeit
                    
    $wartentage round($warten 60 60 24,2); // in Minuten / in Stunden / in Tage 
    Jedoch klappt das mit der Ausgabe noch nicht so richtig. Denn für den ersten Tag wird jetzt nicht das Wort "keine" ausgegeben, sondern die Zahl "14873.92".

    Leider befinde ich mich da noch auf der Suche... Sehen könnt ihr die Ausgabe hier. Oder ist die If Bedingung an der falschen Stelle? Habe sie dort geschrieben, wo sonst die reine Rechnung stand:
    PHP-Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <meta name="author" content="Muckel">
        <meta name="description" content="&Uuml;bersicht unserer &raquo;Zeiten&laquo; - Wie lange ist es noch? Wie lange haben wir uns gesehen? Wie lange mussten wir wieder warten?">
        <meta name="keywords" lang="de" content="Counter,Countdown,zaehlen,dauer,warten">
        <meta http-equiv="content-language" content="de">
        <meta name="robots" content="all">
        <title>&Uuml;bersicht unserer &raquo;Zeiten&laquo;</title>
        <!-- Fuer das eigentliche Script wird das Stylesheet wieder eingebunden. -->
            <!--    <link href="style.css" rel="stylesheet" type="text/css" />    -->
    </head>
    <body>
    <?php
    // Datum des ersten Kontaktes
        
    $kontakt strtotime("22.09.2010 14:34:00"); // Erster Kontakt auf einer Internetseite

    // Angabe der Treffen in einem Array1
        
    $treffen = array(
            array( 
    '22.09.2010''22.09.2010''Der erste Kontakt auf einer Internetseite.'),
            array( 
    '27.12.2010''08.01.2011''&Uuml;ber Silvester 2010 auf 2011 trafen sie sich das erstemal und verstanden sich auf anhieb gut. Durch eine akute Erkrankung hat er sie in das Krankenhaus begleitet und seinen Besuch nicht Abgebrochen, sondern ging jeden Tag zu ihr und besuchte sie. Vermutlich durch diese Situation ist eine feste Beziehung zwischen den beiden Entstanden.'),
            array( 
    '16.02.2011''01.03.2011''Ende Februar folgte das zweite Treffen, bei dem sie sich wieder gut verstanden und diesesmal ohne einen medizinischen Zwischenfall.'),
            array( 
    '21.04.2011''26.04.2011''Bei diesem Treffen gab es noch ein wenig Arbeit f&uuml;r beide, da sie eine &Auml;nderungsschneiderei er&ouml;ffnete und so wurden die letzten Beh&ouml;rdeng&auml;nge gemeinsam absolviert.'),
            array( 
    '01.06.2011''13.06.2011''Dieses Treffen war sehr sch&ouml;n, da die zwei das Schwimmen f&uuml;r sich entdeckt haben und die Zeit gemeinsam mit etwas Ruhe erleben durften.'),
            array( 
    '06.08.2011''20.08.2011''F&&uuml;r dieses Treffen haben beide schon ihre W&uuml;nsche und Vorstellungen. Was sie davon erleben werden und wie auch eine Feierlichkeit sein wird, verr&auml;t nur die Zukunft.')
        );

    // anzahl der Einträge in $treffen auslesen
        
    $counted count($treffen);

    // Versuch mit der Berechnung innerhalb der Tabelle
        
    echo "<h1><a name=\"berechnen\">Versuch die Zeiten zu berechnen</a></h1>
        <p>Als n&auml;chstes m&ouml;chte ich die Tabelle nochmal ausgeben und in ihr die <strong>Wartezeit</strong> zwischen der Treffen so wie auch die <strong>Dauer</strong> der Treffen zu errechnen.</p>"
    ;
        
    // Ausgabe des Tabellen-Kopfes
        
    echo "<table id=\"uebersicht\" border=\"1\" cellspacing=\"1\" cellpadding=\"1\" >
          <tr>
            <th align=\"center\" valign=\"middle\" scope=\"col\">Nr</th>
            <th align=\"center\" valign=\"middle\" scope=\"col\">Wartezeit</th>
            <th align=\"center\" valign=\"middle\" scope=\"col\">Beginn</th>
            <th align=\"center\" valign=\"middle\" scope=\"col\">Ende</th>
            <th align=\"center\" valign=\"middle\" scope=\"col\">Dauer</th>
            <th align=\"left\" valign=\"top\" scope=\"col\">Bemerkung</th>
          </tr>"
    ;
    // Ausgabe der übrigen Tabelle mit der Schleife
        
    for($i=0;$i<$counted;$i++)
            {

            
    // Berechnung der Dauer
                
    $dauer round((strtotime($treffen[$i][1]) - strtotime($treffen[$i][0])),2);
                
    $dauertage $dauer 60 60 24// in Minuten / in Stunden / in Tage
            // Berechnung der Wartezeit
            
    if ($treffen[$i][0] == '22.09.2010') {
                
    $wartentage 'keine';
                }
                    
    $warten round((strtotime($treffen[$i][0]) - strtotime($treffen[$i-1][1])),2); // Beginn - Ende letztes = Wartezeit
                    
    $wartentage round($warten 60 60 24,2); // in Minuten / in Stunden / in Tage

            
    echo "<tr>";
                echo 
    "<td>".$i."</td>";
                echo 
    "<td>".$wartentage." Tage</td>";
                echo 
    "<td>".$treffen[$i][0]."</td>";
                echo 
    "<td>".$treffen[$i][1]."</td>";
                echo 
    "<td>".$dauertage." Tage</td>";
                echo 
    "<td>".$treffen[$i][2]."</td>";
            echo 
    "</tr>";
            }
        echo 
    "</table>"// Nach der Schleife muss die Tabelle ja geschlossen werden...
    ?>
    </body>
    </html>
    Werde nacher noch danach schauen, da ich jetzt paar Bezüge vom Dachboden holen muss.

    Vielen Dank bisher!
     

  4. #19
    Muckel1986 Muckel1986 ist offline Mitglied Gold
    Registriert seit
    Sep 2007
    Ort
    Salzgitter, Germany, Germany
    Beiträge
    190
    Es lag am else Nun klappt es!
     

  5. #20
    Avatar von chmee
    chmee chmee ist offline mod | media
    tutorials.de Moderator
    Registriert seit
    Apr 2004
    Ort
    Berlin bei Potsdam
    Beiträge
    7.630
    Blog-Einträge
    4
    Du machst es Dir zu schwer! Frage doch nicht nach dem Inhalt der Variable, sondern nach der aktuellen Position.. Im Grunde genommen machst Du jene Berechnung NICHT, wenn der Zähler beim ersten Eintrag ist, also $i=0. Mehr ist doch gar nicht nötig..

    mfg chmee
     
    Mein Blog - VideoFAQ - FotoFAQ - bei Flickr - DSLR Kleinanzeigen
    Benutzt den DANKE-Knopf oder bewertet den Beitrag

    "GEHT NICHT" HILFT NICHT, TESTET EURE CODES ONLINE UND GEBT KLARE INFOS!
    -> Regexp <- -> php <- -> Javascript <-

  6. #21
    Muckel1986 Muckel1986 ist offline Mitglied Gold
    Registriert seit
    Sep 2007
    Ort
    Salzgitter, Germany, Germany
    Beiträge
    190
    Guten Abend,

    da weiß ich nicht, wie Du das meinst.

    So wie ich das gelöst habe, bekomme ich eben für den ersten Eintrag auch eine Ausgabe (keine), welche ich in der Tabelle auch stehen haben möchte. Denn für einen ersten Kontakt kann es ja keine Wartezeit geben und das möchte ich in der Tabelle auch verdeutlichen/ausgeben.

    Was nun eigentlich noch fehlt wäre, dass man wo das Datum steht, eben auch eine Uhrzeit mit Datum angeben könnte. Für den 6.8.11 wäre es zum Beispiel 11:41 Uhr, wo sie sich an einem Bahnhof treffen.

    Aber dazu werde ich mir morgen erstmal noch ein paar Informationen durchlesen, um dann selbst bissel auszuprobieren.

    Vielen Dank Muckel!
     

  7. #22
    Avatar von chmee
    chmee chmee ist offline mod | media
    tutorials.de Moderator
    Registriert seit
    Apr 2004
    Ort
    Berlin bei Potsdam
    Beiträge
    7.630
    Blog-Einträge
    4
    PHP-Code:
      // Berechnung der Wartezeit
            
    if ($i == 0) { echo"nein"; }
            else { echo 
    "ja"; }
    // und das noch ein zweites Mal 
    Du hast doch schon zuvor mit strtotime() mit Datum&Zeiten gearbeitet..

    mfg chmee
     
    Mein Blog - VideoFAQ - FotoFAQ - bei Flickr - DSLR Kleinanzeigen
    Benutzt den DANKE-Knopf oder bewertet den Beitrag

    "GEHT NICHT" HILFT NICHT, TESTET EURE CODES ONLINE UND GEBT KLARE INFOS!
    -> Regexp <- -> php <- -> Javascript <-

  8. #23
    Muckel1986 Muckel1986 ist offline Mitglied Gold
    Registriert seit
    Sep 2007
    Ort
    Salzgitter, Germany, Germany
    Beiträge
    190
    Guten Abend / Morgen,

    die Uhrzeiten werden, so denke ich, auch nicht mein Problem.

    Bei der Summenbildung der Gesamttage / Wartezeit weiß ich eben nicht, wie ich das machen soll. Für die Berechnung der Dauer für jedes Treffen, habe ich mich ja in einem der "unter arrays" aufgehalten:
    PHP-Code:
        // Ausgabe der übrigen Tabelle mit der Schleife
        
    for($i=0$i<$anzahl$i++)
            {
            
    // Berechnung Dauer des Treffen
                
    $dauer round((strtotime($treffen[$i][1]) - strtotime($treffen[$i][0])),2);
                
    $dauertage $dauer 60 60 24// in Minuten / in Stunden / in Tage 
    Für die Berechnung der Wartezeit habe ich dank deiner Hilfe ja die Möglichkeit gefunden, wie ich zu dem übergeordnetem array wechseln kann (-1):
    PHP-Code:
            // Berechnung Wartezeit zwischen der Treffen ohne des ersten Kontaktes
                
    if ($treffen[$i][0] == '22.09.2010') {
                    
    $wartentage 'keine Wartezeit';
                    } else {
                            
    $warten round((strtotime($treffen[$i][0]) - strtotime($treffen[$i-1][1])),2); // Berechnung Wartezeit
                            
    $wartentage round($warten 60 60 24,2); // in Minuten / in Stunden / in Tage
                        

    Doch nun bräuchte ich einen Weg, wie ich das für alle "unter arrays" machen kann. Die Anzahl der Treffen, konnte ich ja noch ganz einfach bestimmen, da dabei einfach der erste Eintrag abgezogen wurde:
    PHP-Code:
    // Anzahl der Treffen, verringert um den ersten Kontakt
                    
    $begegnungen = ($anzahl 1); 
    Dabei ist $anzahl einfach die Zählung (count) des arrays. Da in dem ersten Eintrag aber lediglich ein Tag angegeben ist, an dem man sich ja nicht traf, musste ich den Wert einfach um 1 verringern.

    Für die Berechnung aller Tage bei dem array muss ich ja auf alle "unterpunkte" zugreifen können. Durch die IF Bedingung erhalte ich ja diese 6 Zeilen
    Code :
    1
    2
    3
    4
    5
    6
    
    0   -   22.09.2010  22.09.2010  0 Tage
    1   96.04   27.12.2010  08.01.2011  12 Tage
    2   39  16.02.2011  01.03.2011  13 Tage
    3   50.96   21.04.2011  26.04.2011   5 Tage
    4   36  01.06.2011  13.06.2011  12 Tage
    5   54  06.08.2011  20.08.2011  14 Tage
    Doch die errechneten Summen werden ja erst "in der Zeile berechnet" und nicht vor der Ausgabe der gesamten Tabelle. Daher weiß ich im Moment nicht, wie ich das für sozusagen unter der Tabelle eine Summe für die Spalte Dauer und Wartezeit erstellen kann.

    Bei dem Countdown dachte ich eigentlich, ich könnte das Schema von der Tabelle auch anwenden. Doch irgendwie klappt mein Versuch nicht:
    PHP-Code:
    echo ("<p>Die Seite wurde am ".$datum." um ".$zeit." aufgerufen.</p>"); 

    // Erstellung des Countdown...
            
    echo "<p>Es sind noch W Tage X Stunden Y Minuten Z Sekunden.</p>";
            if (
    $treffen[$i][0] == ($anzahl 1) ) {
                
    $countdown = ($treffen[$i][0] - $datum);
            }
            echo 
    "<p>i: ".$i[0]."<br />";
            echo 
    "Anzahl: ".$anzahl."<br />";
            echo 
    "Datum: ".$datum."<br />";
            echo 
    "Countdown: ".$countdown."</p>"
    Das Datum und die Uhrzeit des Seitenaufrufes werden ausgegben. Mit der if Anweisung wollte ich folgendes Ausdrücken:

    Wenn$anzahl $i entspricht Dann $i minus $datum

    Das würde dann eigentlich dafür sorgen, dass das Script zu dem letzten unter array geht (durch $anzahl) und das dort dann eben die Rechnung mit dem Datum durchgeführt wird.

    Habe verschiedene Varianten ausprobiert, doch irgendwie klappt es nicht. Diech echo Ausgaben hatte ich mir da nur rein geschrieben, damit ich ein wenig sehe, was geschieht.

    Im Grunde habe ich jetzt die Baustellen / offenen Fragen:
    • Wie kann ich für die Dauer und Wartezeit eine Gesamte Summe bilden?
    • Wie kann ich einen "Countdown" zu dem letzten Array Termin erzeugen?
    Für die gesamt Summen hätte ich noch die Idee, dass ich das Ergebnis von $wartentage bzw. $dauertage in einer extra Variablen zusammen addieren könnte. Doch da wüsste ich auch nicht wie, da dies dann ja wiederum so gemacht werden müsste, dass der Wert auch erhalten bleibt, wenn die for bzw. if Anweisung von vorne beginnt. Damit wäre ich dann wieder bei der Problematik....

    Da ich das gnze ja auch mache, um mir den kram ein wenig bei zu bringen, wäre ich für erklärungen dankbar!
     

  9. #24
    Muckel1986 Muckel1986 ist offline Mitglied Gold
    Registriert seit
    Sep 2007
    Ort
    Salzgitter, Germany, Germany
    Beiträge
    190
    Guten Morgen zusammen,

    der Countdown funktioniert nun. Mein Fehler war, dass ich bei dem die "Verbindung" zum array nochmal aufbauen muss. Meine Annahme zuvor war, dass die gesetzten Variablen auch nach der for Bedingung erhalten bleiben. Man lernt halt nie aus.

    Der Countdown schaut nun so aus:
    PHP-Code:
        <!-- Zeit bis zum Treffen -->
        <p style="text-align:center; margin:1em; font-size:1.5em; color:#660000;"><strong>
        <?php
        
    // Erstellung des Countdown...
            
    for($i=0$i<$anzahl$i++) // Verbindung zum Array aufnehmen
            
    {
            if (
    $i == ($anzahl 1)) {  // Pruefen ob es das letzte Array ist. Da die Arrays ab 0 gezählt werden, bei count(); es aber mit 1 beginnt, muss hier die anzahl um 1 verringert werden.
                    
    $counter = ((strtotime($treffen[$i][0]) - $heute)); // Berechnung der Zeit zum Treffen
                    
    $counter_sec abs(strtotime($treffen[$i][0]) - $heute);    // in Sekunden
                    
    $counter_min intval($counter_sec 60);        // in Minuten
                    
    $counter_sec %= 60;    // Verhältnis zw Sekunde und Minute
                    
    $counter_h intval($counter_min 60);        // in Stunden
                    
    $counter_min %= 60;    // Verhältnis zw Minute und Stunde
                    
    $counter_d intval($counter_h 24);        // und der Tag
                    
    $counter_h %= 24;    // Verhältnis h zu Tag
                    // Die einzelnen Operatore muss ich mir allerdings noch anschauen/erklären, doch es klappt
                // Ausgabe als Counter
                
    echo "".$counter_d." Tage ".$counter_h." Stunden ".$counter_min." Minuten ".$counter_sec." Sekunden";
                } 
            }
        
    ?></strong></p>
    Dabei bin ich wie folgt vorgegangen:
    • "Verbindung" zu dem Array aufnehmen
    • Prüfen ob der letzte Array-Eintrag gewählt ist. Die $anzahl muss dabei um 1 verringert werden, da die Zählung in php (count) mit 1 beginnt, die Indexierung der arrays aber mit 0. Um dies zu berücksichtigen, habe ich ganz einfach ($anzahl - 1) genutzt.
    • Trifft das zu, dann beginnt die Rechnung. Dabei habe ich zuerst das "Anfangsdatum des Treffen" Minus "aktuellem Zeitstempel" gewählt.
    • Danach musste dieses Ergebnis nur noch in die einzelnen "Bereiche" für Tage, Stunden, Minuten, Sekunden aufgedröhselt werden. Dies klappte zum Glück dank 7 Code-Zeilen, die mir hier gegeben wurden.
    Nun habe ich also nur noch das Problem, dass ich die Gesamtsummen der Dauer und der Wartezeit erheben muss, doch damit beschäftige ich mich heute und am Wochenende.

    Lieben Gruß und vielen Dank bisher!
     

  10. #25
    Muckel1986 Muckel1986 ist offline Mitglied Gold
    Registriert seit
    Sep 2007
    Ort
    Salzgitter, Germany, Germany
    Beiträge
    190
    Zitat Zitat von Tim Bureck Beitrag anzeigen
    Hi,

    wenn du die einzelnen Einträge mittels der strtotime()-Funktion umrechnest, kannst du mit ihnen wunderbar rechnen. Die Datumse werden in den sogenannten Unix-Timestamp umgerechnet. Dieser ist ein Integerwert mit den Anzahl der Sekunden, die seit dem 1.1.1970 vergangen sind.

    Du wandelst also beide Werte in diesen Unixtimestamp um, berechnest die Differenz und rechnest die Sekunden in die gewünschte Einheit um.

    Best regards
    Danke, das habe ich nun auch genutzt. Jedoch habe ich dazu noch eine Frage und zwar, wie die Schreibweise ist, wenn ich die Uhrzeit einbinden möchte? Es gebe da ja diese Varianten:
    PHP-Code:
    $Test1 '06.08.2011 12:41:33';
    $Test2 '12:41:33 06.08.2011';

    $Zeitstempel mktime();

    $rechnung1 = (strtotime($Test1) - $Zeitstempel;
    $rechnung2 = (strtotime($Test2) - $Zeitstempel;

    echo 
    "<p>Rechnung 1: ".$rechnung1."<br />Rechnung 2: ".$rechnung2."</p>"
    Dann noch die Frage, ob man das überhaupt so in eine Bedingung schreiben kann? Sprich muss die Uhrzeit vorne oder hinten stehen? Ein Leerzeichen zwischen der Zeit und dem Datum?

    Diese Zeilen
    PHP-Code:
    // Zeit Testen
    echo "<h1>Testen der Zeiten</h1>";
    $Test1 '06.08.2011 12:41:33';
    $Test2 '12:41:33 06.08.2011';

    $Zeitstempel mktime();

    $rechnung1 = (strtotime($Test1) - $Zeitstempel);
    $rechnung2 = (strtotime($Test2) - $Zeitstempel);

    echo     
    "<p>Rechnung 1: ".$rechnung1."<br />Rechnung 2: ".$rechnung2."</p>
            <p>Rechnung 1: "
    .date("H:i:s d.m.Y"$rechnung1)."<br />Rechnung 2: ".date("H:i:s d.m.Y"$rechnung2)."</p>"
    habe ich nun getestet und erhalte folgende Ausgabe:
    Testen der Zeiten

    Rechnung 1: 694960
    Rechnung 2: 694960

    Rechnung 1: 02:02:40 09.01.1970
    Rechnung 2: 02:02:40 09.01.1970
    Daher werde ich mir nun das mit den Datum und Zeitangaben auch noch aneignen müssen.

    Lieben Gruß
     

  11. #26
    Tim Bureck Tim Bureck ist offline Mitglied Platin
    Registriert seit
    Apr 2009
    Ort
    Düsseldorf (NRW)
    Beiträge
    508
    Hi,

    PHP-Code:
    <?php

    $dt1 
    '09.01.1970 02:02:40';
    $dt2 '02:02:40 09.01.1970';

    echo 
    strtotime($dt1) . '<br />';
    echo 
    strtotime($dt2);
    Ergibt beides 694960. Da erstere Schreibweise bei uns sicher verbreiteter ist, kannst du die auch benutzen.

    Best regards
     

Ähnliche Themen

  1. Antworten: 1
    Letzter Beitrag: 23.01.08, 12:58
  2. Antworten: 2
    Letzter Beitrag: 31.08.06, 12:35
  3. Zeiten berechnen
    Von chriha im Forum PHP
    Antworten: 13
    Letzter Beitrag: 26.12.05, 01:23
  4. verschieden pages zu verschiedenen zeiten
    Von tumid im Forum Javascript & Ajax
    Antworten: 5
    Letzter Beitrag: 19.12.02, 18:45

Stichworte