Hallo!
vorweg: ich beziehe mich in meiner Frage auf einen anderen Thread von mir:
http://www.tutorials.de/tutorials183350.html
Zur Situation:
Ich habe einige Datenbankabfragen hinterneinander die so aussehen:
Dabei wird jeweils ein anderes Feld der Tabelle abgefragt.
Mit läuft ein Zähler $summe, der die Werte von $b[1] addiert, sowie ein Zähler $teiler, der die Anzahl an ausgebenen $b addiert. Diese Zähler werden am Ende dividiert, um einen Durchschnitt aus den Werten aller Abfragen zu ermitteln.
Nun zum Problem:
Ich habe insgesamt 8 Werte à 100 verteilt auf 9 Abfragen wovon eine Abfrage aber gar keine Daten enthält, da das Feld leer ist. Der Schnitt sollte also logischerweise 100 ergeben. Nun ergibt der berechnete Schnitt aus $summe / $teiler aber 88,88888...
Ich weiß nun nicht mehr weiter...
Eigentlich dürfte $teiler die Abfrage die keinen Wert zurück gibt doch gar nicht mit einbeziehen.Das tut er aber offensichtlich, denn sonst kann ich mir den Schnitt nicht erklären.
vorweg: ich beziehe mich in meiner Frage auf einen anderen Thread von mir:
http://www.tutorials.de/tutorials183350.html
Zur Situation:
Ich habe einige Datenbankabfragen hinterneinander die so aussehen:
PHP:
<?php
$abfrage = "SELECT er FROM projekte WHERE user_id = '$_SESSION[user_id]' AND pid = '$_POST[pid]'";
//echo $ausgabe;
$ausgabe = mysql_query($abfrage);
$num = mysql_num_rows($ausgabe);
if ($num > 0) {while ($row = mysql_fetch_object($ausgabe)){
$a = $row->er;
//echo $a;
}}
$a = explode("|", $a);
$i = 0;
$z = 0;
for($i=0;$i<count($a);$i++){
$b = explode(":",$a[$i]);
?>
<tr bgcolor="#FFFFFF" class="nav_sub">
<td width="30%" valign="top"><img src="_images/spacer.gif" width="3" border="0">
<?=$b[0];?></td>
<td width="70%" valign="top"><img src="_images/spacer.gif" width="3" border="0">
<?=$b[1];?>
%</td>
</tr>
<?php
$summe = $summe + $b[1];
}
if($num > 0)
$teiler = $teiler + count($a);
?>
Dabei wird jeweils ein anderes Feld der Tabelle abgefragt.
Mit läuft ein Zähler $summe, der die Werte von $b[1] addiert, sowie ein Zähler $teiler, der die Anzahl an ausgebenen $b addiert. Diese Zähler werden am Ende dividiert, um einen Durchschnitt aus den Werten aller Abfragen zu ermitteln.
Nun zum Problem:
Ich habe insgesamt 8 Werte à 100 verteilt auf 9 Abfragen wovon eine Abfrage aber gar keine Daten enthält, da das Feld leer ist. Der Schnitt sollte also logischerweise 100 ergeben. Nun ergibt der berechnete Schnitt aus $summe / $teiler aber 88,88888...
Ich weiß nun nicht mehr weiter...
Eigentlich dürfte $teiler die Abfrage die keinen Wert zurück gibt doch gar nicht mit einbeziehen.Das tut er aber offensichtlich, denn sonst kann ich mir den Schnitt nicht erklären.