PDA

Volledige versie bekijken : Kan PHP-fotoalbum in pop-up?


bfmpatelski
%Europe/Berlin %568 %2006, 13:38
Hallo mensen,

15 Minuten dacht ik nodig te hebben om mijn fotoalbums in een pop-up te plaatsen. Inmiddels zijn twee dagen voorbij en de pop-up is er nog steeds niet.

Hier het relevante script uit center_fotoalbum_01.php dat welliswaar werkt, maar niet voldoet (TARGET='_blank'):

. . .
</head>

<?php
mysql_connect("xxxxx","yyyyy","zzzzz");
mysql_select_db("yyyyy");
$qr=mysql_query("SELECT id, Naam FROM Fotoalbum ORDER BY id DESC");
$nrows=mysql_num_rows($qr);
for ($i=0; $i<$nrows; $i++) {
$row=mysql_fetch_array($qr);
echo "<font style=\"color:#000000; font-family: Verdana, Arial, Helvetica, sans-serif; font-size:10;\"><b>";
$keuze = $row["id"];
echo "<A HREF='fotoalbum_01.php?idcode="."$keuze"."'"."TARGET='_blank'>";
echo $row["Naam"];
echo "</A><BR><BR>";
}
?>

</body>
</html>


Hier het relevante script uit fotoalbum_01.php:

. . .
<?php
$dbname = "xxxxx";
$dbuser = "yyyyy";
$dbpw = "zzzzz";
$dbhost = "ooooo";

$open = mysql_connect($dbhost, $dbuser, $dbpw) or die(mysql_error());
mysql_select_db($dbname) or die(mysql_error());
$keuze = $_GET["idcode"];
$sql = mysql_query("INSERT INTO OpgevraagdAlbum (Nummer) VALUES ('$keuze')") or die (mysql_error());
?>

</head>

<body bgcolor="#000000">
<div id="Layer1" style="position:absolute; left:0px; top:0px; width:328px; height:339px; z-index:1">
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase=//"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="1024" height="720">
<param name="quality" value="high"><param name="SRC" value="fotoalbums/album_01/foto_inladen_01.swf">
<embed src="fotoalbums/album_01/foto_inladen_01.swf" width="1024" height="720" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash"></embed></object>

</div>
</body>
</html>


Mijn vraag is nu hoe de wijziging(en) er uit zien, zodat het fotoalbum opent in een pop-up zonder toeters en bellen.


Vol verwachting,
Ben

Macs
%Europe/Berlin %597 %2006, 14:20
ik neem aan dat je je album in een venster zorden knoppen, statusbar etc wordt geopend?
dan moet je een javascript popupscriptje gebruiken...

als je maar wil he ;)

bfmpatelski
%Europe/Berlin %620 %2006, 14:53
Hallo Macs,

Ik wil wel (zie mijn handtekening), maar het lukt me niet.
Wanneer ik in center_fotoalbum_01.php

echo "<A HREF='fotoalbum_01.php?idcode="."$keuze"."'"."TARGET='_blank'>"; vervang door:
echo "<A HREF='fotoalbum_01.php?idcode="."$keuze"."'"."script language='JavaScript' onMouseDown='window.open('fotoalbum_01.html','will ekeurigenaamzonderspatie','width=1024,height=720,t oolbar=no,scollbars=no');'>";
waarin fotoalbum_01.html het bestand foto_inladen_01.swf ophaalt, dan opent het fotoalbum niet in een pop-up, maar in het frame waar de links van de diverse fotoalbums staan.


Groet,
Ben

Macs
%Europe/Berlin %632 %2006, 15:11
Ik wil wel (zie mijn handtekening), juist daarom ;)

dit is de goede html:

<A HREF="javascript:window.open('fotoalbum_01.html','naam', 'width=1024,height=720,toolbar=no,scollbars=no');">Klik hier</a>

bfmpatelski
%Europe/Berlin %643 %2006, 15:26
Hallo Macs,

Niet helemaal het goede script, want er zijn een onbeperkt aantal fotoalbums en de tekst > Klik hier < moet dus vervangen worden door de verschillende - in de database ingevoerde - namen van fotoalbums.

Groet,
Ben

Zie www.tcnieuwenhagen.nl > Ledenpagina > Fotoalbum

bfmpatelski
%Europe/Berlin %977 %2006, 23:27
Hallo mensen,

Is er nog iemand anders die mij op weg wil helpen?

Groet,
Ben

Macs
%Europe/Berlin %475 %2006, 11:25
het lastige is het werken met al die aanhalingstekens...
makkelijker zou zijn een javascriptfunctie in je headtag te zetten en deze aan te roepen, maar dit zou ook moeten werken:

$string = "javascript:window.open('fotoalbum_01.php?idcode=$k euze','fotoalbum', 'width=1024,height=720,toolbar=no,scollbars=no');";
echo '<a href="'.$string.'">Fotoalbum '.$keuze.'<a>';

bfmpatelski
%Europe/Berlin %540 %2006, 12:58
Hallo Macs,


Fantastisch, het werkt!
De pop-up functioneert en de inhoud ervan wordt correct weergegeven.

Er is alleen met dit nieuwe script een klein schoonheidsfoutje ingeslopen.
Wanneer je het geselecteerde foto-album sluit, is het frame waar de links naar de foto-albums stonden nu leeg, met uitzondering van de tekst [object].

Ik weet nu nog niet waar dit aan ligt, maar ik denk dat ik hier een kwartiertje voor nodig heb om dit op te lossen.


Heel erg bedankt.
Groet,
Ben

bfmpatelski
%Europe/Berlin %755 %2006, 18:08
Hallo mensen,

Het bovenvermelde probleem is opgelost door in de <HEAD> van fotoalbum_01.php het volgende script te plaatsen
<script type="text/javascript">
<!--
function herladen_opener()
{
opener.location.href = 'center_fotoalbum1.php';
}
-->
</script>

en in de <BODY> van fotoalbum_01.php

<body onLoad="javascript:herladen_opener()">

Het script in center_fotoalbum_01.php is verbeterd met als gevolg dat de link naar de fotoalbums nu gekoppeld is aan de naam van het fotoalbum i.p.v. aan de id ($keuze). Zie onderstaande code.

$string = "javascript:window.open('fotoalbum_01.php?idcode=$k euze','fotoalbum', 'width=1024,height=720,toolbar=no,scollbars=no');";
echo '<a href="'.$string.'">'.$row["Naam"].'<a>';


Iedereen nogmaals hartelijk bedankt, maar vooral Macs.

Ben

Macs
%Europe/Berlin %595 %2006, 14:17
Graag gedaan ;)