46356
Jun 28, 2009, updated at 16:56:32 (UTC)
4510
2
0
2 Daten miteinander vergleichen? - Fehler?
Schönen Abend.
Um verschiedene Bilanzen auszugeben, habe ich mit PHP ein kleines Script erstellt:
Es wird das aktuelle Datum vom Server genommen und mit mktime einmal 3 Monate und einmal ein Jahr zurückgerechnet.
Nun sollte logischerweise der Jahresumsatz größer gleich den anderen Umsätzen sein. Dies ist jedoch nicht der Fall [...].
--> Der 3 Monats Rückblick ist am größten und der Tages bzw. der Rahresrückblick gleich groß :o ?
Die 3 Monate Rückschau funktioniert.
Nur die Jahres Rückschau nicht.
Freue mich auf Antworten,
Alex
Um verschiedene Bilanzen auszugeben, habe ich mit PHP ein kleines Script erstellt:
$date_today = date("d.m.Y"); $time = date("H.i");
$mktimev1 = mktime(0, 0, 0, date("m")-3, date("d"), date("Y"));
$date_3mago = date("d.m.Y",$mktimev1);
$mktimev1 = mktime(0, 0, 0, date("m"), date("d"), date("Y")-1);
$date_12mago = date("d.m.Y",$mktimev1);
// Article Query - 1DAY
$abfrage = "SELECT ID, Datum, Status, Beschreibung, Preis FROM article WHERE Status = 'Verkauft' AND Datum = '$date_today'";
$ergebnis = mysql_query($abfrage) or die(mysql_error()); while($row = mysql_fetch_object($ergebnis)) { $sumtoday += $row->Preis; }
// Article Query - 3MO
$abfrage = "SELECT ID, Datum, Status, Beschreibung, Preis FROM article WHERE Status = 'Verkauft' AND Datum >= '$date_3mago' AND Datum <= '$date_today'";
$ergebnis = mysql_query($abfrage) or die(mysql_error()); while($row = mysql_fetch_object($ergebnis)) { $sum3mo += $row->Preis; }
// Article Query - 1YEAR
$abfrage = "SELECT ID, Datum, Status, Beschreibung, Preis FROM article WHERE Status = 'Verkauft' AND Datum >= '$date_12mago' AND Datum <= '$date_today'";
$ergebnis = mysql_query($abfrage) or die(mysql_error()); while($row = mysql_fetch_object($ergebnis)) { $sum1Y += $row->Preis; }
echo $sumtoday."<br>".$sum3mo."<br>".$sum1Y;
Es wird das aktuelle Datum vom Server genommen und mit mktime einmal 3 Monate und einmal ein Jahr zurückgerechnet.
Nun sollte logischerweise der Jahresumsatz größer gleich den anderen Umsätzen sein. Dies ist jedoch nicht der Fall [...].
--> Der 3 Monats Rückblick ist am größten und der Tages bzw. der Rahresrückblick gleich groß :o ?
Die 3 Monate Rückschau funktioniert.
Nur die Jahres Rückschau nicht.
Freue mich auf Antworten,
Alex
Please also mark the comments that contributed to the solution of the article
Content-Key: 119257
Url: https://administrator.de/contentid/119257
Printed on: April 25, 2024 at 05:04 o'clock
2 Comments
Latest comment
Hallo,
drei Dinge fallen auf:
1. Der Code ist bescheiden formatiert. Bei einer Anweisung pro Zeile und Einrücken von Blocks (z.B. while-Schleife) sieht man Fehler viel leichter
2. Die $sum-Variablen werden gleich mit += verwendet. Es schadet überhaupt nichts, sie vorher auf 0 zu setzen.
3. Die Summen in PHP zu bilden ist nur begrenzt geschickt. MySQL kann das letztlich besser. SELECT SUM(Preis) FROM article WHERE status = 'Verkauft' AND DATUM...
Und wenn du dann zum Debugging $abfrage ausgeben lässt bin ich mir sicher, der Fehler ist schnell gefunden.
Gruß
Filipp
drei Dinge fallen auf:
1. Der Code ist bescheiden formatiert. Bei einer Anweisung pro Zeile und Einrücken von Blocks (z.B. while-Schleife) sieht man Fehler viel leichter
2. Die $sum-Variablen werden gleich mit += verwendet. Es schadet überhaupt nichts, sie vorher auf 0 zu setzen.
3. Die Summen in PHP zu bilden ist nur begrenzt geschickt. MySQL kann das letztlich besser. SELECT SUM(Preis) FROM article WHERE status = 'Verkauft' AND DATUM...
Und wenn du dann zum Debugging $abfrage ausgeben lässt bin ich mir sicher, der Fehler ist schnell gefunden.
Gruß
Filipp