 |
| Hinweise |
Willkommen im TP-Hilfe-Forum!Dies ist ein Forum zu den Themen Photoshop, Dreamweaver, Flash, Selbständigkeit und mehr, in dem Du Hilfe, Anleitung oder eine Lösung zu Deinen Problemen erhältst. Aktuell bist Du in unseren Foren als Gast mit reinen Leserechten unterwegs. Wenn Du Dich registrierst, kannst Du eigene Themen verfassen, Deine Frage stellen und privat mit anderen TPlern kommunizieren. Weitere Foren werden zugänglich, und Du wirst – falls gewünscht – per Mail über neue Beiträge informiert. Die Registrierung ist schnell und kostenlos. Sollten bei der Registrierung Fragen auftauchen, reicht ein Klick in unsere Hilfe - Häufig gestellte Fragen oder eine kurze Mitteilung an das Support-Team. Viel Spaß bei Traum-Projekt.com |
14.11.2002, 11:04
|
#1
|
|
TP-Veteran
Registriert seit: Jun 2001
Ort: Wien
|
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).
|
|
|
14.11.2002, 11:20
|
#2
|
|
TP-Veteran
Registriert seit: Jun 2001
Ort: Wien
|
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).
|
|
|
14.11.2002, 11:43
|
#3
|
|
TP-Specialist
Registriert seit: Mar 2001
Ort: NDS
|
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!
|
|
|
14.11.2002, 11:49
|
#4
|
|
TP-Veteran
Registriert seit: Jun 2001
Ort: Wien
|
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.
|
|
|
14.11.2002, 12:01
|
#5
|
|
TP-Moderator
Registriert seit: Nov 2002
Ort: Hamburg
|
|
|
|
14.11.2002, 12:06
|
#6
|
|
TP-Veteran
Registriert seit: Mar 2001
Ort: wein4tel (ö)
|
vielleicht auch ein ansatz:
check die dateigröße (filesize(datei)) - wenn die 0 ist, dann gibts da bild nicht.
könnte das klappen?
|
|
|
14.11.2002, 12:08
|
#7
|
|
TP-Moderator
Registriert seit: Feb 2001
Ort: Helmstedt/Wolfsburg
|
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, $errstr, 30);
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($fp, 1024);
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
|
|
|
14.11.2002, 12:30
|
#8
|
|
TP-Veteran
Registriert seit: Jun 2001
Ort: Wien
|
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.
|
|
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
Thema durchsuchen |
|
|
|
| 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.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 23:28 Uhr.
|
 |