Stundendiagram

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

  • Stundendiagram

    Ich möchte mir folgendes ausgeben lassen:
    PHP-Code:
    <table>
    <tr>
        <td width="100%" colspan="2"><font class="font8">Stundendiagram</font></td>
    </tr>
    <tr>
        <td><font class="font8">Uhrzeit</font></td>
        <td><font class="font8">Grafiken</font></td>
    </Tr>
    <?
    for($i=0;$i<24;$i++)
        {
        if($i <= 9)
            {
            $zeit = "0".$i;
            }
        else
            {
            $zeit = $i;
            }
        $re3_2 = mysql_query("SELECT DATE_FORMAT(grafik_datum,'%d.%m.%y %H:%i:%s') AS b_tag1, COUNT(grafik_id) AS SummeStd FROM grafik_view WHERE (grafik_datum BETWEEN '".$zeit.":00:00' AND '".$zeit.":59:59') GROUP BY view_id_")or die(mysql_error());
        while($ro3_2 = mysql_fetch_array($re3_2))
            {
            echo"<tr>
                <td><font class=\"font8\">$zeit</font></td>
                <td><font class=\"font8\">$ro3_2[SummeStd] Grafik geladen</font></td>
            </Tr>";
            }
        }
    ?>
    </table><br>
    Das Feld in der DB grafik_datum ist Timestamp?
    Jetzt bekomme ich nichts augegeben, ausser der Überschrift.
    *winks*
    Gilbert
    ------------------------------------------------
    Hilfe für eine Vielzahl von Problemen!!!
    http://www.1st-rootserver.de/

  • #2
    Hier die DB-Struktur:
    PHP-Code:
    CREATE TABLE grafik_view (
      
    view_id int(11NOT NULL auto_increment,
      
    seite_id int(11NOT NULL default '0',
      
    grafik_id varchar(11NOT NULL default '0',
      
    grafik_datum timestamp(14NOT NULL,
      
    PRIMARY KEY  (view_id)
    TYPE=MyISAM;

    #
    # Daten für Tabelle `grafik_view`
    #

    INSERT INTO grafik_view VALUES (201'120_7'20030424103135);
    INSERT INTO grafik_view VALUES (191'120_7'20030424103133);
    INSERT INTO grafik_view VALUES (181'120_6'20030424103120);
    INSERT INTO grafik_view VALUES (171'120_7'20030424103116);
    INSERT INTO grafik_view VALUES (161'120_7'20030424102728);
    INSERT INTO grafik_view VALUES (211'120_7'20030424103221);
    INSERT INTO grafik_view VALUES (221'120_7'20030424103235);
    INSERT INTO grafik_view VALUES (231'120_7'20030424103239);
    INSERT INTO grafik_view VALUES (241'120_7'20030424103259);
    INSERT INTO grafik_view VALUES (251'120_6'20030424103301); 
    *winks*
    Gilbert
    ------------------------------------------------
    Hilfe für eine Vielzahl von Problemen!!!
    http://www.1st-rootserver.de/

    Kommentar


    • #3
      Ich würde sowas probieren ... ist aber nicht getestet ... !
      PHP-Code:
      <table>
          <tr>
              <td width="100%" colspan="2"><font class="font8">Stundendiagram</font></td>
          </tr>
          <tr>
              <td><font class="font8">Uhrzeit</font></td>
              <td><font class="font8">Grafiken</font></td>
          </tr>
      <?

      // Erstmal mit füllen ...
      $last = NULL;
      if ( $res = mysql_query("SELECT grafik_id, HOUR(grafik_datum) stunde, count(*) counted FROM grafik_view GROUP BY grafik_id, stunde ORDER BY grafik_id, stunde") ) {
          while ( $row = mysql_fetch_object($res) ) {
              if ( !isset($last) || $last != $row->grafik_id ) {
                  for ( $i = 0; $i < 24; $i++ ) $graphics[$row->grafik_id][$i] = 0;
                  $last = $row->grafik_id;
              }
              $graphics[$row->grafik_id][$row->stunde] = $row->counted;
          }
          mysql_free_result($res);
      }

      // ... und dann ausgeben ...
      foreach ( $graphics AS $id => $hours ) {
          foreach ( $hours AS $hour => $counted ) {
      ?>
          <tr>
              <td><font class=\"font8\"><?=$id?><?=$hour?></font></td>
              <td><font class=\"font8\"><?=$counted?> Grafik(en) geladen</font></td>
          </tr>
      <?php
          
      }
      }
      ?>
      </table>
      Das SQL sollte passen ... zumindest tut's das mit Deinen Beispieldaten ... das PHP ist 'ne Idee ...
      carpe noctem

      [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
      [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

      Kommentar


      • #4
        EDIT:
        ich kann nicht lesen
        Beantworte nie Threads mit mehr als 15 followups...
        Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

        Kommentar


        • #5
          Die Idee ist genau richtig gewesen. Dank dir.
          *winks*
          Gilbert
          ------------------------------------------------
          Hilfe für eine Vielzahl von Problemen!!!
          http://www.1st-rootserver.de/

          Kommentar

          Lädt...
          X