php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2006

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 23.09.2006, 09:47  
Erfahrener Benutzer
 
Registriert seit: 11.12.2004
Beiträge: 238
PHP-Kenntnisse:
Anfänger
Buschdieb
Standard überprüfen ob bild da ist

Hallo!

Ich ahb da ein kleines Problem. Wie kann ich überprüfen ob ein Bild unter einer URL vorhanden ist oder nicht?

Hat jemand eine Idee?

Vielen lieben Dank schon mal!
__________________
fragen ist kostenlos!

Buschdieb.com
Buschdieb ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 23.09.2006, 12:37  
Erfahrener Benutzer
 
Registriert seit: 08.06.2004
Beiträge: 865
RudiS
Standard

Ich weiß zwar nicht, ob es der beste Weg ist, aber so geht es:
Du öffnest eine Verbindung zum Server mit fsockopen() und schickst ein HEAD Request an den Server mit dem Pfad zum Bild (oder einer anderen Datei).
Wenn es nicht existiert bekommst du einen "404 Not Found" Statuscode, oder "401 Unauthorized", oder "403 Forbidden". Wenn es existiert bekommst du z. B. "200 OK", "301 Moved Permanently", "303 See Other" oder "307 Temporary Redirect". Das kannst du dann auswerten.
PHP-Code:
<?php
function checkForImage$server$path )
{
    
$fp = @fsockopen$server80$errno$errstr30 );
    if ( !
$fp )
    {
        return 
$errstr ' (' $errno .')';
    }
    else
    {
        
$out  'HEAD /' $path ' HTTP/1.1' "\r\n";
        
$out .= 'Host: ' $server "\r\n";
        
$out .= 'Connection: Close' "\r\n\r\n";
        
        
fwrite$fp$out );
        
$status fgets$fp128 );
        
fclose$fp );
        
        
// prüfen welcher Statuscode zutrifft, wenn es einer der folgenden ist, dann ist ein Fehler aufgetreten:
        
$status401 = ( strpos$status'401' ) !== false ); // Unauthorized
        
$status403 = ( strpos$status'403' ) !== false ); // Forbidden
        
$status404 = ( strpos$status'404' ) !== false ); // Not Found
        
        
return !( $status401 or $status403 or $status404 );
    }
}
?>
Dann kannst du so nach einem Bild (oder jeder anderen Datei) prüfen:
PHP-Code:
<?php
    $check 
checkForImage'w3c.org''Icons/w3c_main' );
    if ( 
$check === true )
    {
        
// Bild existiert
    
}
    elseif ( 
$check === false )
    {
        
// Bild existiert nicht
    
}
    else
    {
        
// Es ist ein Fehler aufgetreten (Server nicht gefunden, ...)
    
}
?>
Falls es dir nur wichtig ist, ob das Bild existiert (und nicht ob ein Fehler aufgetreten ist) geht es auch etwas einfacher:
PHP-Code:
<?php
    
if ( checkForImage'w3c.org''Icons/w3c_main' ) === true )
    {
        
// Bild existiert
    
}
    else
    {
        
// Bild existiert nicht oder ein Fehler ist aufgetreten
    
}
?>
mfg RudiS
__________________
Kunst kommt von Können und nicht von wollen, denn sonst würde es ja Wunst heißen.
RudiS ist offline  
Alt 23.09.2006, 13:45  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard Re: überprüfen ob bild da ist

Zitat:
Zitat von Buschdieb
Ich ahb da ein kleines Problem. Wie kann ich überprüfen ob ein Bild unter einer URL vorhanden ist oder nicht?
entweder erst garkeine fremden Bilder leechen oder wenn es dein eigener Server ist, über den Serverpfad.
Zergling-new ist offline  
Alt 24.09.2006, 12:27  
XLB
Erfahrener Benutzer
 
Registriert seit: 31.07.2005
Beiträge: 1.126
PHP-Kenntnisse:
Fortgeschritten
XLB
Standard

Mit getimagesize(), das auch mit "entfernten" Resourcen umgehen kann, könntest du das ebenfalls prüfen.
XLB ist offline  
Alt 24.09.2006, 16:09  
Erfahrener Benutzer
 
Registriert seit: 11.12.2004
Beiträge: 238
PHP-Kenntnisse:
Anfänger
Buschdieb
Standard

Hey super!

Vielen Dank!

Wir trenne ich jetzt am sinnvollsten die server adresse vom pfad mit php?

Beispiel:

http://www.diedomain.de/test/test.jpg

server: diedomain.de
pfad: /test/test.jpg

vielen Dank!
__________________
fragen ist kostenlos!

Buschdieb.com
Buschdieb ist offline  
Alt 24.09.2006, 16:35  
XLB
Erfahrener Benutzer
 
Registriert seit: 31.07.2005
Beiträge: 1.126
PHP-Kenntnisse:
Fortgeschritten
XLB
Standard

Hallo.

Mit parse_url() wäre dir wohl geholfen ...
XLB ist offline  
Alt 25.09.2006, 10:44  
Erfahrener Benutzer
 
Registriert seit: 11.12.2004
Beiträge: 238
PHP-Kenntnisse:
Anfänger
Buschdieb
Standard

supi.... prima ihr habt mir sehr geholfen!

DANKESCHÖN

ciao
__________________
fragen ist kostenlos!

Buschdieb.com
Buschdieb ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Es erscheint das alte Bild (cache problem) !! mac PHP-Fortgeschrittene 12 18.05.2011 11:23
Bild onMouseOver einblenden rocco HTML, Usability und Barrierefreiheit 8 22.02.2008 12:52
Transparentes Bild über Bild legen *update gelöst* Broadcast PHP-Fortgeschrittene 11 04.02.2008 15:27
Dynamische Bildgenerierung: Bild ändert sich nicht Jacks Rache PHP Tipps 2006 1 03.09.2006 10:01
[Erledigt] Nächstes Bild, Vorheriges Bild in PHP mit MySQL Datenbanken 2 15.05.2006 20:50
[Erledigt] Bild immerwieder holen PHP Tipps 2006 2 18.02.2006 01:24
Designproblem: Text und Bild Sirke HTML, Usability und Barrierefreiheit 2 08.09.2005 14:59
[Erledigt] Bild aus Datei in Bild einfügen PHP Tipps 2005-2 1 07.08.2005 23:36
[PHP«Image] Bild in ein anderes Bild einsetzen PHP Tipps 2005-2 4 07.08.2005 19:39
bild na variable holen... md5hash PHP Tipps 2005-2 5 16.06.2005 01:07
[Erledigt] Bild neu laden. HTML, Usability und Barrierefreiheit 1 08.02.2005 21:59
[Erledigt] [JS]Neues Bild in neuem Fenster öffnen HTML, Usability und Barrierefreiheit 1 04.01.2005 11:39
Bild aus Server anzeigen lassen flual2000 PHP Tipps 2004 4 26.10.2004 16:33
Bild größe hat prob mit umbenennung. JEGO PHP Tipps 2004 1 08.07.2004 16:30

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
http://www.php.de/php-tipps-2006/42208-ueberpruefen-ob-bild-da-ist.html, php server bild vorhanden 404, moved permanently how to check javascript, php test ob bild, php überprüfen ob bild auf server, überprüfen ob image in cache, php prüfen ob bild da, überprüfen ob bild fehlerhaft, url prüfen ob ein bild da ist, php prüfen ob bild existiert, $fp = fsockopen ($server, 80, $errno, $errstr, 30);, javascript bilder überprüfen, javascript prüfen ob bild im cache ist, html bild prüfen, php wenn bild not found standard bild, javascript prüfen ob 404, check ob bild ok ist php, javascript testen ob bild ok ist, prüfen ob image auf anderen server, htnl prüfen ob foto vorhanden ist

Alle Zeitangaben in WEZ +2. Es ist jetzt 12:52 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.