Onkel Schnitzel: JSON.stringify mit mehrdimensionalem Array -> undefined

Beitrag lesen

Also dein Code macht in einem kleinen Test keine Schwierigkeiten.

Ja, das sieht gut aus.

Die Funktion befindet sich in einer while-Schleife einer MySQL-Abfrage und wird bei jedem Durchlauf aufgerufen und mit den entsprechenden Werten aus der DB gefüllt.

Huch, läuft dein JavaScript auf dem Server (Node.js o.Ä)? Sonst frage ich mich, wie du über eine MySQL-Ergebnis-Menge iterierst.

Nee, ganz normales JavaScript. In der while-Schleife (PHP, das hätte ich vielleicht dazuschreiben sollen), befindet sich ein Script-Bereich mit der Funktion:

  
createSpielerdatenArray(<?=$id?>,<?=$spielzeit?>,<?=$eingew?>,<?=$ausgew?>,<?=$tore?>,<?=$gelb?>,<?=$gelb_rot?>,<?=$rot?>);  

Zur Zeit wird genau das hier erzeugt:

  
createSpielerdatenArray(28,0,0,0,0,0,0,0);  
createSpielerdatenArray(19,0,0,0,0,0,0,0);  
createSpielerdatenArray(27,0,0,0,0,0,0,0);  
createSpielerdatenArray(11,0,0,0,0,0,0,0);  
createSpielerdatenArray(4,0,0,0,0,0,0,0);  
createSpielerdatenArray(10,0,0,0,0,0,0,0);  
createSpielerdatenArray(18,0,0,0,0,0,0,0);  

Das liefert mir dann in deiner Testdatei auch das gleiche Array, wie in meinem Script. Nur das in der Testfile JSON.stringify funktioniert, im Gegensatz zu meinem Script...

Ach herrje! Was fürn seltendämlicher Fehler wieder. Statt diesem hier:

  
var SpielerdatenStr = JSON.stringify(SpielerdatenArray);  
console.log(SpielerdatenStr);  

Hatte ich das geschrieben:

  
var SpielerdatenArray = JSON.stringify(SpielerdatenArray);  
console.log(SpielerdatenArray);  

Das darf man ja niemandem erzählen! Wie peinlich... Naja, auf jeden Fall liefert mir die Konsole jetzt folgenden String:

[null,null,null,null,[0,0,0,0,0,0,0,0],null,null,null,null,null,[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],null,null,null,null,null,null,[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],null,null,null,null,null,null,null,[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]]

Das sieht ja sehr abenteuerlich aus. Ohne es jetzt schon getestet zu haben, habe ich irgendwie kein gutes Gefühl, dass mir mein PHP-Script daraus wieder das Array zusammenbasteln wird.

Besten Dank auf jeden Fall erstmal schonmal

Onkel Schnitzel