sep.Fenster öffnen mit PHP u. JS

backbone

Grünschnabel
Hallo zusammen,

Gibt es eine Möglichkeit einen den Wert einern PHP-Variablele an JS zu übergeben??
Ziel ist es ein seperates Fenster zu öffen und, das der Inhalt z.B Bilder dynmisch angezeigt werden.
PHP kann leider keinen seperate Fenster öffnen :(

Ich hab z.b eine Variable $bildername.
Diese Variable ist absolut dynamisch. Ich möchte einfach das diese Variable Ihren Wert, der aus einer DB stamm, an JS übergibt und das richtige "bild" zum Beispiel, in einem seperaten Fenster öffnet.

window.open("'.$bildername.'") wird glaub ich net gehen...oder? :rolleyes:

Danke schonma
 
Gehe mal mit deine Frage ins Google und naja dort gibt es massenweise antworten....
suchbegrif "PHP neues fenster"
und fertig....
mehr brauchst du da nicht.

Und JA!! das mir window.open ist schon zimlich richtig. ;)
 
Du kannst auch mit PHP, bzw. mit HTML, ein neues Fenster öffnen (target="_blank").
Hier dürfte für dein Problem auch etwas drinstehen:
Hier
 
Ist klar, dass man mit PHP kein neues Fenster öffnen kann:
PHP - Serverseitig
HTML/JavaScript - Clientseitig.

Zum Problem:
Ja, du kannst (z.B. mit <body onLoad="window.open('<?php echo $bild ?>');">) Informationen an eine neues Fenster übergeben, wobei man in diesem Fall nicht wirklich von übergeben sprechen kann.

Anders ist es, wenn du Variablen übergeben willst. Dan muss das geöffnete Fenster eine PHP-Datei im Dokument haben. Du kanns dann per Get-Methode die Variable übergeben und auswerten:
PHP:
window.open("datei.php?variable1=hallevariable2=bla");

// Datei.php:

echo $_GET["variable1"]." ".$_GET["variable2"];


Anmerkung: Wenn du nur ein neues Fenster öffnen willst, dass keine extra-Merkmale haben muss (wie z.B. kein Menü, keine Toolbar oder keine Statusleiste etc.), dann reicht, wie Flo schon gesagt hat ein aufruf mit einem normalen Link, der als target-Attribut ein _blank hat:
PHP:
<a href="<?php echo $bildname ?>" target="_blank">
Diese Methode ist in dem Fall vorzuziehen, weil JavaScript bei solchen Sachen überflüssig ist.
 
hm..irgendiwe wills nicht so.
Ok bisschen ausführlicher und praxisbezogener!

Also hab 2 .php Dateien:

index.php

PHP:
....
....
....

<script type="text/javascript">
function fenster ( )
{
window.open ("anzeigen.php","test" );
}
</script>
$_GET["bilder"] = $spalten_bilder[4];	
.....
.....
<tr height="52">
<td width="10" height="52"></td>
<td align="left" width="80 " height="52" nowrap><a href="" onclick="fenster ( )">Download</a></td>
<td width="2" height="52"></td>
<td width="120" height="52">Show</td>
</tr>

anzeigen.php
PHP:
<?php
require("index.php");
?>
<table width="100%" border="1" cellspacing="2" cellpadding="0" height="100%">
<tr height="20">
<td height="20"></td>
</tr>
<tr height="100">
<td align="center" valign="middle" height="100"><?php echo' <img src="hp-pics/ '.$_GET["bilder"].' " '; ?> alt="" height="32" width="32" border="0">
</td>
</tr>

Im Array $spalten_bilder[4] steckt der der Name der Datei drin. Die hab ich aus einer DB geholt.
Den Wert möchte ich in anzeige.php weiter verwenden also "übergeben".
Wie der name anzeigen.php schon sagt soll dort in einem seperaten Fenster das bild angezeigt werden.

der JS script sagt ja schon das es in einem seperaten fenster erzeugt werde soll. So weit so gut.
Aber das ergebnis ist nicht befridigent :(
Im seperaten fenster wird der inhalt Index.php und dadrunter die anzeige.php ohne inhalt angezeigt.

hoffe ich konnte es verständlich rüberbringen!
Hoffe jemand kann mir einen fertigen code für schreiben.
Habs nicht so ganz gebacken bekommen :eek:

Danke!!
 
Hm, der Code sieht für mich unsinnig aus.

1. Mach, wie ich es gesagt hab: Mit einem Link.

2. Du musst die Variable auch per Get an die URL anhängen, nicht einfach ins Dokument schreiben.

3. Du includest ja die index.php


4. Machs so:

PHP:
#index.php:

...

<a href="anzeigen.php?bilder=<?php echo $spalten_bilder[4] ?>" target="_blank">Link</a>


#anzeigen.php:
# Das require weglassen
<img src="hp-pics/<?php echo $_GET["bilder"] ?>" alt="" height="32" width="32" border="0">
 
Zurück