php variable aus popup übergeben
andré
- javascript
0 Stefan0 andré
0 Sven Rautenberg0 andré
hallo,
mein problem:
ich möchte aus einem popup die php-variable "$name" übergeben.
<a href="javascript:void(opener.location.href=index2.php?site=einzel&name='.$name.')"><img src=../klein/'.$name.'.jpg border=0 width=70 alt='.$name.'>
es soll die seite index2.php?site=einzel mit der übergebenen variable angezeigt werden.
zu sehen unter: http://www.arrrt.com/index3.php?site=look_op
ich bekomme bei opera immer die fehlermeldung: "interner kommunikationsfehler"
danke+gruß
andré
Hallo André,
<a href="javascript:void(opener.location.href=index2.php?site=einzel&name='.$name.')"><img src=../klein/'.$name.'.jpg border=0 width=70 alt='.$name.'>
Sollte das nicht heissen "javascript:window.opener...." ?
Gruß Stefan
hallo stefan,
meinst du so:
<a href="javascript:window.opener.location.href=index2.php?site=einzel&name='.$name.'">
es funktioniert nicht!
gruß
andré
Hallo André,
<a href="javascript:void(opener.location.href=index2.php?site=einzel&name='.$name.')"><img src=../klein/'.$name.'.jpg border=0 width=70 alt='.$name.'>
Sollte das nicht heissen "javascript:window.opener...." ?
Gruß Stefan
hallo,
mein problem:
ich möchte aus einem popup die php-variable "$name" übergeben.
<a href="javascript:void(opener.location.href=index2.php?site=einzel&name='.$name.')"><img src=../klein/'.$name.'.jpg border=0 width=70 alt='.$name.'>
Üblicherweise weist mal der location.href einen String zu. Bei dir fehlen der Zuweisung aber die Anführungsstriche.
Normal:
..location.href='index2.php?site=einzel&name=einname'
Bei dir:
..location.href=index2.php?site=einzel&name=einname
Das kann also schlicht Javascriptmäßig nicht klappen.
Der von dir angegebene Quellcode ist sicherlich nicht vollständig, denn so wie jetzt angegeben kriegst du keinesfalls den Namen der Variablen an gewünschter Stelle ausgegeben. Mehr Code!
Am besten ist aber, du überprüfst selbst deine ganzen Anführungsstriche. Bedenke: PHP schreibt HTML und Javascript. Diese Ausgabe _muss_ vollständig und korrekt sein.
Auf HTML-Ebene kannst du innerhalb von "-Anführungsstrichen einfache '-Anführungsstriche verwenden, um z.B. Javascripte mit Strings zu versehen (siehe Beispiel oben). Um in PHP-Strings, die mit " umrahmt sind, doppelte " auszugeben, verwende die Zeichenfolge " - entsprechend gilt für Strings, die von ' umrahmt sind, dass '-Zeichen innerhalb des Strings mit ' ausgegeben werden müssen. Bedenke: "-Zeichen um einen String erlauben, dass innerhalb des Strings Variablen durch ihren Inhalt ersetzt werden, was in '-Strings nicht funktioniert.
Noch ganz wichtig: Es ist sehr empfehlenswert, alle Strings, die Bestandteil eines URL-Parameters werden sollen, mit den Funktionen urlencode() oder rawurlencode() internetsicher zu machen. Simple Zeichen wie Leerzeichen oder Umlaute müssen codiert werden, sonst funktioniert der Link nicht mehr.
- Sven Rautenberg
hallo und danke sven,
so jetzt funktioniert es (schonmal halb)!
<a href="javascript:window.opener.location.href='../index2.php?site=einzel&name='.$name.''";> funktioniert!!!!!!
ist ok, aber jetzt schreibt er, nachdem er verlinkt (mit variablenübergabe) het, den pfad "../ index2.php?site=einzel&name=Denker" in das popup fenster rein.
kann man das popup-fenster irgendwie bei klick aktualisieren (damit nicht wieder der code drinsteht sondern die bilder)
am besten mal ansehen: http://www.arrrt.com/index3.php?site=look_op
danke schonmal
gruß
andré
----------------------------------------------------
hallo,
mein problem:
ich möchte aus einem popup die php-variable "$name" übergeben.
<a href="javascript:void(opener.location.href=index2.php?site=einzel&name='.$name.')"><img src=../klein/'.$name.'.jpg border=0 width=70 alt='.$name.'>
Üblicherweise weist mal der location.href einen String zu. Bei dir fehlen der Zuweisung aber die Anführungsstriche.
Normal:
..location.href='index2.php?site=einzel&name=einname'
Bei dir:
..location.href=index2.php?site=einzel&name=einname
Das kann also schlicht Javascriptmäßig nicht klappen.
Der von dir angegebene Quellcode ist sicherlich nicht vollständig, denn so wie jetzt angegeben kriegst du keinesfalls den Namen der Variablen an gewünschter Stelle ausgegeben. Mehr Code!
Am besten ist aber, du überprüfst selbst deine ganzen Anführungsstriche. Bedenke: PHP schreibt HTML und Javascript. Diese Ausgabe _muss_ vollständig und korrekt sein.
Auf HTML-Ebene kannst du innerhalb von "-Anführungsstrichen einfache '-Anführungsstriche verwenden, um z.B. Javascripte mit Strings zu versehen (siehe Beispiel oben). Um in PHP-Strings, die mit " umrahmt sind, doppelte " auszugeben, verwende die Zeichenfolge " - entsprechend gilt für Strings, die von ' umrahmt sind, dass '-Zeichen innerhalb des Strings mit ' ausgegeben werden müssen. Bedenke: "-Zeichen um einen String erlauben, dass innerhalb des Strings Variablen durch ihren Inhalt ersetzt werden, was in '-Strings nicht funktioniert.
Noch ganz wichtig: Es ist sehr empfehlenswert, alle Strings, die Bestandteil eines URL-Parameters werden sollen, mit den Funktionen urlencode() oder rawurlencode() internetsicher zu machen. Simple Zeichen wie Leerzeichen oder Umlaute müssen codiert werden, sonst funktioniert der Link nicht mehr.
- Sven Rautenberg