Margrith: JavaScript-Variable in PHP-Variable umwandeln

Hi Forianer

Wie kriege ich den Wert folgenden Scriptes in PHP
angezeigt?

<script language="JavaScript">
  var testvariable = hallo;
  </script>

-> echo"$testvariable"; funzt nicht

-> PHP-Code wie:
    <? $phpvariable= ?>
       <script language="JavaScript">
       var testvariable = hallo;
       </script>
    <? ; ?>
   funktioniert auch nicht! :(

Was mache ich falsch? Bin um jeden Hinweis dankbar.

Liebe Grüsse
Margrith

  1. Hi there,

    Wie kriege ich den Wert folgenden Scriptes in PHP
    angezeigt?

    <script language="JavaScript">
      var testvariable = hallo;
      </script>

    den Wert der Variablen testvariable bekommst Du nur durch neuerlichen Aufruf des Phpscripts in PHP;

    Was mache ich falsch? Bin um jeden Hinweis dankbar.

    Du denkst falsch. Wenn javascript in Deinem Browser läuft, dann ist PHP am Server schon längst gelaufen, beschäftigt sich der Server wahrscheinlich schon mit etwas anderem; aus diesem Grunde mußt Du ihm den Wert der Variablen testvariable neu schicken, dazu gibts mehrere Möglichkeiten; zB in der URL mit Javascript:

    location.href="blbabla.php?testvariable=hallo";

    oder indem Du den Wert der testvariablen in ein hidden formularfeld schreibst, das ebenfalls TESTVARIABLE heisst, wenn Du denn auf diesen namen Wert legst ...

  2. Hi,

    du machst einen Fehler den man sehr häufig sieht, sorry aber, du hast da das Grundprinzip noch nicht verstanden. Im Fall von PHP sieht das so aus:

    1. Der Nutzer fordert eine Webseite an, z.B. www.domain.tld/script.php
    2. Der Server erkennt, dass script.php ein PHP-Skript ist und nicht eine Webseite oder anderweitige Datei ist, die unverändert an den Client geschickt werden kann. Er übergibt das Skript an den Interpreter. Der Interpreter arbeitet deinen PHP-Code ab, das Ergebnis ist HTML-Code. Diesen gibt er zurück an den Webserver der ihn jetzt ausliefert als wäre es eine statische HTML-Seite.
    3. Der Cient empfängt diese Webseite und erkennt neben all den Tags wie h1, div und keine Ahnung was, dass er ein Script-Tag findet. Das ist für ihn ein Hinweis: Ich muss noch was tun, da ist was aktives drin. Er führt das aus und das Ende des Vorgangs ist die fertige Seite.

    Soll heißen: PHP = Server, JavaScript = Client, in der zeitlichen Reihenfolge.
    Die Kommunikation ist dementsprechend einfacher oder komplexer. Es ist kein Problem eine PHP-Variable an JavaScript zu übergeben, da PHP weit vor JavaScript liegt:
    Quellcode:
    $meineVariablePHP = 42;
    echo "var meineVariableJS = $meineVariablePHP";

    Nachdem der Interpreter gelaufen ist
    var meineVariableJS = 42;

    Du hast jetzt nur JS, PHP ist da mit seiner Arbeit schon längst fertig. Wenn du den JS-Wert am Server brauchst, musst du ihn wegschicken, sei es per Formular oder per GET-Parameter an einem Link.

    MfG
    Rouven

    --
    -------------------
    ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(
  3. Danke Euch beiden! Soweit habe ich nicht gedacht.
    Die Erklärung leuchtet mir aber ein. So bleibt mir
    nichts anderes, als den Wert der JS-Variable erst
    mal weiterzugeben, um ihn in einem zweiten Schritt
    in PHP umzuwandeln.

    Liebe Grüsse
    Margrith