Avatar billede mrfunder Nybegynder
14. marts 2007 - 19:11 Der er 4 kommentarer og
1 løsning

Brug af PHP indenfor Javascript

Jeg har et php dokument hvor der ligger nogle forskellige funktioner. På siden har jeg includeret en JS. fil med alt mit javascript til den pågældende side.

Ved toggleMy hvor (unique) viser sig at være 2; skal der så hentes nogle informationer fra mysql hvorefter de skal outputtes - hvordan er dette muligt uden at reloade siden?

-------------functions.js-----------------------------

function toggleMy(id,unique) {
        switch(unique){
            case 1:
        document.getElementById('titel').firstChild.nodeValue = id;
        document.getElementById('content').firstChild.nodeValue = 'output 1 - ren html';
            break;
            case 2:
              document.getElementById('titel').firstChild.nodeValue = id;
        document.getElementById('content').firstChild.nodeValue = 'output 2 - informationer fra databasen (mysql)';
            break;
              default:
              document.getElementById('titel').firstChild.nodeValue = id;
        document.getElementById('content').firstChild.nodeValue = 'output 3 - ren html';
            break;
}
}
              default:
              document.getElementById('titel').firstChild.nodeValue = id;
        document.getElementById('content').firstChild.nodeValue = 'Byg hotel';
            break;
}
}


-------------mypage.php-----------------------------

<script type="text/javascript" src="functions.js"></script>
<?php
print "<div id=\"$id\" class=\"star\" title=\"$name\" style=\"position:absolute; left:$cor_x; top:$cor_y; cursor: pointer;\" onclick=\"toggleMy('$name',$unique);\">\n</div>";
Avatar billede mrfunder Nybegynder
14. marts 2007 - 19:14 #1
*Ved toggleMy hvor (unique) viser sig at være 2; skal der så hentes nogle informationer fra mysql hvorefter de skal outputtes - hvordan er dette muligt uden at reloade siden?

**(Output vises i nogle div elements der er på mypage.php**
Avatar billede jakobdo Ekspert
14. marts 2007 - 20:05 #2
Du kunne jo lade php "Lave" javascriptet!
Så du f.eks. laver:

echo "function toggleMy(id,unique) {";
echo "switch(unique){";
$query = mysql_query("SELECT * FROM tabel ORDER BY id");
while($row = mysql_query($query))
{
echo "case ".$row['id'].":";
echo "  document.getElementById('titel').firstChild.nodeValue = id;";
echo "  document.getElementById('content').firstChild.nodeValue = '".$row['tekst_fra_databasen']."';";
echo "break;";
}
echo "default:";
echo "  document.getElementById('titel').firstChild.nodeValue = id;";
echo "  document.getElementById('content').firstChild.nodeValue = 'Byg hotel';";
echo "}";
}

Det burde kunne gøre det!
Avatar billede mrfunder Nybegynder
17. marts 2007 - 21:02 #3
jeg fandt en smartere måde at lave det på - smid dog et svar alligevel :-)
Avatar billede jakobdo Ekspert
18. marts 2007 - 03:04 #4
Svar!
Avatar billede jakobdo Ekspert
20. marts 2007 - 17:33 #5
Takker for point.
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