Bild passend in Iframe anzeigen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
anzeigen
beitrag
bild
datei
einfache lsung
fllen
gewnschten gre
gre
hhen
irgend
klicken
lsung
mglichkeit
mhen
ordner
originalgre
quelltext
schnelle hilfe
vielen dank
zuviel
-
Morgen Leute,
hab ein Problem bei meiner Seite und komme überhaupt nicht voran.
Ich habe ein Iframe das trägt den Namen "bild" (300x300) und in dieses IFrame soll per Button-Klick:
<input type="button" onClick="top.bild.location.href='1.JPG'" value="Bild zeigen">
...das Bild "1.JPG" !!MIT EINER BREITE VON 200!! geladen werden.
Ich habe schon viel geteste, an Schreibfehler oder sonstigem liegts nicht, wahrscheinlich aber dem Know-How was ich nicht habe, ihr schon
Vielen Dank,
zocca -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
<?php if (isset($_POST['bld'])){$wert='bild.gif';} echo "<iframe name=\"ifrm\" src=\"$wert\" frameborder=\"0\" width=\"200\" height=\"300\" allowTransparency=\"true\"></iframe> <form METHOD=\"POST\" ACTION=\"$_SERVER[PHP_SELF]\"> <input type='submit' name=\"bld\" value='Bild zeigen'> </form> "; ?>
mmm.. bin mir nicht ganz sicher ob Passend? width=\"200\" height=\"300\" sind ja eigentlich für den Frame. So geht es zumindest es gibt bestimmt noch ellegantere Lösungen!
Beitrag geaendert: 23.3.2007 11:47:52 von ef06 -
Hallo, Vielen Dank für die schnelle Hilfe.
Ja, hab das vorher schon mal so ausprobiert und es wird lediglich die Größe des Frames auf 200 gesetzt, nicht aber die des Bildes.
Gibts vielleicht noch irgendwie ne andere Lösung wie man die Originalgröße eines Bildes in diesem Frame mit der Breite 200 anzeigen lassen kann?
Thanx a lot -
Gibts vielleicht noch irgendwie ne andere Lösung wie man die Originalgröße eines Bildes in diesem Frame mit der Breite 200 anzeigen lassen kann?
Jo, da gibts mehrere Möglichkeiten (vorausgesetzt, ich habe dich richtig verstanden:
1. (nicht der neuste Stand von W3C)
<img src="1.JPG" alt="Bildname" width="200" />
2. (XTHML valid)
<img src="1.JPG" alt="Bildname" style="width:200px" />
in beiden Fällen wird die Höhe relativ zur Bildbreite vom Browser angezeigt (das Bild wird also nicht verzerrt).
3. Du erstellst einfach ein Thumbnail von deinem Bild, das 200px breit und entsprechend hoch ist und lädst das dann in den Iframe. Thumbnails kannst du z.B. mit JPEGResampler (=> Google) machen. -
Ja, das ist genau das Problem:
Punkt 3 möchte ich ja vermeiden, jedes Bild soll so groß sein wie es will und trotzdem immer mit einem Klick mit der Breite 200 (in einem Iframe) angezeigt werden.
bei 1. bzw. 2. wird das Bild ganz normal angezeigt (nicht im IFrame und nicht per Klick), jedoch wenn man es verlinken will, z. B. mit:
<iframe src="Test.php" name="bild" height="300" width="300"></iframe>
<a href="1.JPG" target="bild"> <img src="1.JPG" width="200"> </a>
... kann ich bei <iframe> nicht die Breite verändern, denn das würde allein die Breite des Iframes verändern, nicht aber die des im Iframe angezeigten Bildes, dies ist immernoch in Originalgröße.
Bei <a> bringt das Einfügen der Breite auch nichts, da passiert glaub ich gar nix und bei <img> die Breite einfügen bewirkt der Link seine Breite verändert.
Gibts eine Lösung für mein blödes Problem?
Thanx.
-
Ja, das ist genau das Problem:
Punkt 3 möchte ich ja vermeiden, jedes Bild soll so groß sein wie es will und trotzdem immer mit einem Klick mit der Breite 200 (in einem Iframe) angezeigt werden.
bei 1. bzw. 2. wird das Bild ganz normal angezeigt (nicht im IFrame und nicht per Klick), jedoch wenn man es verlinken will, z. B. mit:
<iframe src="Test.php" name="bild" height="300" width="300"></iframe>
<a href="1.JPG" target="bild"> <img src="1.JPG" width="200"> </a>
... kann ich bei <iframe> nicht die Breite verändern, denn das würde allein die Breite des Iframes verändern, nicht aber die des im Iframe angezeigten Bildes, dies ist immernoch in Originalgröße.
Bei <a> bringt das Einfügen der Breite auch nichts, da passiert glaub ich gar nix und bei <img> die Breite einfügen bewirkt der Link seine Breite verändert.
Gibts eine Lösung für mein blödes Problem?
Thanx.
und wie wäre es wenn Du im Iframe ne für die Bildausgabe vorbereitete Seite mit <img src"......." height= ......> ausgeben läst?
Zumindest wird dann das Bild der orgabe entsprechend angezeig. der Iframe kann ja der gewünschten größe angepaßt sein? -
Ja, über diese Alternative habe ich auch schon drüber nachgedacht und sie auch schon ausprobiert, jedoch ist das bei vielen Bildern sehr mühsam (außer es würde funktionieren, dass sich bei einem Klick das Bild in diese Seite lädt und die Seite dann im Iframe angezeigt wird) und bevor ich mir (mal wieder) zuviel Mühe mach frag ich lieber mal nach obs nicht (mal wieder) irgend ne einfache Lösung in PHP oder HTML gibt.
-
Ja, über diese Alternative habe ich auch schon drüber nachgedacht und sie auch schon ausprobiert, jedoch ist das bei vielen Bildern sehr mühsam (außer es würde funktionieren, dass sich bei einem Klick das Bild in diese Seite lädt und die Seite dann im Iframe angezeigt wird) und bevor ich mir (mal wieder) zuviel Mühe mach frag ich lieber mal nach obs nicht (mal wieder) irgend ne einfache Lösung in PHP oder HTML gibt.
Ist mit Sicherheit auch richtig. Ich würde es einfach mal so versuchen. Den img-Link kanste ja per post oder get an die Seite übergeben. Ich glaube mt einer Funktion oder class ist das auch realisierbar.
Beitrag geaendert: 24.3.2007 11:39:54 von ef06 -
Kannst du (ihr) mir vielleicht mit nem Quelltext irgendwie weiterhelfen?
Vielen Dank!!
WENN ES NOCH EIN WENIG ZEIT HAT SCHON. -
Kannst du (ihr) mir vielleicht mit nem Quelltext irgendwie weiterhelfen?
Vielen Dank!!
Die Datei img.php:
<html> <head> <title>Bildvorschau</title> <style type="text/css"> body { margin:0; } </style> </head> <body> <img src="<?php echo $_GET['img']; ?>.JPG" alt="Bildvorschau" width="200" /> </body>
Und das rufst du über folgenden Link auf:
<a href='img.php?img=1' target='bild'>Linktext<a> -
die Eingabe :
<?php echo" <form method=\"POST\" action=\"./bilderseite.php\"> <input type='text' name='bld' value='Bild zeigen'> <input type='submit' value='Bild zeigen'>"; ?>
bildausgabe:
bilderseite.php
<? echo "<iframe name='bild' frameborder='0' width='300' height='300' allowTransparency='true'></iframe> <img src=\"$_POST[bld]\" width=\"200\" border=\"0\" target=\"bild\">"; ?>
oder alles in einer Datei :
<?php if(isset($_POST['weiter']) && !empty($_POST['bld'])){ echo "<iframe name='bild' frameborder='0' width='300' height='300' allowTransparency='true'></iframe> <img src=\"$_POST[bld]\" width=\"300\" border=\"0\" target=\"bild\">"; } echo" <form method=\"POST\" action=\"$_SERVER[PHP_SELF]\"> <input type='text' name='bld' value='Bild zeigen'> <input type='submit' name=\"weiter\" value='Bild zeigen'>"; ?>
ich meine das sollte so gehen.
Habe es nicht weiter ausprobiert!
Beitrag geaendert: 24.3.2007 13:12:11 von ef06 -
Vielen Dank für euere Hilfe. Werd mich mal dran begeben und es ausprobieren.
Eine Frage hätte ich da aber noch. Wenn meine Bilder jetzt in einem OBERordner liegen, wie gelingt es mir diese dann anzusprechen? Wenn sie in einem UNTERordner liegen ist das ja ganz simple, aber nicht bei einem OBERordner.
Hab das ganze auch mal ausprobiert, sieht dann ungefähr so z. B. aus:
$lines = file ('/home/webpages/bla/bla/html/bla/bla.jpg');
... aber das ganze funktioniert bei JPG-DATEIEN oder sonstigen Dateitypen nicht, nur bei TXT-DATEIEN komischerweise? Woran kann das liegen?
Hab ihr vielleicht ne Idee wies auch mit JPGs,... klappt?
DANKE -
Auf einen übergeordneten Ordner kannst du mit ../ zugreifen. Z.B. so:
$lines = file ('../bla.jpg');
Das Bild bla.jpg befindet sich dann einen Ordner höher. Das geht bei 2 oder mehr Ordnern analog:
$lines = file ('../../bla.jpg');
$lines = file ('../../../bla.jpg');
... -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage