Avatar billede Slettet bruger
21. juni 2004 - 19:50 Der er 8 kommentarer og
1 løsning

Javascript variabel til PHP variabel

Hej JS eksperter.

Et lille hurtig spørgsmål.
Hvis jeg har følgende:

<SCRIPT language="javascript">
var test = 1;
</SCRIPT>

Kan jeg på nogen måde få værdien herfra over i en PHP variabel?
Jeg har forsøgt noget ala:

<SCRIPT language="javascript">
var test = 1;

<?PHP
$test = "+test+";
?>
</SCRIPT>

Men udskriver jeg min PHP variabel får jeg blot dette output: +test+

Nogen der lige kan give mig den rigtige syntax ?
Avatar billede roenving Novice
21. juni 2004 - 19:56 #1
Da du i den konstruktion udfører javascript client-side og php server-side kan du ikke gøre noget på nogen måde, som er i nærheden af dit eksempel ...

Det du må gøre er at sætte en værdi i et formfelt og så overføre det vha. en submit !-)
Avatar billede Slettet bruger
21. juni 2004 - 19:58 #2
hmm.. tænkte nok at det ikke kunne lade sig gøre.
Det med formfeltet er desværre udelukket.

Så jeg lukker spørgsmålet igen :)
Avatar billede Slettet bruger
21. juni 2004 - 20:02 #3
Du kunne kalde en anden PHP side gennem f.eks. et fake billede, men du kan ikke få fat i variablen på samme side.

Eksempel:

<script type="text/javascript">
var test = 1;
document.write("<span style='display:none'><img width='1' height='1' src='modtager.php?foo=" + bar + "'></span>");
</script>

Nu er $foo tildelt værdien 'bar' i modtager.php og denne side kan så gøre et eller andet med denne variabel.
Avatar billede Slettet bruger
21. juni 2004 - 20:02 #4
Ja ok, jeg glemte lige din variabel test men du kan vel gennemskue det :)
Avatar billede roenving Novice
21. juni 2004 - 20:03 #5
Men du fik da et korrekt svar på dit spørgsmål, som lød:

Kan jeg på nogen måde få værdien herfra over i en PHP variabel?

-- hvor svaret er, at det kun kan lade sig gøre ved at kontakte serveren på ny !-)
Avatar billede grunken Nybegynder
21. juni 2004 - 20:11 #6
du kan da bare reloade siden en enkelt gang

<script type="text/javascript">
var test = 1;
if(window.location.href.indexOf("testval")==-1)window.location.href=window.location.href+"?testval"+test
</script>

<?php
if(isset($_GET['testval']))echo $_GET['testval'];
?>

næsten som elbarto skriver :o)

-men det er godt nok dårlig E-stil at tage points selv efter et korrekt besvaret spørgsmål!
Avatar billede Slettet bruger
21. juni 2004 - 20:14 #7
Måske det kunne være en mulighed el_barto.
Jeg vil prøve at lege lidt med det.

Ganske rigtig roenving. Hvis nogen af jer vil have points, så giver jeg da gerne de 15 points? :)
Avatar billede Slettet bruger
21. juni 2004 - 20:35 #8
Hvis du er rigtig sej for du så modtager.php til at spytte et 1x1 pixel billede ud, så er der aldrig nogen der opdager tricket ;)
Avatar billede mm12010 Nybegynder
21. juni 2004 - 20:37 #9
her er det med JS & ASP men prncippet er jo det samme:
http://www.magik.dk/da/articles/2/
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