Avatar billede majbom Novice
30. maj 2007 - 15:17 Der er 12 kommentarer og
1 løsning

javascript med php kode

hejsa

jeg har fundet et simpelt slideshow script, som med følgende kode virker som det skal:

<script type="text/javascript">
<!--
SLIDES = new slideshow("SLIDES");
s = new slide();
s.src = "photos/2007-05-30/Billede001.jpg";
s.text = "billede1 kommentar";
SLIDES.add_slide(s);

s = new slide();
s.src = "photos/2007-05-30/Billede005.jpg";
s.text = "billede5 kommentar";
SLIDES.add_slide(s);

s = new slide();
s.src = "photos/2007-05-30/Billede006.jpg";
s.text = "billede6 kommentar";
SLIDES.add_slide(s);

s = new slide();
s.src = "photos/2007-05-30/Billede007.jpg";
s.text = "billede7 kommentar";
SLIDES.add_slide(s);
//-->
</script>

nu vil jeg gerne lave det mere dynamisk, og det skal være sådan at der hentes filnavne ud fra en mysql-db og laver denne kode:

s = new slide();
s.src = "photos/2007-05-30/Billede007.jpg";
s.text = "billede7 kommentar";
SLIDES.add_slide(s);

for hvert billede. jeg havde regnet med at kunne gøre det på følgende måde:

<?php
echo "<script type=\"text/javascript\">";
echo "<!--";
echo "SLIDES = new slideshow(\"SLIDES\");";

while($slide = mysql_fetch_array($res)){
  echo "s = new slide();";
  echo "s.src = \"photos/".$slide['dato']."/".$slide['navn']."\";";
  echo "s.text = \"".$slide['kommentar']."\";";
  echo "SLIDES.add_slide(s);";
}

echo "//-->";
echo "</script>";
?>

det virker ikke, og jeg forstår ikke hvorfor. jeg har prøvet at kopiere kildekoden som bliver "genereret" af php-koden, og paste ind, så det ligner det første javascript kode jeg har sat ind her, og så virker det, så det er ikke fordi der er fejl i det php-kode jeg har skrevet.

håber det gav mening :D og at der er en der kan hjælpe...

pft
Avatar billede w13 Novice
30. maj 2007 - 15:26 #1
Hvad er fejlen, når du kører den genererede kode?
Og kan vi se det selv på et link?
Avatar billede majbom Novice
30. maj 2007 - 15:35 #2
nååh ja, sorry

den skriver: "Der opstod en fejl på siden" nede i venstre hjørne. når jeg får vist fejlen, skriver den: "SLIDES er ikke defineret"
Avatar billede w13 Novice
30. maj 2007 - 15:37 #3
Prøv at rette:
echo "SLIDES = new slideshow(\"SLIDES\");";
Til:
echo "var SLIDES = new slideshow(\"SLIDES\");";
Avatar billede majbom Novice
30. maj 2007 - 15:40 #4
stadig samme fejl :(
Avatar billede w13 Novice
30. maj 2007 - 15:41 #5
Kan vi ikke se et link? Det gør det lidt nemmere. :)
Avatar billede w13 Novice
30. maj 2007 - 15:42 #6
I øvrigt tror jeg ikke, det er denne kode, den er gal med. Der må være en kode et sted, som kører dette slideshow.
Avatar billede majbom Novice
30. maj 2007 - 15:44 #7
hov, glemte jo linket til siden :)

www.kick-off.as/site

og scriptet uploader jeg lige...
Avatar billede majbom Novice
30. maj 2007 - 15:46 #8
www.splazz.dk/files/slideshow.js

men som sagt, virker det fint når jeg laver det uden php
Avatar billede w13 Novice
30. maj 2007 - 16:13 #9
Prøv lige:
----------------------------------------
<?php
echo "<script type=\"text/javascript\">
<!--
SLIDES = new slideshow(\"SLIDES\");";

while($slide = mysql_fetch_array($res)){
  echo "s = new slide();";
  echo "s.src = \"photos/".$slide['dato']."/".$slide['navn']."\";";
  echo "s.text = \"".$slide['kommentar']."\";";
  echo "SLIDES.add_slide(s);";
}

echo "
//-->
</script>";
?>
Avatar billede majbom Novice
30. maj 2007 - 17:59 #10
weee

det hjalp på det!

mange tak, smid et svar :)
Avatar billede w13 Novice
30. maj 2007 - 19:04 #11
Svar! :)
Avatar billede windcape Praktikant
30. maj 2007 - 19:23 #12
og kig på www.php.net/json , www.json.org for en smartere måde at arbejde med PHP og Javascript.
Avatar billede majbom Novice
30. maj 2007 - 20:03 #13
-> windscape - okay, tak for links :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester