Gesamt-Zahl ausgeben

Hallo,

folgendes - ich habe eine Abfrage welche mir ausgibt welcher Kunde mir an welche meiner Adressen Mails schickt.
Die Abfrage musste ich etwas aus sicherheitstechnischen Gründen änder, deshalb schaut die etwas doof aus, seis drum im Prinzip hoffe ich ihr versteht was ich will/mein :smile:

$dbverbindung = mysql\_connect ($host, $user, $password);
 $dbanfrage = ("select kunde,kundename,kundeID , count('id') AS gesamtzahl, count(\*)as count from daten join
 daten\_data on daten.id=daten\_data.id
 join kunde on kundeId=kunde.id join kunde\_firma on kunde.id=kunde\_firma.id
 where empfängerId='".$\_POST['empfänger']."'
 and 
 deliveryTime \>='2009-".$\_POST['monat']."-01 00:00:00' 
 and
 deliveryTime ";
 echo "";
 echo "$ausgabe[kundeId]";
 echo "";
 echo "$ausgabe[kundename1]";
 echo "";
 echo "$ausgabe[empfänger]";
 echo "";
 echo "$ausgabe[count]";
 echo "";
 //echo "$ausgabe[gesamtzahl]";
 }
 }
 }
 echo mysql\_error();

Also, verschieden Kunden schicken mir Mails.

Heisst Kunde 1 schickt mir 5 Mails, Kunde 2 schickt 8, Kunde 3 schickt 10.

Also insgesamt 23 Mail.

Meine Ausgabe gibt mir aber nur die Zeile aus -

Kunde Anzahl
Kunde 1 | 5
Kunde 2 | 8
Kunde 3 | 10

Was ich noch zusätzlich brauche ist praktisch die 23, also die gesamten Mails welche ich im Monat bekomme.

Ich habe es mit UNION versucht - also dann quasi die Abfrage

select count(\*) from daten
empfängerId='".$\_POST['empfänger']."'
 deliveryTime \>='2009-".$\_POST['monat']."-01 00:00:00' 
 and
 deliveryTime 
mitangehängt an die erste. Aber das funtkioniert nicht, hier bringt er mir Sy

aus sicherheitstechnischen gründen solltest du dich erst mal um die Abfrage selbst kümmern,

http://de.wikipedia.org/wiki/SQL-Injection

select count(\*) from daten
empfängerId='".$\_POST['empfänger']."'
deliveryTime \>='2009-".$\_POST['monat']."-01 00:00:00'
and
deliveryTime 

da fehlt ein WHERE

Gruß
while(...)
{
$countItems += $ausgabe[count];
}
echo "Gesamtzahl: ".$countItems;

Diese 2 Zeilen ergänzen.

Gruß Sebastian

btw mysql_db_query gibt es nicht mehr

http://de3.php.net/manual/de/function.mysql-db-query…

Hallo

select count(*) from daten
empfängerId=’".$_POST[‚empfänger‘]."’
deliveryTime >=‚2009-".$_POST[‚monat‘]."-01 00:00:00‘
and
deliveryTime

Das könntest du als zweite Abfrage an den Server schicken.
Wenn du es aber mit Union an die erste Abfrage anhängen willst, dann müssen die Spaltenanzahlen übereinstimmen. Also etwa so:

select '' as kunde, 'gesamt' as kundename, 0 as kundeID , 0 gesamtzahl, count(\*) as count from daten

Oder du rechnest die einzelnen Zahlen aus der ersten Anfrage mit PHP zusammen.
Also in der while-Schleife

$gesamtzahl += $ausgabe[count];

Gruß Johannes

Funktioniert
Ja, wunderbar.
Das Zusammenzählen war auch mein erster Gedanke, wollte es aber mit ner Abfrage lösen, doch wenns ned mag…:smile:)

Vielen Dank

Gruß Rolf