Testen ob ein Link existiert?

Hi,

gibt es eine Möglichkeit -außer fsockopen()- mit welcher ich feststellen kann ob ein eingegebener Link auch wirklich existiert. mit Link meine ich z.B. sowas:
http://www.dassitmeinedomain/meinordner/unterordner/…

Ich möchte wissen, ob diese Seite existiert.

Danke

Michael

gibt es eine Möglichkeit -außer fsockopen()- mit welcher ich
feststellen kann ob ein eingegebener Link auch wirklich
existiert. mit Link meine ich z.B. sowas:
http://www.dassitmeinedomain/meinordner/unterordner/…

was hast du gegen fsockopen ? :smile:

so z.B.

$file=file('http://www.wasweissichwasduvonmirwillst.de/undüberhaupt.html');
if (strlen($file)\>0) echo "ja, bin da";
else echo "mich gibts hier nicht";

es leben die möglichkeiten naiver programiertechniken ^^
Allerdings wirst Du auch ein „mich gibts hier nicht“ erhalten, wenn die Datei leer ist… Aber der Sinn einer Datei ist ja _meistens_ der Inhalt :wink:

Fehlermeldungen!!!
Geht nicht. Keine Ahnung warum.

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo,

wenn fsockopen nicht will, kannst Du auch fopen() nehmen, ist zwar was anderes, funktioniert aber auch. Ich habe soetwas neulich auch geschrieben, weil fsockopen immer mit einem getaddrinfo() Fehler kam. Liegt vermutlich am Hoster, wenn das nicht geht.

Also etwa so:

$fp = @fopen("http://www.domain.com",„r“);
if (!$fp) {
echo „Fehler“
}
else {
echo „Klappt“;
fclose($fp);
}

Daniel

file() gibt ein _array_ zurück nur mal so nebenbei, und die stringlänge von einem array prüfst du ab !? garg! ist schon schlimm genug das php sowas überhaupt zulässt, richtig ist es schonmal nicht :smile:

hau mal das in die erste zeile deiner scripte und schon siehst du was alles nicht sein sollte: error_reporting(E_ALL);

Ich muss mich mal kurz aufregen, nichts gegen dich :smile:
Aber wenn man Code von Leuten weiterentwickeln muss, die bisher nur gutmütige Scriptsprachen gelernt haben krieg ich fast jedesmal nen Schreikrampf. Wieso geht das nicht, warum geht das nicht ? Tja, weil du mal wieder Äpfel und Birnen gleichsetzen willst und in dein Benziner Diesel tust!!! Scriptsprachen sind nunmal leider so unempfindlich gegen Gepfusche und man kann beliebig viel Dünnpfiff damit anstellen und meistens gehts auch noch, in anderen Fällen bricht aber alles zusammen… Zum Glück gibts noch Java :smile:

Und solche Probleme lassen sich meist mit kurzem Nachdenken und Blick ins Manual lösen… aber wer liest schon Manuals ?! :smile:

Gehirn aus und hacken!
Tschüss, Lars

p.s.: MunichFreak: Fühl dich jetzt nicht angegriffen, das musste nur mal raus. In meinem Job stosse ich nunmal hin und wieder auf wirklichen Code-Mist und es nervt echt…

hihi

file() gibt ein _array_ zurück nur mal so nebenbei, und die
stringlänge von einem array prüfst du ab !? garg! ist schon
schlimm genug das php sowas überhaupt zulässt, richtig ist es
schonmal nicht :smile:

naja - der Wert eines arrays wenn man es ohne value aufruft ist „Array“, soweit richtig? Wenn das Array also bestückt ist ist die strlen = 5 wenn ich richtig zähle. Das trifft aber halt nur auf den Fall zu, dass file(url) auch was gemacht hat…
Wenn die Datei nicht gefunden wurde wird kein Array bestückt und somit ist die strlen = 0…
Fakt ist dass es geht *duck*

hau mal das in die erste zeile deiner scripte und schon siehst
du was alles nicht sein sollte: error_reporting(E_ALL);

naja okay - ich hab error reporting ein wenig eingeschränkt und ich will garnicht alles sehen was falsch ist schon mal deswegen weil ich dafür viel zu faul bin *g*…

Ich muss mich mal kurz aufregen, nichts gegen dich :smile:
Aber wenn man Code von Leuten weiterentwickeln muss, die
bisher nur gutmütige Scriptsprachen gelernt haben krieg ich
fast jedesmal nen Schreikrampf.

gelernt? ^^
alles nur aus verschiedenen tutorials zusammengelesen usw usf deswegen kanns gut sein dass ich manchmal unschöne Ansätze reinbringe (zumindest für die hardcore-profis). IdR ist aber nur das Ergebnis relevant :wink:

Scriptsprachen sind nunmal leider so unempfindlich gegen
Gepfusche und man kann beliebig viel Dünnpfiff damit anstellen
und meistens gehts auch noch, in anderen Fällen bricht aber
alles zusammen… Zum Glück gibts noch Java :smile:

hrhrhr das stimmt wirklich… was mich aber auch aufregt ist dass alle Server so unterschiedlich sind… Nehmen wir z.B. GD. Auf dem einen Rechner ist es garnicht installiert, bei dem anderen ist es voll funktionsfähig. Beim dritten funktioniert imagettftext() nicht, beim anderen imagecopy() nicht und beim dritten geht wieder gif und dafür png nicht… Genauso mit html und der ausgabe bei verschiedenen Browsern, kompatibilität bei Treibern und und und…
Was auf der einen Kiste geht, geht deswegen auf der anderen noch lange nicht…

p.s.: MunichFreak: Fühl dich jetzt nicht angegriffen, das
musste nur mal raus. In meinem Job stosse ich nunmal hin und
wieder auf wirklichen Code-Mist und es nervt echt…

kein Thema - wenns Dir jetzt besser geht *g*
Wie gesagt - hier scheiden sich die Philosophien zwischen Fehlerfreier orientierung und hauptsache es funzt orientierung… Aber vielleicht komme ich auch mal bei Deinem Standpunkt an, vielleicht dann wenn imagettftext auf dem webspace meines Kumpels funktioniert und nicht nur auf meiner lokalen Maschine ^^