Ja, da fehlte noch eine Zeile. Hier der funktionierende Code:
PHP-Code:
<?php
$url = 'http://votr.vo.funpic.de/homepage/downloads/ext/index.html';
if (remote_file_exists($url)) {
print('gefunden');
} else {
print('nicht gefunden');
}
function remote_file_exists($url) {
$url_parts = parse_url($url);
if (!isset($url_parts['port'])) $url_parts['port'] = 80;
if (!isset($url_parts['path'])) $url_parts['path'] = '/';
$fp = @fsockopen($url_parts['host'], $url_parts['port'], $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)
\n";
} else {
@fputs($fp, 'HEAD ' . $url_parts['path'] . " HTTP/1.0\r\n");
@fputs($fp, 'Host: ' . $url_parts['host'] . "\r\n");
@fputs($fp, "Connection: close\r\n\r\n");
if ((($line = @fgets($fp, 128)) !== FALSE) && preg_match('~HTTP/1\.[01] ([0-9]{3})~', $line, $match)) {
return $match[1] == '200';
}
@fclose($fp);
}
return FALSE;
}
?>
Mario