PHP und JS Variable mit Frame senden

  • Hi,

    ich habe hier ein kleines Problem, welches mir eine schlaflose Nacht bereitet. Mittels eines Frames, sollen mehrere PHP Variablen sowie Breite und Höhe des Bildschirms übergeben werden. Dazu benutze ich den folgenden Befehl:

    PHP
    document.write ('<frame name="Fussnoten" scrolling="no" marginheight="0" target="_top" src="../test.php?var1=<?php echo $var1.'&var2='.$var2.'&var3='.$var3.'&var4='.$var4.'&var5='.$var5.'&size=';?> '+window.screen.width+'x'+window.screen.height+'" noresize>');

    Die PHP Variablen werden auch übergeben. Aber Breite und Höhe leider nicht. Ich finde aber den Fehler nicht. Bin aber auch JS Anfänger. Habt Ihr eine Idee, wie ich das Problem lösen kann? :confused:

    Ich hoffe, Ihr könnt mir helfen. Vielen Dank schon mal im voraus 8)

  • Werden die Variablen nicht übergeben oder stehen sie schon im HTML-Code nicht drin? Sieh' dir den HTML-Quelltext an, den der Browser bekommt.

  • Also die PHP Variabelen werden ja einwandfrei übergeben. Aber die JS Varaiable leider nicht. Wenn ich den Script aufrufe, in das entsprechende Fußnoten Frame klicke und auf Seitenquelltext klicke, erhalte ich u.a.:

    Code
    <script>
    document.write ('<frame name="Fussnoten" scrolling="no"  marginheight="0" target="_top"  src="../test.php?var1=test1&var2=test2&var3=test3&var4=test4&var5=test5&size=  '+window.screen.width+'x'+window.screen.height+'" noresize>');
    </script>

    Im header steht die Zeile:

    Code
    http://www.meineseite.de/test.php?var1=test1&var2=test2&var3=test3&var4=test4&var5=test5&size=%20%27+window.screen.width+%27x%27+window.screen.height+%27

    Wenn ich die Variablen der Seite "test.php" mittels "GET" auslese, erhalte ich

    Code
    test1
    test2
    test3
    test4
    test5
     \' window.screen.width \'x\' window.screen.height \'

    Die Fehlerkonsole meldet:

    Code
    Zeitstempel: 27.10.2012 12:09:13
    Fehler: Die Zeichenkodierung des HTML-Dokuments wurde nicht deklariert.  Das Dokument wird in manchen Browser-Konfigurationen mit verstümmeltem  Text dargestellt, wenn das Dokument Zeichen außerhalb des  US-ASCII-Bereichs enthält. Die Zeichenkodierung der Seite muss im  Dokument oder Transferprotokoll deklariert werden.
    Quelldatei: http://www.meineseite.de/test.php
    Zeile: 0

    Hilft das weiter?

  • Hilft das weiter?


    Das sollte dir eigentlich weiterhelfen, oder? Wie man sieht, stimmt ja was mit dem JavaScript-Teil nicht, die Fenstergröße wird ja nicht richtig eingetragen.
    Ich persönlich neige dazu, bestimmte Werte in Variablen zu schreiben und diese dann auszugeben. Diese kilometerlangen Zeilen verwirren in der Regel mehr als sie helfen. Macht auch das debuggen einfacher.
    Ungetestet:

    PHP
    <script>
    var  param = '<?php echo 'var1=' . $var1 . '&var2=' . $var2 .  '&var3=' . $var3 . '&var4=' . $var4 . '&var5=' . $var5;  ?>';
    var w = window.screen.width;
    var h = window.screen.height;
    document.write  ('<frame name="Fussnoten" scrolling="no" marginheight="0"  target="_top" src="../test.php?' + param + '&width=' + w +  '&height=' + h + '" noresize>');
    </script>
  • Jau, danke für den Script. Aber leider funktioniert das nicht. Als link wird

    Code
    http://www.meineseite.de/test.php?' + param + '&width=' + w + '&height=' + h +'

    übergeben. Also noch nicht einmal die PHP Variablen:cry: