Mailinglisten-Archive |
Hallo, > ---------- > Von: ron.opitz_(at)_dts.de[SMTP:ron.opitz_(at)_dts.de] > > lfdnr paket menge > 1 10 5 > 2 10 6 > 3 11 2 > 4 11 8 > 5 11 9 > 6 12 3 > 7 12 5 > > Ich möchte diese Daten auslesen und pro Paketnr in ein Array schreiben. > (Hat aber nichts mit der Post zu tun :-)) > ungetestet: select * from tabelle; while ($a_erg = mysql_fetch_row...) # in $a_erg[1] ist die paketnr, in $a_erg[2] die menge $lol_return[$a_erg[1]][] = $a_erg[2]; } $lol_return enthält dann ein Ergebnis in der Form $lol_return[<Paket-Nummer>][<laufende Nummer der Menge, start bei 0>] = Menge. Problem ist nur, eine Schleife über die Paketnummern zu machen, da es ja sein kann, daß es die Nummer 9 gar nicht gibt... Eleganter wäre aber als Rückgabe eine andere Form eines LoLs (LoL=List of Lists, so was wie mehrdimensionale Strukturen ;) while ($h_erg = mysql_fetch_array...) # in $h_erg['paket'] ist die paketnr, in $h_erg['menge'] die menge $lol_return[$h_erg['paket']] = $h_erg['menge']; } Dann hast du ein Hash $lol_return[<paketnummern>], der als Value ein Array hat. Mit ... for each key ... über $lol_return kommst du an alle Paketnummern, mit einer Schleife über $lol_return[<paketnummer>] kommst du an alle Mengen dieses Paketes. Ok, ist alles ganz verwirrend, aber wenn man es mal verstanden hat, erleichtert es viel ;-) Viele Grüße, Mathias > Ich bin für jeden Denkanstoß sehr dankbar, auch eine fertige Lösung > wäre nicht schlecht. > > Danke im Voraus ... > > Gruss Ron > > -- > ** Durchgehend geöffnet: http://www.php-center.de ** > Die PHP-Liste: mailto:php_(at)_php-center.de > http://infosoc.uni-koeln.de/mailman/listinfo/php >
php::bar PHP Wiki - Listenarchive