Ik ben bezig met een script dat de bestandsgroote van bestanden op allerlei servers kan checken, en daarmee meteen kan kijken of die bestanden ook werkelijk bestaan... maar om een of andere reden returned een bepaalde server die ik gebruik om bestanden op op te slaan altijd een 404 bij mijn script!
probeer maar eens:
http://kerberos.gabber.or...ros-DrowninginthePool.mp3
en dan:
http://www.angelfire.com/...y/deadlock_intestines.zip
en ook:
http://c8.ameth.org/misc/...nty%20killer%20killer.mp3
want dat geeft een heel interresant resultaat...
in het script op http://kerberos.gabber.org/getfilesize.php
om er zeker van te zijn dat het niet aan de server ligt heb ik hem ook hier staan: http://www2.hku.nl/~jaap3/getfilesize.php
dan nog even de code (ja het is een zooitje sorry):
probeer maar eens:
http://kerberos.gabber.or...ros-DrowninginthePool.mp3
en dan:
http://www.angelfire.com/...y/deadlock_intestines.zip
en ook:
http://c8.ameth.org/misc/...nty%20killer%20killer.mp3
want dat geeft een heel interresant resultaat...
in het script op http://kerberos.gabber.org/getfilesize.php
om er zeker van te zijn dat het niet aan de server ligt heb ik hem ook hier staan: http://www2.hku.nl/~jaap3/getfilesize.php
dan nog even de code (ja het is een zooitje sorry):
PHP:
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
| <html> <?php if (!$send){ echo ("<h1>Get FileSize</h1>\n <form action=\"$PHP_SELF\">\n <input type=\"text\" name=\"url\"> <input type=\"hidden\" name=\"send\" value=\"1\"> <input type=\"submit\" value=\"Submit\">\n </form>"); } else{ $url = urldecode($url); if (preg_match("/^(.*:\/\/)([^:\/]+):?([0-9]+)?(.*)/", $url)){ //some functions function url_live($host,$path){ $fp = fsockopen ("$host", 80, &$errnr, &$errstr) or die("$errno: $errstr"); fputs($fp,"GET $path HTTP/1.0\n\n"); while (!$end){ $line = fgets($fp, 1024); print $line; if (stristr($line, '200 OK')){ $end = true; return true; } if (stristr($line, '404 NOT')){ $end = true; return false; } } fclose($fp); } function fileGetExtention($filename) { $retvalue = ""; $tmp = explode( ".", $filename); if($tmp[1]) {$retvalue = $tmp[count($tmp) - 1 ];} else {$retvalue = -1;} return $retvalue; echo $retvalue," <- Extension"; } function get_file_size ($url){ $fp = fsockopen($url[host],80,$errno,$errstr,30); // Can't open a connection // if (! $fp){return 0;} set_socket_blocking($fp, TRUE); fwrite($fp, "HEAD $url[path] HTTP/1.0\r\nHost: $url[host]\r\n\r\n"); for($result = ""; !feof($fp); $result .= fread($fp, 10000000)); fclose($fp); if (preg_match("/content-length:\\s?(\\d+)/i", $result, $match)){return $match[1];} else{ return 0;} } function GetSize ($sizeb) { $sizekb = $sizeb / 1024; $sizemb = $sizekb / 1024; $sizegb = $sizemb / 1024; $sizetb = $sizegb / 1024; $sizepb = $sizetb / 1024; if ($sizeb > 1) {$size = round($sizeb,2) . "b";} if ($sizekb > 1) {$size = round($sizekb,2) . "kb";} if ($sizemb > 1) {$size = round($sizemb,2) . "mb";} if ($sizegb > 1) {$size = round($sizegb,2) . "gb";} if ($sizetb > 1) {$size = round($sizetb,2) . "tb";} if ($sizepb > 1) {$size = round($sizepb,2) . "pb";} return $size; } // The rest of the code $parsedurl = parse_url($url); if (!checkdnsrr($parsedurl["host"],"A")){echo "That wasn't a working URL!";} else { if (!url_live($parsedurl["host"],$parsedurl["path"])){ echo "<br>A 404 \"Page Not Found\" error was returned."; } else { echo $remoteheader,"<br>"; $filextension = fileGetExtention($url); if($filextension=="zip"||$filextension=="mp3"){ $filesize = get_file_size($parsedurl); $filesize = GetSize($filesize); echo "filesize = $filesize<br>"; echo "file-extension = $filextension"; } else{echo "Only zip files and mp3's are allowed";} } } } } echo "</html>"; ?> |