Script zum Finden unerlaubter Dateiendungen
lima-city → Forum → Die eigene Homepage → Homepage Allgemein
ausgabe
cab
count
date
datei
error
extension
kontrolle
kriegen
midi
mpg
part
rhrer
syntax
test
verbotene datei
verbotene dateiformate
versuchen
wmf
zhler
-
Hi,
vor kurzem hab ich irgendwo hier im Forum ein Script gesehen, dass mir meinen Webspace durchsucht und mir sagt, wo ich unerlaubte Dateiendungen habe.
Ich glaub das hier war's:
<? $test = array(); //verbotene Dateiformate $data_format = array('.bmp','.avi','.midi','.mpeg','.mpg','.mp3','.wav','.wmv','.wma','.mov','.rar','.zip','.ace','.tar','.exe','.lzh','.tar.gz','.tar.bz2','.gz','.bz2','.jar','.psd','.cab','.mid','.zi0','.gz','.torrent','.dem','.w3g','.w3x','.wmf','.dll','.ogg','.bin','.psp','.mpeg','.tgz','.ram','.rmvb','.7z'); function GetOrdner( $dir ) { $sFiles = glob($dir.'*', GLOB_ONLYDIR); foreach( $sFiles as $file ) { $aSubFiles = GetOrdner($dir.str_replace($dir,'',$file).'/'); $sFiles = array_merge($sFiles, $aSubFiles); } return $sFiles; } function GetFiles( $dir ) { $sFiles = glob($dir.'/*.*'); natsort($sFiles); return $sFiles; } $test = GetOrdner(''); // natürlich sortieren, sieht einfach besser aus ... natsort($test); // zur Kontrolle //echo '<pre>', print_r($test, true), '</pre>'; // Versuch der Ausgabe :-) foreach( $test as $file ) { $temp = GetFiles( $file ); echo '<a href=''.$file.''><b>'.$file.'</b></a> ('.count($temp).' Dateien gefunden) <ul>'; echo '<table>'; foreach( $temp as $datei ) { $data_name = trim(str_replace($file,'',$datei),'/'); $x=0; while($x<60){ $a = $a + strpos($data_name,$data_format[$x]); $x++; } if($a > 0){ echo '<tr><td>- <a href=''.$file.'/'.$data_name.''><font color=red><b>'.$data_name.'</b></font></a> </td><td> '.date('d.m.Y - H:i:s',filectime($file.'/'.$data_name)).'</td></tr>'; $a=0; } } echo '</ul>'; } ?>
Das funktionierte auch, aber jetzt:
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ',' or ';' in /home/webpages/lima-city/crunor/html/script.php on line 35
Was ist da los? O.o -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Lima würde es vermutlich versauen, wenn ich dir das berichtige, aber du musst denke ich die Hochkommata escapen, also mit einem "\".
Kannst mich per ICQ anschreiben: 149663522
Dann kann ichs dir auch berichten. Nur Lima hat ja Probleme mit den Hochkommata. -
Versuch es einfach mal mit diesem Code:
<? $test = array(); //verbotene Dateiformate $data_format = array('.bmp','.avi','.midi','.mpeg','.mpg','.mp3','.wav','.wmv','.wma','.mov','.rar','.zip','.ace','.tar','.exe','.lzh','.tar.gz','.tar.bz2','.gz','.bz2','.jar','.psd','.cab','.mid','.zi0','.gz','.torrent','.dem','.w3g','.w3x','.wmf','.dll','.ogg','.bin','.psp','.mpeg','.tgz','.ram','.rmvb','.7z'); function GetOrdner( $dir ) { $sFiles = glob($dir.'*', GLOB_ONLYDIR); foreach( $sFiles as $file ) { $aSubFiles = GetOrdner($dir.str_replace($dir,'',$file).'/'); $sFiles = array_merge($sFiles, $aSubFiles); } return $sFiles; } function GetFiles( $dir ) { $sFiles = glob($dir.'/*.*'); natsort($sFiles); return $sFiles; } $test = GetOrdner(''); // natürlich sortieren, sieht einfach besser aus ... natsort($test); // zur Kontrolle //echo '<pre>', print_r($test, true), '</pre>'; // Versuch der Ausgabe :-) foreach( $test as $file ) { $temp = GetFiles( $file ); echo '<a href="'.$file.'"><b>'.$file.'</b></a> ('.count($temp).' Dateien gefunden) <ul>'; echo '<table>'; foreach( $temp as $datei ) { $data_name = trim(str_replace($file,'',$datei),'/'); $x=0; while($x<60){ $a = $a + strpos($data_name,$data_format[$x]); $x++; } if($a > 0){ echo '<tr><td>- <a href="'.$file.'/'.$data_name.'"><font color=red><b>'.$data_name.'</b></font></a> </td><td> '.date('d.m.Y - H:i:s',filectime($file.'/'.$data_name)).'</td></tr>'; $a=0; } } echo '</ul>'; } ?>
-
Das ist doch der gleiche, den ich auch schon gepostet habe? :P
Ich hab nochmal google suchen lassen und siehe da ...^^
http://www.lima-city.de/boards/thread/58725
um selber nach solchen endungen zu suche, hab ich mir dieses kleine Script, geschrieben, könnte zwar evtl. schneller laufen, nur krieg ich des gerade nicht schneller hin :D
Damit kann jeder überprüfen, ob er solche dateien auf dem space hat ;)
<pre> <?php $zeit = time() + microtime(); $files = array(); function extension($file) { $parts = explode(".", $file); $parts = end($parts); return $parts; } function ext_not_ok($ext, $exts=0) { if($exts == 0) { $exts = array("bmp", "avi", "midi", "mpeg", "mpg", "mp3", "wav", "wmv", "wma", "mov", "rar", "zip", "ace", "tar", "exe", ".lzh", "tar.gz", "tar.bz2", ".gz", "bz2", ".jar", "psd", "cab", "mid", "zi0", "gz", "torrent", "dem", "w3g", "w3x", "wmf", "dll", "ogg", "bin", "psp", "mpeg", "tgz", "ram", "rmvb", "7z"); }else{ $exts = explode("|", $exts); } if(in_array($ext, $exts)) { return true; }else{ return false; } } $count = 0; function dirs($dir) { global $files; global $count; $count++; $open_dir = opendir($dir); while($file = readdir($open_dir)) { if($file != "." AND $file != "..") { if(is_dir($dir.$file)) { dirs($dir.$file."/"); }else{ $files[] = $dir.$file; } } } } dirs("./"); sort($files); $i = 0; $zaehler=0; foreach($files AS $file) { $i++; $lenght = strlen($i); $ext = ""; for ($v = $lenght;$v <= 4; $v++) { $ext.= " "; } $e = $ext.$i; if(ext_not_ok(extension($file)) == true) { echo("<span style=\"color:#996666;\">$e: ".str_replace("./", "", $file)."</span>\n"); $zaehler++; } } if($zaehler == 0) { echo("<br><br>Prima, es wurden keine Verbotenen Endungen Gefunden!<br><br>"); }elseif($zaehler > 1){ echo("<br><br>Es wurden $zaehler verbotene Dateien gefunden!<br><br>"); }else{ echo("<br><br>Es wurde eine verbotene Datei gefunden!<br><br>"); } $i = 0; $zeit2 = time() + microtime(); $zeit = $zeit2 - $zeit; echo "\n\n\nDiese seite wurde in ".round($zeit, 3)." Sekunden generiert."; ?> </pre>
Beitrag geaendert: 20.2.2007 21:39:41 von ruehrer
Danke ruehrer! =]
Hat sich hiermit erledigt! ;) -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage