Carroccio: array_sum()

Hallo,

ich habe eine Frage zu folgendem script:

<?php
$result=mysql_fetch_row("SELECT werte FROM array");
 while ($row = mysql_fetch_row ($result)) {
 }

$a = array($row);
 echo 'Summe von $a = ' .array_sum($a) . "<br>";

?>

Dieses Script gibt mir immer null aus. Das Ziel ist es, den Inhalt der Spalte werte in ein Array zu schreiben und dieses anschliessend zusammenzuzählen. Bin ich überhaupt auf dem richtigen Weg, oder gibt es möglichkeiten das einfacher zu realisieren?

Gruss und Danke
SC

  1. Hi!

    Dieses Script gibt mir immer null aus.

    Ja, weil der Inhalt von $row in jedem Schleifendurchlauf überschrieben und nicht gepeichert wird.

    Das Ziel ist es, den Inhalt der Spalte werte in ein Array zu schreiben und dieses anschliessend zusammenzuzählen. Bin ich überhaupt auf dem richtigen Weg, oder gibt es möglichkeiten das einfacher zu realisieren?

    Ja, guck Dir mal die Funktion "SUM" an, hierüber annst Du MySQL die Rechenarbeit überlassen und nur das Ergebnis auslesen: http://www.mysql.com/doc/de/Group_by_functions.html#IDX1311

    Lies auch:
    http://www.dclp-faq.de/q/q-sql-aggregation.html
    http://aktuell.de.selfhtml.org/tippstricks/datenbanken/having/index.htm

    Grüße
    Andreas

    1. Vielen Dank für die Antwort,

      aber das Problem ist nicht die Summe, sondern das Array, wie kann ich diesem sagen er soll die verschiedenen Werte speichern und anschliessend ausgeben.

      Gruss
      SC

      1. Hallo!

        aber das Problem ist nicht die Summe, sondern das Array,

        Wenn Du das ganze doch per SQL machen kannst wäre das wohl deutlich effizienter und elegenater, aber gut.

        wie kann ich diesem sagen er soll die verschiedenen Werte speichern und anschliessend ausgeben.

        Wenn Du die Summe der Werte in einem Array berechnen willst, musst Du immer den Wert des Feldes über das Du summieren willst als neues Element an dsen Array anhängen.

        Einen Wert anhängen kannst Du mit:

        $arr = array();
        while(...) {
          $arr[] = $wert;
        }

        steht hier:http://de3.php.net/manual/de/language.types.array.php

        Grüße
        Andreas