tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
9
ZUGRIFFE
548
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von wewa
    wewa wewa ist offline Mitglied Bronze
    Registriert seit
    Apr 2007
    Beiträge
    25
    Hallo an alle!

    Ihr kennt sicher http://picmirror.de.

    Ich will genauso wie auf dieser Hompage auch auf meiner Page Bilder anzeigen lassen. Nicht über den direkten Pfad, sonder über ein PHP-Skript.

    Ich hab mich schon ein wenig mit "readfile()" und headern herumgespielt. Aber es wird ein Download gestartet.
    Wie kann ich es machen, dass der Browser das Bild anzeigt.
    Mein Code sieht ca. so aus:
    PHP-Code:
    $download "stromdose.jpg";
        
    $filename basename($download);
            
    header("Content-Type: img/jpeg");
            
    header("Content-Disposition: attachment; filename=\"$filename\"");
            
    header("Content-Transfer-Encoding: binary");
            
    header("Accept-Ranges: bytes");
            
    header('Content-Length: '.filesize("$download"));
            
    header("Last-Modified: " gmdate("D, d M Y H:i:s"filemtime("$download")) . " GMT"true200);
        
    readfile($download); 
    Könnt ihr mir sagen was daran falsch ist?
    Geändert von wewa (11.04.07 um 16:09 Uhr)
     

  2. #2
    ali_f ali_f ist offline Mitglied Bronze
    Registriert seit
    Jan 2007
    Ort
    Hamburg
    Beiträge
    45
    Hallo.

    Ich glaube Du benötigst eher das: imagecreatefromjpeg()
     
    MfG,
    Ali

  3. #3
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Folgendes sollte ausreichen:
    PHP-Code:
    $download 'stromdose.jpg';
    header('Content-Type: image/jpeg');
    header('Content-Length: '.filesize($download)); 
    header('Last-Modified: '.gmdate('D, d M Y H:i:s'filemtime($download)).' GMT');
    readfile($download); 
    Allerdings sollte noch geprüft werden, ob die angeforderte Datei existiert und es überhaupt erlaubt ist, diese herunterzuladen.
     
    Markus Wulftange

  4. #4
    Avatar von SnEaKy
    SnEaKy SnEaKy ist offline Mitglied Gold
    Registriert seit
    Sep 2004
    Ort
    Hattersheim
    Beiträge
    219
    Mein vorschlag:
    $pfad muss halt angepasst werden....

    PHP-Code:
    <?php
    header 
    ("Content-type: image/jpeg");
    $im ImageCreateFromJPEG($pfad);
    ImageJPEG($im);
    ImageDestroy($im);
    ?>
     

  5. #5
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Viel zu umständlich. Der Webserver macht das doch auch nicht, wenn eine Grafikdatei direkt angefragt wird.
     
    Markus Wulftange

  6. #6
    Avatar von SnEaKy
    SnEaKy SnEaKy ist offline Mitglied Gold
    Registriert seit
    Sep 2004
    Ort
    Hattersheim
    Beiträge
    219
    Klar, das läuft. So funktioniert mein Galerie-Skript.
     

  7. #7
    Avatar von wewa
    wewa wewa ist offline Mitglied Bronze
    Registriert seit
    Apr 2007
    Beiträge
    25
    Zu Gumbo's Vorschlag:
    Das funktioniert bei IE perfekt, aber Firefox macht trotzdem den Downloadmanager auf. Und wenn ich dann "Öffnen mit Firefox" klicke, dann wird das Bild als Text dargestellt (also Nonsense)

    weiß wer wie man das verhindern kann

    PS: alle anderen Vorschläge hab ich noch nicht versucht, mach ich aber noch
    Geändert von wewa (11.04.07 um 16:09 Uhr)
     

  8. #8
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Dass es nicht funktioniert, bezweifle ich auch nicht. Ich kritisiere bloß, dass es umständlich ist und den Server unnötig belastet. Gerade die Grafikverarbeitung fordert viele Ressourcen. Und da ist jede Vermeidung von unnötigen Operationen gewünscht.
    Wenn du auf den Fahrersitz eines Autos möchtest, steigst du doch wenn die Fahrertür offen steht auch nicht durch den Kofferraum ein.

    Ergänze mal das Skript durch Folgendes:
    PHP-Code:
    header('Content-Disposition: inline'); 
    Vielleicht liegt es aber auch nur an deinen Einstellungen.
     
    Markus Wulftange

  9. #9
    Avatar von SnEaKy
    SnEaKy SnEaKy ist offline Mitglied Gold
    Registriert seit
    Sep 2004
    Ort
    Hattersheim
    Beiträge
    219
    Okay, da geb ich dir recht. Ich verwende des in menem Skript auch ein wenig anders (zur erzeugung von Thumbs). Hatte es nur grad angepasst, an das was hier gefordert war.
     

  10. #10
    Avatar von wewa
    wewa wewa ist offline Mitglied Bronze
    Registriert seit
    Apr 2007
    Beiträge
    25
    So, das hat jetzt funktioniert.
    Jetzt funktioniert es in IE und Firefox.

    So sieht jetzt mein Code aus:
    PHP-Code:
    <?
    $download 
    'stromdose.jpg';
    header('Content-Type: image/jpeg');
    header('Content-Disposition: inline');
    header('Content-Length: '.filesize($download));
    header('Last-Modified: '.gmdate('D, d M Y H:i:s'filemtime($download)).' GMT');
    readfile($download);
    ?>
    Geändert von wewa (11.04.07 um 16:10 Uhr)
     

Ähnliche Themen

  1. Bildausgabe mit Alter
    Von Cusco im Forum PHP
    Antworten: 4
    Letzter Beitrag: 05.07.10, 11:00
  2. Variablenabhängige Bildausgabe
    Von schlumsch im Forum Java
    Antworten: 0
    Letzter Beitrag: 08.09.08, 16:48
  3. Bildausgabe funktioniert nicht.
    Von soa im Forum PHP
    Antworten: 2
    Letzter Beitrag: 01.07.05, 07:28
  4. Zweifarbige Bildausgabe
    Von antec im Forum Photoshop
    Antworten: 6
    Letzter Beitrag: 23.04.05, 18:50
  5. Script für Bildausgabe
    Von NuLL im Forum PHP
    Antworten: 12
    Letzter Beitrag: 17.02.04, 22:19