Alexander: Prüfen ob ein Remote-Bild Existiert

Hallo,

wie prüft man am sichersten ob ein entferntes Bild vorhanden ist oder nicht:

Existiert:
http://images-eu.amazon.com/images/P/349401258X.03.MZZZZZZZ.jpg

Nicht Existiert:
http://images-eu.amazon.com/images/P/3492118224.03.MZZZZZZZ.jpg

Danke.
Gruss Alex.

  1. Hallo, Alexander!

    ich würde sagen, rufe es remote mit php auf und prüfe seine grösse. die sollte [ein wenig ;-)] über 0kb liegen, sonst sieht man nix. *gg*

    freundl. Grüsse aus Berlin, Raik

    1. Hallo, Alexander!

      ich würde sagen, rufe es remote mit php auf und prüfe seine grösse. die sollte [ein wenig ;-)] über 0kb liegen, sonst sieht man

      Hi..

      jahm.. in diesem Fall heisst es die ganze Zeit unable to open, obwohl die Bilder da sind. Sowohl imagecreatefromjpeg als auch fopen und adnere Funktionen geben Fehler.

      Gruss Alex.

      1. Hallo Alex,

        jahm.. in diesem Fall heisst es die ganze Zeit unable to open, obwohl die Bilder da sind. Sowohl imagecreatefromjpeg als auch fopen und adnere Funktionen geben Fehler.

        imagecreatefromjpeg() geht nicht übers Netz. fopen() schon. Wenn du da eine Fehlermeldung bekommst, hast du wahrscheinlich irgendwas falsch gemacht. Schau dir mal diese ungeteste Funktion von den php.net-Kommentaren zu imagecreatefromjpeg() an:

        -------------schnipp-------------
        function LoadJPEG ($imgURL) {

        ##-- Get Image file from Port 80 --##
           $fp = fopen($imgURL, "r");
           $imageFile = fread ($fp, 3000000);
           fclose($fp);

        ##-- Create a temporary file on disk --##
           $tmpfname = tempnam ("/temp", "IMG");

        ##-- Put image data into the temp file --##
           $fp = fopen($tmpfname, "w");
           fwrite($fp, $imageFile);
           fclose($fp);

        ##-- Load Image from Disk with GD library --##
           $im = imagecreatefromjpeg ($tmpfname);

        ##-- Delete Temporary File --##
           unlink($tmpfname);

        ##-- Check for errors --##
           if (!$im) {
               print "Could not create JPEG image $imgURL";
           }

        return $im;
        }
        -------------schnapp-------------

        Schöne Grüße
        Julian

  2. Hallo,

    wenn es dir nur darum geht, in abhängigkeit der (Nicht-)Existenz eines Bildes ein Fehlerbild (o.ä.) stattdessen anzuzeigen, so benutze ich meist den onerror event handler:
    <img src="existiertnicht.gif" onerror="this.src='existiert.gif'">.

    gruss

    --
    no strict;
    no warnings;
    Über eine Rückmeldung freut sich später jeder, der das gleiche Problem hat und im Archiv nach einer Lösung sucht.