php übergabe von daten aus externen php

manul
servus jungs und mädels,

ich probier jetzt echt schon seit 12 uhr mittag rum, um dieses problem zu lösen.
erstmal zu meinem vorhaben. ich will ne seite erstellen, auf der verschiedene fotos von mir zu sehen sind. wenn ein bild angeklickt wird, öffnet sich ein zentriertes popup und zeigt das bild groß an.
und da es nämlich bestimmt über 100 bilder werden hab ich echt keine lust für jedes bild ne eigene html datei zu machen und diese dann extra über den link im popup zu öffnen. also hab ich mal rumgespielt und folgendes rausbekommen.
über eine externe php-datei werden arrays angesprochen, in denen verschiedene bilder gespeichert sind. siehe code unten.

das steht in meiner externen php3 datei, welche ich popup.php3 genannt habe:
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
<?php
$kopf = "<html><head><title>Saalbach 2005</title></head><body>";
$fuss = "</body></html>";
$zu = "<a href='javascript: window.close()'>Fenster schlie&szlig;en</a>";
$inhalt[0] = $kopf."<img src="img_site/saalbach1.jpg"><p>".$zu.$fuss;
$inhalt[1] = $kopf."<img src="img_site/saalbach2.jpg"><p>".$zu.$fuss;
$inhalt[2] = $kopf."<img src="img_site/saalbach3.jpg"><p>".$zu.$fuss;
$inhalt[3] = $kopf."<img src="img_site/saalbach4.jpg"><p>".$zu.$fuss;
?>



in meiner hauptseite habe ich in den head text folgendes eingesetzt:
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
<!--
function macheSeite()
{
  var b = 820;
  var h = 600;
  var x = screen.width/2 - b/2;
  var y = screen.height/2 - h/2;
Ausgabe = open("", "displayWindow", "width="+b+", height="+h+", left="+x+", top="+y+", menubar=no, toolbar=no, directories=no, scrollbars=no, resizable=no, status=no, location=no");
testseite = Ausgabe.document;
<?php
switch ($uebergabe)
{
case "Bild1":
echo "Inhalt = \"".$inhalt[0]."\"\n";
break;
case "Bild2":
echo "Inhalt = \"".$inhalt[1]."\"\n";
break;
case "Bild3":
echo "Inhalt = \"".$inhalt[2]."\"\n";
break;
case "Bild4":
echo "Inhalt = \"".$inhalt[3]."\"\n";
break;
default:
echo "Inhalt = \" \";\n";
unset($uebergabe);
break;
}
?>
testseite.open();
testseite.write(Inhalt);
testseite.close();
}
//-->



das hier steht im body-tag:
code:
1:
<body <?php if ($uebergabe){ echo "onLoad=\"macheSeite()\"";unset($uebergabe);}?>>



ok, und das ist dann der link, der das popup dann aufruft:
code:
1:
<a href=javascript:window.macheSeite("popup.php3$_REQUEST['uebergabe']=Bild1") class="schrift">test</a>



bevor missverständnisse entstehen, ja, das script ist zum teil von dr web.

ok, also ich denke ich komme soweit, dass das popup zwar geöffnet wird, in das popup aber nichts via übergabe wie es im body-tag steht übertragen wird. das popup ist nämlich da, aber halt leer. es steht nichtmal quelltext drinnen. es ist einfach keiner vorhanden.

also ich hoffe wirklich es kann mir jemand helfen. wahrscheinlich ist es wieder nur ein komma das irgendwo fehlt und mir damit alles versaut unglücklich

danke schon mal im vorraus!

mfg manul
Chris Hunter
zu kompliziert gedacht aber im anstz richtig. ich schreib mal wie ichs machen würde.

mach ne externe datei meinentwegen popup.php

dort definierst du nur die bilddateien das dies ja das ist was sich immer ändert.

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
 
<?php

$picture_array = array(

0=>'bild1.gif',
1=>'bild2.jpg',
2=>'bild3.png'

);

?>


dann haste n array wo z.b. $picture_array [0]='bild1.gif' ist usw.


ich geh jetzt einfach mal davon aus ne hauptseite mit textlinks zu haben da du von thumbnails nichts gesagt hast und die auch sonst nirgens auftauchen. wenn du thumbnails haben möchtest solltest du die auch genereiern und extra ablegen.
also erstmal mein beispiel mit textlinks.
die php der hauptseite machste dann folgendermaßen(ich überprüf mal nicht dein js weil kein bock das muss dann schon stimmen) name der datei ist hier main.php
php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:

<?php
<!--
function PopSeite(page)
{
  var 820;
  var 600;
  var screen.width/b/2;
  var screen.height/h/2;
Ausgabe open(page"displayWindow""width="+b+", height="+h+", left="+x+", top="+y+", menubar=no, toolbar=no, directories=no, scrollbars=no, resizable=no, status=no, location=no");
}
//-->

<?php
//Ausgabe der Textlinks
include('popup.php');

//wenn ein bild komplett ausgegeben werden soll dann diesen code ausführen
if (isset($_REQUEST['showpic']))
{
  echo '<IMG src="'.$picture_array[$_REQUEST['showpic']].'">';
}

//Ausgabe der Textlinks (kann auf thumbnails geändert werden dazu muss das array aber erweitert werden)
$num_pictures=count($picture_array);
for($x=0;$x<$num_pictures;$x++)
{
  echo '<a href="javascript:PopSeite(\'main.php?showpic='.$x.'\';">Bild '.($x+1).'</A> | ';
}
?>


funktionalität ist nicht gewährleistet habs nicht getestet, kann mich auch irgendwo verschreiben haben...

wenn du wissen willst wie es mit thumbnails geht einfach nochmal posten.

hoffe ich konnte helfen... so code jetzt am meinem ding weiter
c u

PS: nicht ungeduldig werden wenn ich längre zeit nicht poste hab immoment echt stress