javascript unlogisch?

nireus

Grünschnabel
ich peil da was bei javascript nicht und zwar, dass es plötzlich mitten im script eine variable nicht mehr kennt...
also, ich hab da ein array global deklariert und fülle es dann in einer php-schleife mit werten, um diese dann später in einer funktion zur laufzeit abrufen zu können - vereinfacht so:

PHP:
<script type="text/javascript">
  var alles = new Array();

  function Check()
  {
    if (alles[0]["hallo"])...
  }
</script>

<? for($i=0; $i<10; $i++){ ?>
  <script type="text/javascript">
    var etwas = new Array();
    etwas["hallo"]   = <? echo $phparray1[$i]; ?>;
    etwas["sinnlos"] = <? echo $phparray2[$i]; ?>;
    alles.push(etwas);
  </script>
<? } ?>


ich schreibe also durch die php-for-schleife verursacht 10 mal ein array "etwas" mit hilfe von push in das array "alles"...
jetzt sagt mir aber der internet explorer, dass er die variable "alles" nicht kennt, obwohl sie doch aber oben global deklariert ist und eigentlich auch unten noch bekannt sein müsste...
das seltsame ist allerdings, die zeile, die er mir für den fehler angibt. nachdem php durchgelaufen ist ergibt sich ja eine andere seite, die der browser dann übermittelt bekommt, ungefähr so:

PHP:
<script type="text/javascript">
  var alles = new Array();

  function Check()
  {
    if (alles[0]["hallo"])...
  }
</script>

  <script type="text/javascript">
    var etwas = new Array();
    etwas["hallo"]   = wert;
    etwas["sinnlos"] = wert;
    alles.push(etwas);
  </script>
  <script type="text/javascript">
    var etwas = new Array();
    etwas["hallo"]   = wert;
    etwas["sinnlos"] = wert;
    alles.push(etwas);
  </script>
  <script type="text/javascript">
    var etwas = new Array();
    etwas["hallo"]   = wert;
    etwas["sinnlos"] = wert;
    alles.push(etwas);
  </script>
  //..... uswuswusw (eben 10 mal)...

bei den ersten 9 mal wo per push in das "alles"-array geschrieben wird, funktioniert's einwandfrei, aber beim 10. mal ist ihm dann die variable "alles" unbekannt ("'alles' ist undefiniert"). da frag ich mich einfach nur: warum das denn?!?!?!?
ich meine, wenn diese wiederholung per schleife in php entstanden ist, dann kann doch nicht bei einem mal eine variable unbekannt sein und ein andermal nicht.

wenn ich nun die schleifendurchläufe verändere (also mal auf 9mal, oder 11mal oder sonstwas stelle) passiert immer das gleiche: beim letzten mal ist die variable nicht definiert...
geht sowas mit rechten dingen zu?
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück