Meisten User an welchem Tag

Ich glaube, du wirst nicht um das Zählen der Besucher an jedem Tag herumkommen. Und dann einfach die Tage vergleichen.
Du beginnst also mit dem ersten Datum, und schreibst in eine Variable, wieviel Besucher waren. Dann zum zweiten Tag. Wenn dort mehr Besucher waren, ersetzt du einfach den Wert. Wenn nicht, soll er den Wert belassen und zum nächsten Tag gehen.
 
Wird das auch so in Foren gemacht? Hab im PHPbb Forum noch nicht die passende Codestelle gefunden. Dort könnt ich dann einfach nachschauen!
 
Das weiß ich nicht. Die Frage ist nur, ob solche Boards diese Überprüfung nicht gleich jeden Tag vornehmen und irgendwo in der Datenbank den Tag gespeichert haben, an dem die meisten User waren.
Oder ob die Besucher gleich nach Tagen sortiert gespeichert werden. Also so:

21.06.2005 -> 205
22.06.2005 -> 132
...
 
Soll ichs dann so machen, dass ich 4 Spalten habe.
z.B.:
BEST_DATE | BEST_NUMBER | AKT_DATE | AKT_NUMBER
(AKT = aktuell)
und ich dass dann immer aktualisiere?
 
Versuche doch mal einen GROUP BY zu machen nach dem Datum. Dazu noch ein Feld das count(*) oder so macht und dann den MAX Wert nehmen. Dann solltes du doch das Datum mit einer SQL-Abfrage erhalten...

MFG
redX
 
könntest du mir da vll ein Beispiel geben, wie das aussehen könnte, oder vielleicht einen Link auf eine Seite, wo ich mir das anschauen kann, wie das mit Group By genau funktioniert (außer php.net :D)?
 
Hab das jetzt so gemacht.
Tabelle:
ID | DATE | ZAHL | IP

Abfrage:
SELECT DATE,SUM(ZAHL) FROM test GROUP BY DATE

liefert:
DATE SUM(ZAHL)
20.05.2005 3
23.05.2005 1
23.06.2005 2

Wie kann ich dann jetzt herausfinden, welches die höchste Zahl ist? Geht das vielleicht auch direkt bei der Abfrage?
 
Summe addirt logischerweise zusammen.

SELECT DATE,COUNT(DATE) as number FROM test GROUP BY DATE

Dann hast du noch ein Feld welches "number" heisst. Dort wird angezeigt wie viele zu dem Datum online waren. Vieleicht kannst du noch einen MAX() dazu machen. Bin mir aber nicht sicher. Sonst sortierst du das ganze einfach absteigend, also "SORT BY number DESC". Dann ist einfach der erste Datensatz derjenige Tag mit den meisten Usern. Ich hoffe das stimmt ^^

MFG
redX
 
Nach dem zuletzt geposteten Bsp. habe ich keine Spalte mehr Namens number. Hab da jetzt auch nochmal n ORDER BY ZAHL reingehauen. Jetzt habe ich auch den höchesten Wert oben.
Wenn ich dann jetzt in meinem Code $result = mysql_fetch_assoc($query) schreibe, müsste $result doch automatisch den höchsten Wert bekommen, oder?
 
Zurück