Einträge pro Tag aus der Datenbank anzeigen

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

  • Einträge pro Tag aus der Datenbank anzeigen

    Hallo.

    Ich habe meiner MySQL-Datenbank eine Tabelle mit den Feldern date, type, und value. Die Daten im Feld date sind im Format "YYYY-mm-dd HH:ii:ss" gespeichert, die Daten in den Feldern type und value sind jeweils Strings.

    Für eine Statistik-Seite würde ich mit PHP eine Auswertung pro Tag erstellen, so dass ich zum Beispiel folgendes ausgeben kann:

    "2009-10-14: 23 Einträge mit value=foo und 244 Einträge mit value=bar"

    Wie sollte ich da am besten vorgehen?

  • #2
    Hallo,

    für sowas kann man [FONT="Courier New"]group by ... (with rollup)[/FONT] verwenden. Den Datumsteil des Zeitstempels bekommst du mit der date-Funktion. Das "with rollup" macht Sinn, wenn du auch gleich die Gesamtanzahl der Einträge pro Tag wissen willst.

    Gruß,

    Amica
    [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
    Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
    Super, danke!
    [/COLOR]

    Kommentar


    • #3
      Danke für die schnelle Hilfe, ich werde es gleich mal ausprobieren.

      Kommentar


      • #4
        Wie kann ich diejenigen Tage anzeigen anzeigen lassen, an denen nichts eingetragen wurde?

        Kommentar


        • #5
          Hallo,

          wenn du nicht eine Datumstabelle hast, in der alle Tage drin stehen (macht normalerweise eh keinen Sinn), musst du mit PHP diese Daten generieren und einzeln selektieren.

          Gruß,

          Amica
          [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
          Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
          Super, danke!
          [/COLOR]

          Kommentar


          • #6
            Hmm..
            Irgentwie komme ich hier nicht weiter, diese Datumsfunktionen wonnen nicht so wie ich.
            Im Moment verwende ich folgenden Code:

            PHP-Code:
            <?php
            $query_live 
            "SELECT * FROM `" $db_prefix "live` ORDER BY `date` DESC";
                
            $result_live mysql_query($query_live) or die(mysql_error());
                    
                
            $dates = array(
                                
            => array(
                                            
            "dat" => date("Y-m-d"), 
                                            
            "cnt" => 12
                                        
            )
                                );
                
                while(
            $live mysql_fetch_object($result_live))
                {
                    
            $dateParts split(" "$live->date);
                    
            $date $dateParts[0];
                    
                    if(
            $date != $dates[count($dates) - 1])
                    {
                        
            $index count($dates);
                        
            $dates[$index]["dat"] = $live->date;
                        
            $dates[$index]["cnt"] = mysql_num_rows(mysql_query("SELECT COUNT(*) FROM `" $db_prefix "live` WHERE `date` = '" $date "'"));
                    }
                }
                
                echo 
            mysql_error();
            ?>
            <pre>
            <?=print_r($dates)?>
            </pre>
            Folgendes kommt dabei heraus: LINK
            Kann mir jemand helfen? Wie gesagt, hätte ich gerne für jeden Tag die Ausgabe: "2009-10-14: 23 Einträge mit value=foo und 244 Einträge mit value=bar"
            Zuletzt geändert von snorpey; 01.11.2009, 00:32.

            Kommentar


            • #7
              Hallo,

              in deiner Abfrage sehe ich kein group by und im PHP-Code keine Schleife, die Datumswerte erzeugt. Solange du die Dinge, die dir bereits gesagt wurden, nicht berücksichtigst, ist es nicht möglich, dir weiterzuhelfen. Ich könnte dir jetzt nochmal dasselbe erzählen, was ich dir in den letzten Beiträgen schon gesagt habe, aber helfen würde das doch auch nicht.

              Wenn du dich mit den Antworten beschäftigt hast und ich dafür wenigstens Ansätze im Code sehe oder aber konkrete Fragen dazu lese, kann ich dir gerne weiterhelfen.

              Gruß,

              Amica
              [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
              Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
              Super, danke!
              [/COLOR]

              Kommentar

              Lädt...
              X