Seite 1 von 1
nach link --- Fenstergröße bestimmen
Verfasst: 09.01.2006 09:50
von Noxxx
also ich habe ein paar bilder und wenn wenn man auf die klickt dann öffnet sich ein neues fenster in dem der php code steht zum bilderauslesen das funzt auch alles nur würde ich gern die neue fenstergröße auf 600','500' bestimmen bis jetzt habe ich das mit java gemacht das sah dann so aus
javascript:fenster('sy05/tra8.htm','600','500') mein neuer link ist aber so
http://www.hate-you.ch/sy05.php?s=3 wie mach ich das da mit der fenstergröße ??????
Verfasst: 09.01.2006 10:02
von Bonaparte
Du könntest z.B. die Bildgröße ablesen, die variablen übermitteln und in JS Code die Größen ausgeben lassen.
Damit könntest du schonmal anfangen
Code: Alles auswählen
$pic = "bild.jpg";
$psize = getimagesize($pic);
echo "Breite: " . $psize[0]. " Höhe ".$psize[1];
Verfasst: 09.01.2006 10:07
von Noxxx
mmh ja aber ich mach das ja jetzt per php und nichtmehr per java und das problem ist das das alles in einen link passen muss da das kleine bilder sind auf die man dann klickt und dann kommt das große bild,....
und mir tut das jetzt leider aber ich kenn mich nicht so aus daher sagt mir dein code nix,... zumal auf der seite wo das dann verlinkt wird ist auch alles php code und ich weiß dann auchnicht wie der direkt angepasst wird,.... ich kann ihn ja mal vielleicht posten,.... aber eigentlich muss der ja nicht verändert werden oder ???
Code: Alles auswählen
<?php
$bild_pfad ="sy05"; // Ordner in dem die Bilder sind
$oeffne_pfad=opendir($bild_pfad); // Ordner öffnen
$PicCODE= 1;
while ($find = readdir($oeffne_pfad)) // Ordnerinhalt auslesen
{
if (preg_match("/.(jpg|gif|png)$/i", $find))
{
$bild[$PicCODE] = "$bild_pfad/$find";
$PicCODE++;
if ( ++$piccount % 5 == 0 )
{
$hidden = $find;
}
}
}
$datei=$PHP_SELF;
$max= $piccount;
if (!isset($s)) { $s=1; }
$zurück = $s-1; //$s (bild) -1 d.h. bild[aktuell] -1
if ($zurück<=0) { $zurück=1; } //wenn zurück
$vor = $s+1; //$s (bild) +1 d.h. bild[aktuell] +1
if ($vor>=$max) { $vor=$max; } //wenn vor
echo "<div align=center>";
echo "<img src=$bild[$s] border=1><br><br>n"; //Ausgabe des Bildes
echo "<a class=\"link\" href='$datei?s=$zurück'>[Zurück zu Bild $zurück] </a>"; //Zurück link
echo " Bild: $s ";
$gallery_size = sizeof($bild);
if ($s<$gallery_size) {
if ($vor == $max) {
echo "<a class=\"link\" href='$datei?s=$vor'> [Weiter zum letzten Bild]</a>";
}
else {
echo "<a class=\"link\" href='$datei?s=$vor'> [Weiter zu Bild $vor]</a><br>"; //Vor Link
}
}
echo "</div>";
?>
Verfasst: 09.01.2006 10:29
von MagMo
Hi,
interessanter Code.
Wenn du die Fenstergröße festlegen/ändern willst, dann kommst du um Javascript nicht drumrum. Meines Wissens nach ist es weder mit PHP noch mit einfachem HTML möglich die Fenstergröße zu beeinflussen.
Ich lasse mich da allerdings gerne eines Besseren belehren.
Grüße
MagMo
Verfasst: 09.01.2006 10:43
von Noxxx
aha also muss ich das javascript so abändern das es auf den php code linkt ??????
.... warum ist an dem code was falsch oder ??? ich mein so gut bin ich da auch nicht und da nehm ich gern jede hilfe an,.....!
Verfasst: 09.01.2006 11:01
von MagMo
Hi,
Noxxx hat geschrieben:... aha also muss ich das javascript so abändern das es auf den php code linkt ??????
Ja.
Noxxx hat geschrieben:... warum ist an dem code was falsch oder ???
Du sagst doch, dass er funktioniert, daher kann er nicht wirklich falsch sein. Je nach PHP-Konfiguration (z.B. der Standard-Konfiguration), hast du da nur eine klitzekleine Sicherheitslücke drin.
Mindestens eine Änderung würde ich vornehmen:
Vor
würde ich etwas dieser Art einfügen:
Code: Alles auswählen
if ((!(isset($HTTP_GET_VARS['s']))) || (is_null($HTTP_GET_VARS['s'])) || (eregi_match('[^0-9]', $HTTP_GET_VARS['s'])))
{ $irgendeineVariable = 1; }
else
{ $irgendeineVariable = eregi_replace('[^0-9]', '', $HTTP_GET_VARS['s']); }
Dann noch ALLE $s im Code durch $irgendeineVariable ersetzen. Die Variable $irgendeineVariable kannst du natürlich auch anders benennen, nur $s würde ich nicht nehmen. Anstat eregi_match und eregi_replace kannst du natürlich auch preg_match und preg_replace verwenden, dann musst du allerdings die Regulären Ausdrücke anpassen.
Grüße
MagMo