art-d-sign
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 14.11.2002, 11:04   #1
TP-Veteran
 
Benutzerbild von Flow09
 
Registriert seit: Jun 2001
Ort: Wien
Flow09 ist auf einem guten Weg
Question

Prüfen ob Datei auf anderem Server existiert


Hallo!

Ich hab folgendes Problem! Ich möchte prüfen ob eine Bilddatei auf einem anderen Webserver wirklich da ist!
Folgender Hintergrund: Ich hab in einer DB lauter Datensätze wo von eine Spalte mit Links zu Bildern auf anderen Servern belegt ist. Sprich Datensatz schaut so aus: bla, bla, bla, http://www.server.com/bild.jpg!
Nun hab ich aber entdeckt das einige dieser Bilder nicht (mehr) existieren.
Da ich meine Datensätze in einer Tablle ausgebe wo das Bild selbst auch drin sein soll hab ich dadurch die unschönen leeren Bilderfelder!

Ich möchte jetz wissen on das in PHP geht das ich kontrolliere ob dieses Bild wirklich auf dem Server ist und wenn es nicht da it ein alternatives Bild ausgeben!

lg
Flow
__________________
Lesser known Programming Languages #13: SLOBOL
... Although many compilers allow you to take a coffee break while they compile, SLOBOL compilers allow you to travel to Bolivia to pick the coffee. Forty-three programmers are known to have died of boredom sitting at their terminals while waiting for a SLOBOL program to compile. Weary SLOBOL programmers often turn to a related (but infinitely faster) language, COCAINE.

Geändert von Flow09 (14.11.2002 um 11:21 Uhr).
Flow09 ist offline   Mit Zitat antworten


Alt 14.11.2002, 11:20   #2
TP-Veteran
 
Benutzerbild von Flow09
 
Registriert seit: Jun 2001
Ort: Wien
Flow09 ist auf einem guten Weg
Ich habs inzwischen mal hiermit versucht aber das funkt nicht so wirklich! Da werden mir alle Bilder als "Alternativbild" ausgegeben obwohl einige von den Links ein Bild enthalten.
PHP-Code:
if (file_exists($detail[4]))
    {
        echo 
"<td align='center'>\n<a href='detail.php?produkt=".$detail[1]."' target='main'><img src='".$detail[4]."' border='0' width='80'></a>\n</td>\n";
    }
else
    {
        echo 
"<td align='center'>\n<a href='detail.php?produkt=".$detail[1]."' target='main'><img src='keinbild.jpg' border='0' width='80'></a>\n</td>\n";
    } 
Das if ist noch in einer while-Schleife drin!

lg
Flow
__________________
Lesser known Programming Languages #13: SLOBOL
... Although many compilers allow you to take a coffee break while they compile, SLOBOL compilers allow you to travel to Bolivia to pick the coffee. Forty-three programmers are known to have died of boredom sitting at their terminals while waiting for a SLOBOL program to compile. Weary SLOBOL programmers often turn to a related (but infinitely faster) language, COCAINE.

Geändert von the0bone (14.11.2002 um 11:35 Uhr).
Flow09 ist offline   Mit Zitat antworten
Alt 14.11.2002, 11:43   #3
TP-Specialist
 
Benutzerbild von the0bone
 
Registriert seit: Mar 2001
Ort: NDS
the0bone ist auf einem guten Weg
Ich glaube mit file_exists kann man nur Serverintern eine Abfrage starten!

Zitat:
file_exists
(PHP 3, PHP 4 >= 4.0b1)

file_exists -- Überprüft, ob eine Datei existiert
Beschreibung

int file_exists (string filename)


Gibt TRUE zurück, wenn die mit filename spezifizierte Datei existiert, andernfalls FALSE.

file_exists() funktioniert nur mit lokalen Dateien. Die Datei, deren Existenz überprüft werden soll muss über das Dateisystem des Servers erreichbar sein.

Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. Siehe clearstatcache() für weitere Einzelheiten.
__________________
the0bone

Wissen ist Macht, nichts Wissen macht nichts!
the0bone ist offline   Mit Zitat antworten
Alt 14.11.2002, 11:49   #4
TP-Veteran
 
Benutzerbild von Flow09
 
Registriert seit: Jun 2001
Ort: Wien
Flow09 ist auf einem guten Weg
Question

OK! Das war dann also der falsche Ansatz von mir aber kann ich nun überprüfen ob die Datei wirklich auf dem anderen Server da ist???

Oder zumindest dass wenn das Bild nicht angezeigt wird (also dieses komische x) das mir dann eine alternative angezeigt wird (á la "Bild nicht vorhanden")!?!

lg
Flow
__________________
Lesser known Programming Languages #13: SLOBOL
... Although many compilers allow you to take a coffee break while they compile, SLOBOL compilers allow you to travel to Bolivia to pick the coffee. Forty-three programmers are known to have died of boredom sitting at their terminals while waiting for a SLOBOL program to compile. Weary SLOBOL programmers often turn to a related (but infinitely faster) language, COCAINE.
Flow09 ist offline   Mit Zitat antworten
Alt 14.11.2002, 12:01   #5
TP-Moderator
 
Registriert seit: Nov 2002
Ort: Hamburg
DracheTe ist auf einem guten Weg
probier es mal mit der lösung aus

http://www.traum-projekt.com/forum/s...threadid=17644
DracheTe ist offline   Mit Zitat antworten
Alt 14.11.2002, 12:06   #6
TP-Veteran
 
Benutzerbild von steff
 
Registriert seit: Mar 2001
Ort: wein4tel (ö)
steff ist auf einem guten Weg
vielleicht auch ein ansatz:

check die dateigröße (filesize(datei)) - wenn die 0 ist, dann gibts da bild nicht.

könnte das klappen?
steff ist offline   Mit Zitat antworten
Alt 14.11.2002, 12:08   #7
TP-Moderator
 
Benutzerbild von Stuck Mojo
 
Registriert seit: Feb 2001
Ort: Helmstedt/Wolfsburg
Stuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKE
Da fopen auf URLs nicht überall erlaubt ist vielleicht das hier:
PHP-Code:
<?
function checkfile($url) {
  
$url parse_url($url);
  
$fp fsockopen($url["host"],80,$errno$errstr30);
  if (!
$fp) {
      echo 
"$errstr ($errno)<br>\n";
  } else {
      
$httpRequest "HEAD "$url["path"] ." HTTP/1.1\r\n"
                    
."Host: "$url["host"] ."\r\n"
                    
."Connection: close\r\n\r\n";

      
fputs($fp$httpRequest);
      
$zeileeins fgets($fp1024);
      
fclose($fp);

      if(
eregi("200 OK",$zeileeins)) {
        return 
true;
      }
      else {
        return 
false;
      }
  }
}


$pic "http://www.traum-projekt.com/forum/images/header/left.gif";
if(
checkfile($pic)) {
  echo 
"$pic - EXISTIERT<br>";
}
else {
  echo 
"$pic - EXISTIERT NICHT!<br>";
}

$pic "http://www.traum-projekt.com/forum/images/header/leftaaaa.gif";
if(
checkfile($pic)) {
  echo 
"$pic - EXISTIERT<br>";
}
else {
  echo 
"$pic - EXISTIERT NICHT!<br>";
}

?>
Gruss Jan
Stuck Mojo ist offline   Mit Zitat antworten
Alt 14.11.2002, 12:30   #8
TP-Veteran
 
Benutzerbild von Flow09
 
Registriert seit: Jun 2001
Ort: Wien
Flow09 ist auf einem guten Weg
Sind alles gute Vorschläge, besonders das Script von Stuck Mojo hat im Test sehr vielversprechend ausgesehen aber irgendwie funktionierts dann net wirklich wenn ich's in mein Script einfüge!

lg
Flow
__________________
Lesser known Programming Languages #13: SLOBOL
... Although many compilers allow you to take a coffee break while they compile, SLOBOL compilers allow you to travel to Bolivia to pick the coffee. Forty-three programmers are known to have died of boredom sitting at their terminals while waiting for a SLOBOL program to compile. Weary SLOBOL programmers often turn to a related (but infinitely faster) language, COCAINE.
Flow09 ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
Prüfen ob Datei auf anderem Server existiert Prüfen ob Datei auf anderem Server existiert
« wie funktionieren mails über scripte verschicken überhaupt? | Dynamische Auswahlliste | Doppelte Einträge »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
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


Alle Zeitangaben in WEZ +2. Es ist jetzt 23:28 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67