Tolwin: PHP Array in Javascript Array

Beitrag lesen

Also entweder bin ich absolut bescheuert, oder wir reden aneinander vorbei?!?!
Ich bin stark der Meinung dass ich das JS Array genau so umgesetzt habe. Habe jetzt alle Varianten versucht das PHP Array im Quellcode dem JS Array einzufügen.

<script language="JavaScript" type="text/JavaScript">
?
if(count($PHP_LAND_TABLE) != 0)
{
echo "var JS_LAND_ARRAY = new Array();";
echo "JS_LAND_ARRAY[".$_SESSION["i"]."] = new Object();";
echo "JS_LAND_ARRAY[".$_SESSION["i"]."]['LAND_ID'] = " .    $PHP_LAND_TABLE[$_SESSION["i"]]['LAND_ID']."";";
print_r($PHP_LAND_TABLE);
}
?>
</script>

Dann kommt diese Fehlermeldung
var JS_LAND_ARRAY = new Array();JS_LAND_ARRAY[1] = new Object();<br />
<b>Notice</b>:  Undefined offset:  1 in <b>/data/www/php/docs/ubfk/laenderinfo/laenderinfo.php</b> on line <b>161</b><br />
JS_LAND_ARRAY[1]['LAND_ID'] = ";Array
(
    [0] => Array
        (
            [LAND_ID] => 660
            [LANDNAME] => Afghanistan
            [ZEITZONE] => 4,50
            [WAEHRUNG] => UAE Dirham
            [BETREUER1] => Mustermann, Klaus
            [BEREICH1] => BLA 1
            [TEL_INT1] => 012-12345
            [TEL_EXT1] => 12345
            [BETREUER2] =>
            [BEREICH2] =>
            [TEL_INT2] =>
            [TEL_EXT2] =>
        )

)

und dies ist Zeile 161 aus laenderinfo.php
echo "JS_LAND_ARRAY[".$_SESSION["i"]."]['LAND_ID'] = " . $PHP_LAND_TABLE[$_SESSION["i"]]['LAND_ID']."";";

Er kann also nicht mit $_SESSION["i"] in der $PHP_LAND_TABLE anfangen. Mir ist nicht klar wie ich dieses Problem lösen kann.

So wird das PHP Array zusammengebaut
session_start();
include ("db_connect.php");
$result_land      = mysql_query("SELECT * FROM Laender  ORDER BY LAND ASC");
$LAND = 0;
$c = 0;

if(!isset($_SESSION["i"]))
{
$_SESSION["i"] = 0;
}

if(isset($_POST['LAND_AUSWAHL']))
{
if($_POST['LAND_AUSWAHL'] > 0)
{
  $LAND = $_POST['LAND_AUSWAHL'];
  $result_landinfo   = mysql_query("SELECT * FROM Laenderdaten WHERE LAND_ID = '$LAND'");
  $row_landinfo      = mysql_fetch_array($result_landinfo);

$result_landname   = mysql_query("SELECT * FROM Laender WHERE LAND_ID = '$LAND'");
  $row_landname      = mysql_fetch_array($result_landname);

$BETREUER_1        = $row_landinfo['BETREUER_ID'];
  $BETREUER_2        = $row_landinfo['BETREUER_ID_2'];
  $result_betreuer_1 = mysql_query("SELECT * FROM Betreuer WHERE BETREUER_ID = '$BETREUER_1'");
  $result_betreuer_2 = mysql_query("SELECT * FROM Betreuer WHERE BETREUER_ID = '$BETREUER_2'");
  $row_betreuer_1    = mysql_fetch_array($result_betreuer_1);
  $row_betreuer_2    = mysql_fetch_array($result_betreuer_2);

$ISO               = $row_landinfo['ISO_CODE'];
  $result_waehrung   = mysql_query("SELECT * FROM Waehrung WHERE ISO_CODE = '$ISO'");
  $row_waehrung      = mysql_fetch_array($result_waehrung);

if($_SESSION["i"] > 0)
  {
   if($_SESSION["i"] >= 5)
   {
    echo "Maximal 5 Ländern erlaubt<br>";
   }
   else
   {
    $LAND_ARRAY = $_SESSION["ARRAY_LAND"];

$LAND_ARRAY[$_SESSION["i"]]['LAND_ID']   = $row_landinfo["LAND_ID"];
        $LAND_ARRAY[$_SESSION["i"]]['LANDNAME']  = $row_landname["LAND"];
        $LAND_ARRAY[$_SESSION["i"]]['ZEITZONE']  = $row_landinfo["ZEITZONE"];
        $LAND_ARRAY[$_SESSION["i"]]['WAEHRUNG']  = $row_waehrung["WAEHRUNG"];
     $LAND_ARRAY[$_SESSION["i"]]['BETREUER1'] = $row_betreuer_1['NAME'];
        $LAND_ARRAY[$_SESSION["i"]]['BEREICH1']  = $row_betreuer_1['BEREICH'];
        $LAND_ARRAY[$_SESSION["i"]]['TEL_INT1']  = $row_betreuer_1['TELEFON_INTERN'];
        $LAND_ARRAY[$_SESSION["i"]]['TEL_EXT1']  = $row_betreuer_1['TELEFON_EXTERN'];
        $LAND_ARRAY[$_SESSION["i"]]['BETREUER2'] = $row_betreuer_2['NAME'];
        $LAND_ARRAY[$_SESSION["i"]]['BEREICH2']  = $row_betreuer_2['BEREICH'];
        $LAND_ARRAY[$_SESSION["i"]]['TEL_INT2']  = $row_betreuer_2['TELEFON_INTERN'];
        $LAND_ARRAY[$_SESSION["i"]]['TEL_EXT2']  = $row_betreuer_2['TELEFON_EXTERN'];

$_SESSION["ARRAY_LAND"] = $LAND_ARRAY;
           $_SESSION["i"]++;

}
  }
  else
  {
   $LAND_ARRAY[$_SESSION["i"]]['LAND_ID']   = $row_landinfo["LAND_ID"];
      $LAND_ARRAY[$_SESSION["i"]]['LANDNAME']  = $row_landname["LAND"];
      $LAND_ARRAY[$_SESSION["i"]]['ZEITZONE']  = $row_landinfo["ZEITZONE"];
      $LAND_ARRAY[$_SESSION["i"]]['WAEHRUNG']  = $row_waehrung["WAEHRUNG"];
      $LAND_ARRAY[$_SESSION["i"]]['BETREUER1'] = $row_betreuer_1['NAME'];
      $LAND_ARRAY[$_SESSION["i"]]['BEREICH1']  = $row_betreuer_1['BEREICH'];
      $LAND_ARRAY[$_SESSION["i"]]['TEL_INT1']  = $row_betreuer_1['TELEFON_INTERN'];
      $LAND_ARRAY[$_SESSION["i"]]['TEL_EXT1']  = $row_betreuer_1['TELEFON_EXTERN'];
      $LAND_ARRAY[$_SESSION["i"]]['BETREUER2'] = $row_betreuer_2['NAME'];
      $LAND_ARRAY[$_SESSION["i"]]['BEREICH2']  = $row_betreuer_2['BEREICH'];
      $LAND_ARRAY[$_SESSION["i"]]['TEL_INT2']  = $row_betreuer_2['TELEFON_INTERN'];
      $LAND_ARRAY[$_SESSION["i"]]['TEL_EXT2']  = $row_betreuer_2['TELEFON_EXTERN'];

$ARRAY_LAND = array();
            $ARRAY_LAND = $LAND_ARRAY;
            $_SESSION["ARRAY_LAND"] = $ARRAY_LAND;
         $_SESSION["i"]++;

}
}
}
else
{
$_POST['LAND_AUSWAHL'] = 0;
}

if(isset($_SESSION["ARRAY_LAND"]))
{
$LAND_TABLE    = $_SESSION["ARRAY_LAND"];
$PHP_LAND_TABLE = $_SESSION["ARRAY_LAND"];
}
else
{
$LAND_TABLE    = array();
$PHP_LAND_TABLE = array();
}

//print_r($LAND_TABLE);
//print_r($PHP_LAND_TABLE);

In diesem Bereich (der vor dem JS Script Bereich liegt) funktioniert print_r($PHP_LAND_TABLE) einwandfrei. Später aber nicht und ich versteh´s einfach nicht!!!!

Gruß Tolwin
und Danke für die Gedult!