2016-04-03 18 views
1

I diese foreach Schleife innerhalb einer while-Schleife verschachtelt habe:Ausgeben jeden Wert in Array

foreach ($_SESSION['arrayPoints'] as $value) { 
echo $value; 
} 

Dies gibt die alle in dem Array gespeicherten Werte, 543216, wie unten dargestellt, aber wie die foreach Schleife in der ist while-Schleife wird wiederholt 543216 bis es keine weiteren Reihen sind:

TEST DATA- output of the foreach loop shown (543216)

I die foreach Schleife zur Ausgabe jeden Wert in dem Array separat für jede Reihe benötigen.

So zum Beispiel (mit dem Bild oben und die Array-Werte von 543216): Ich brauche die Ausgabe zu 5 für die erste Zeile, dann 4 für die zweite Zeile, 3 für die dritte Zeile, 2 vierte Zeile und so weiter (wie unten gezeigt).

Dave Jackson |TEXT BOX| |DROP-DOWN| 5 
Bobby Brown |TEXT BOX| |DROP-DOWN| 4 
Daniel Grey |TEXT BOX| |DROP-DOWN| 3 
Richard Green |TEXT BOX| |DROP-DOWN| 2 
David Bolt |TEXT BOX| |DROP-DOWN| 1 
Jason Moore |TEXT BOX| |DROP-DOWN| 6 

Wie kann das gemacht werden?

EDIT:

print_r($_SESSION['arrayPoints']); 

Ausgänge:

Array ([0] => 5 [1] => 4 [2] => 3 [3] => 2 [4] => 1 [5] => 6) 

-Der While-Schleife: while ($data = mysqli_fetch_assoc($result)) { ist eine Abfrage Aktion holen.

- Jede Zeile im Bild oben ist in der Reihenfolge mit jeder Nummer im Array. Also erste Reihe = 5, zweite Reihe = 4 und so weiter.

Vielen Dank im Voraus.

+3

Es ist in _what_ 'while' Schleife? Bitte poste mehr von dem umgebenden relevanten Code. Insbesondere, wenn die while-Schleife eine Abfrage-Abrufaktion ist, teilen Sie uns bitte auch mit, wie sich die Werte in '$ _SESSION ['arrayPoints]] auf die Werte beziehen, die in der while-Schleife abgerufen werden. –

+0

@MichaelBerkowski Ich habe die Frage bearbeiten – SubZero

Antwort

1

Ihr aktueller Code besagt, dass Sie jede Nummer für jede aus der DB abgerufene Daten drucken möchten, was nicht Ihren Vorstellungen entspricht. Sie möchten für jede Daten eine einzelne Nummer drucken. Also vergiss die Foreach. Was Sie brauchen, ist:

wo $ i ist die aktuelle Zeile wird abgerufen (Sie müssen es setzen und inkrementieren).

+0

Dies ist, dass ich getan habe '$ i = 0; echo $ _SESSION ['arrayPoints'] [$ i]; $ i ++; ' Dies gibt die erste Zahl aus, die nur im Array gespeichert ist. Ist meine Syntax und Logik korrekt? – SubZero

+0

Sie müssen $ i vor der Schleife initialisieren, sonst wird es immer auf 0 gesetzt. – rcpinto

+0

Ich hatte ein Problem bei der Initialisierung von $ i, wie würde die obige Syntax aussehen? – SubZero

Verwandte Themen