Ich versuche hier etwas relativ Einfaches zu tun. Grundsätzlich habe ich eine Tabelle mit einer Reihe von Zeilen darin mit einem Zeitstempel markiert (Format: 2009-05-30 00:14:57).Wie Berichte nach Monat mit PHP und MySQL zu brechen?
Was ich will tun ist, ist eine Abfrage, die alle Zeilen zieht, und teilt sie durch den Monat, damit ich mit einem Endergebnis links bin wie:
Februar
rowID Namen bestellen Datum
rowID Name Bestelldatum
rowID Name Bestelldatum
Januar
rowID Name Bestelldatum
rowID Name Bestelldatum
ROWI D Name Bestelldatum
usw.
Ich habe ein paar vage Ideen, wie dies zu tun - sie scheinen nur langatmig.
Eine der Möglichkeiten wäre, eine Abfrage für jeden Monat durchzuführen. Ich würde ableiten, was der aktuelle Monat in PHP ist, und dann ein for() erstellen, das eine bestimmte Anzahl von Monaten zurückreicht.
mag:
$currentmonth = 8;
$last6months = $currentmonth - 6;
for($i = $currentmonth; $i == $last6months; $i--) {
$sql = 'SELECT * FROM reports WHERE MONTH(reports.when) = $currentmonth ';
$res = mysql_query($sql);
// something would go here to convert the month numeral into a month name $currentmonthname
echo $currentmonthname;
while($row = mysql_fetch_array($res)) {
// print out the rows for this month here
}
}
Gibt es einen besseren Weg, dies zu tun?
können Sie mir ein Beispiel nennen? – SamotnyPocitac