Mailinglisten-Archive |
Ich fasse es nicht !!! Mir ist soeben ein riesiger Kronleuchter aufgegegangen !!! Dank Oli ! die anzahl $maxgeräte, wie er unten schreibt, ergibt sich dann aus der anzahl der zeilen in der mysql db ! floglich muss das array immer so oft durchlaufen werden, dabei können einzelne wert set und unset sein. und damit man nicht immer das ganze array angezeigt bekommt, kann man per if (isset($array[$i])) sagen, was angezeigt werden soll ! <?php Kiri(); ?> ----- Original Message ----- From: Oliver Kummerow <naklar_(at)_altavista.net> To: Cyrill Schumacher <webmasterbhs_(at)_bluewin.de> Sent: Friday, September 10, 1999 9:42 PM Subject: Re: [php] arrayprobleme .... Hallo Cyrill, > zu 1 aber hast du keine lösung ????????? > ich schon, wenn ich wüsste wie ein neues array kommt... > folgendes, vielleicht ist dir klar was ich damit meine mit neuem array: > das ganze ist in elseif "ändern" Alles andere ausser 1 ist mir nur so am Rand aufgefallen. 1. ist ganz klar der core-Fehler. Ich versuche mal zusammenzufassen: wenn $changegeraet[3]="sharp-gerät" ist, dann kommt das aus der-URL-Variablen, in der Du dbgeraet%5B3%5D=sharp-ger%E4t übergeben hast. Ein Array ist ein Konstrukt, das eigentlich nicht in eine URL-Zeile gehört. PHP macht flexiblerweise wieder ein Array draus, aber initialisiert natürlich die vorhergehenden und zwischendrin fehlenden Werte nicht. D.h. wenn Du den 3. Eintrag auswählst, ist count($Array)==1. Du zählst in der Schleife aber über den Index hoch: 0-1-2-3-4 usw. Wenn count=1, gibt es nur einen Schleifendurchlauf und $dbgeraet[3] wird nicht gefunden, da nur $dbgeraet[0] erweischt wird. Ergibt i.ü. dann den Initialisierungsfehler, weil $dbgeraet[0] unset ist. Du solltest vielleicht versuchen, count nicht zu verwenden und einfach bis zur maximalen Geräteanzahl hochzuzählen, dann wird $dbgeraet[3] auch gefunden: for ($x = 0; $x < $maxgeraete; $x++ ) > gerade ausprobiert: > klickt der user 1, 4 und 5 an zeigt mir count zwar > 3 an, aber es wird nur das 1. Produkt ausgeben ... > obwohl die schleife hätte dreimal durchlaufen werden sollen.... > > <?php Kiri(); ?> > JA! Natürlich. Mit count==3 ist und bleibt $Array[0] UNSET, $Array[1] UNSET, $Array[2] UNSET und hier ist count zu Ende. $Array[4] und $Array[5] werden nicht mehr abgefragt. Dämmert jetzt was? Mit freundlichen Grüßen, Oliver Kummerow email: naklar_(at)_altavista.net
php::bar PHP Wiki - Listenarchive