molily: Werte aus DB in PHP über javascript bei klick ausgeben

Beitrag lesen

Hallo,

ich habe gerade dieses Beispiel gefunden was für mich etwas transparenter und nachvollziehbarer ist...

Okay. Das Prinzip ist dasselbe wie das, was ich beschrieben habe.

Es ist ja schön, dass du dich woanders umsiehst, allerdings mache ich mir nicht die Mühe, Lösungen vorzuschlagen oder gar fertige Lösungen zu posten, wenn du sie dir nicht wirklich ansiehst und von Anfang an eine bestimmte andere Lösung anstrebst.

wenn ich nun das array so ungefähr fülle

var arrURLs = ["", <?php echo $row->beschreibung_1?>,<?php echo $row->beschreibung_2?>, <?php echo $row->beschreibung_3?>, .....etc. etc];

geht das?

Ja.

Wenn du eine beliebig hohe Anzahl an Beschreibungen hast, ist es allerdings nicht praktikabel, sie alle so hinzuschreiben. Deswegen hatte ich JSON und json_encode vorgeschlagen.

Erzeuge in PHP einen Array von Strings und bette ihn als JSON ins JavaScript ein:

<?php  
$arr = array("foo", "bar", "qux");  
?>
<script>  
[code lang=javascript]var arrURLs = <?php echo json_encode($arr); ?>

</script>[/code]

Im generierten HTML steht dann

<script>  
[code lang=javascript]var arrURLs = ["foo", "bar", "qux"];

</script>[/code]

Hier musst du allerdings aufpassen, wenn die Strings HTML enthalten. Dann könnte JavaScript eingeschmuggelt werden.

das javascript kann ich ja irgendwo in das php dokument packen oder?

Es ist in diesem Fall nicht so wichtig. Üblicherweise sollte das Script am Ende stehen.

ich meine, es muss ja nicht am anfang stehen im header-bereich der Seite?

Das muss es hier nicht.

Mathias