wollte mal generall wissen wie ich mittels js auf php variablen zugreifen kann.
So, wie du dir das denkst: Erst einmal gar nicht. PHP läuft serverseitig und erzeugt Daten, die vom Browser verarbeitet werden. JavaScript läuft clientseitig, ist dem ganzen also nachgeordnet und arbeitet nur mit den Daten, die das PHP-Script erzeugt hat.
Die einzige Möglichkeit ist, dass PHP dem JavaScript etwas bereitstellt ist, dass es die fraglichen Daten ausgibt - die einfachste Methode wäre natürlich, dass das PHP-Script das JavaScript im HTML-Dokument generiert.
gibts da überhauptn weg ..also denk mitn normalen js nich aber meine mit ajax.
Nein, Ajax ist hier unnötig und die schlechtere Wahl.
anderer weg wäre natürlich mit php auf js ...aber das wird schon gar nicht gehen denk ich: sowas hatte ich dabei gedacht:
<?php
foreach ($_SESSION) {
js funktion ()
}
?>
>
> ist natürlich alles nur pseudo code um die idee zu vermitteln! ;-) aber ich hasse js .... wieso geht nicht einfach alles mit php! ;-)
Du musst dir den grundlegenden Unterschied zwischen serverseitiger und clientseitiger vor Augen halten. PHP und JavaScript werden nicht gleichzeitig ausgeführt, teilen sich keine Variablen und können gegenseitig keine Funktionen aufrufen. PHP generiert lediglich HTML-Dokumente. PHP kann daher auch JavaScript-Code generieren. Du musst also hinkriegen, dass das PHP-Script korrekten JavaScript-Code erzeugt, der dann im Browser ausgeführt wird, wenn das PHP-Script schon lange nicht mehr läuft. Der zweite Ansatz ist dazu schon ganz richtig. Ein einfaches Beispiel:
<script type="text/javascript">
<?php foreach ($\_SESSION as $bla) { ?>
jsfunktion('<?php echo $bla; ?>');
<?php } ?>
</script>
Die Ausgabe sieht dann vielleicht so aus:
<script type="text/javascript">
jsfunktion('abc');
jsfunktion('def');
jsfunktion('ghi');
</script>
Prinzip verstanden? Auf die gleiche Weise kannst du natürlich auch komplexeren JavaScript-Code erzeugen wie die von Vinzenz angesprochenen Arrays.
Mathias
--
[JavaScript-Erweiterung für das SELFHTML-Forum](http://forum.de.selfhtml.org/js/doku/)