getimagesize - Ladezeitproblem

Sasser

Erfahrenes Mitglied
Hallo Leute!

Ich gebe dem User die Möglichkeit ein Bild hochzuladen. Wenn nun dieser ein Bildpfad gespeichert hat, wird vor Ausgabe geprüft ob dieses vorhanden ist.
Leider kann es sein, dass der Server auf welchem das Bild ist lahmt und dadurch lädt er bei mir und läd (bis zu 60 Sekunden)!

Wie kann man meinen Code so umstellen, sodass er bei zu langer Zeit mein Standartbild ausgibt?

PHP:
if (getimagesize ( $userpic ) > "0")) {
   echo "<img src='$userpic'>";
} else {
   echo "<img src='images/nouserpic.gif'>";
}
 
Ich danke dir schonmal für deine Mühe!

Aber ich suche einfach eine Möglichkeit zu prüfen, ob das Bild vorhanden ist!
Ich brauche keine Angaben, sondern nur true oder false zurück ob das Bild vorhanden ist!

Das habe ich bisher mit

PHP:
getimagesize ( $userpic )

realisiert, nur ist mir aufgefallen, dass diese Funktion trotz das das Bild vorhanden ist, ziemlich lange gebraucht hat!

Kann man denn dieser Funktion nicht ein Timeout geben etc?
 
Bei Hochladen denke ich eigentlich, dass eine Kopie des Bildes auf deinem Server gespeichert wird. Wieso machst du das nicht auch so?
 
ICh möchte einfach nicht, dass Bilder auf meinen Server hochgeladen werden...

Ich habs jetzt mit file_get_contents gemacht und überprüfe einfach ob das zurückgegebene Leer ist oder nicht!

Vielen Dank für eure Mühe :)
 
[phpf]file_get_contents[/phpf] lädt den Inhalt der Datei. Dies könnte man ausnutzen, in dem man z. B. stat einem Bild auf eine sehr große Datei verlinkt.

Für deine Zwecke geeigneter wäre [phpf]fsockopen[/phpf] wobei es auch hier schon große Ladezeiten geben kann, wenn es mehrere Male aufgerufen werden muss (wenn z. B. 5 Bilder pro Seite angezeigt werden).
 
OK also wäre es noch angebracht das Format zu prüfen, also ob der Pfad die Endung:

JPG
GIF
PNG

hat oder? Welche Endungen würdet ihr noch zulassen?
 
Die Dateiendung hat keinerlei Aussage über den wirklichen Inhalt der Datei.
Hier würde eben wieder [phpf]getimagesize[/phpf] greifen, da es den Mimetype einer Datei auslesen kann.

Am performantesten wäre es, wenn du nach Einstellen des Links, das Bild einmalig prüfst und auf deinen Server kopierst.
 
Zurück