Avatar billede gnukki Nybegynder
18. januar 2007 - 19:51 Der er 4 kommentarer og
1 løsning

JavaScript og PHP

Hej,

Er det ikke muligt at sætte en PHP variabel i et javascript?
Her er min kode:

<script type="text/javascript">
if (navigator.userAgent.indexOf("Netscape")!=-1)
document.write("<?php $browser="1" ?>")
if (navigator.userAgent.indexOf("MSIE")!=-1)
document.write("<?php $browser="2" ?>")
</script>

I Firefox returnerer den 2 når jeg udskriver værdien af $browser.
Avatar billede mcgoat Nybegynder
18. januar 2007 - 19:54 #1
Kan ikke helt se logikken i det du er ved at lave, men jo man kan godt blande dem sammen. f.eks:

<script language="javascript">
alert("<?php echo $minvariabel ?>");
</script>
Avatar billede pidgeot Nybegynder
18. januar 2007 - 20:00 #2
...men det sætter kun en værdi fra PHP ind i et Javascript, for at lade en variabels indhold blive styret af JavaScript, skal du sende det via URL'en, hvilket jo så forårsager en reload. Grunden til dette er (som burde sige sig selv) at PHP er server-side, og browseren derfor ikke har noget med det at gøre, mens JavaScript udelukkende er client-side, og dermed udføres af browseren.

Lige det eksempel du bruger, kan dog lige så fint laves i ren PHP (brug $_SERVER['HTTP_USER_AGENT']), men du bør være klar over at user-agent sniffing er en meget dårlig ide, da det er let at ændre på den - eksempelvis kan Opera finde på at præsentere sig selv som en IE, uden at man behøver installere noget specielt.
Avatar billede zynzz Praktikant
18. januar 2007 - 20:02 #3
eller:
<script language="javascript">
alert("<?=$minvariabel ?>");
</script>
Avatar billede gnukki Nybegynder
18. januar 2007 - 20:15 #4
Tak for de hurtige svar, jeg bruger pidgeot' forslag om at bruge ren php. Så hvis du, pidgeout, vil smide et svar :D
Avatar billede pidgeot Nybegynder
18. januar 2007 - 21:02 #5
Værsgo. :)
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