Map uitlezen
Auteur: D@rk - 16 juli 2005 - 15:14 - Gekeurd door: Joel - Hits: 7854 - Aantal punten: 3.00 (3 stemmen)
Dit script kan worden gebruik voor het uilezen van een directory als er al bevoorbeeld een index.php bestand is.
Alles kan worden ingesteld op de eerste lijntjes.
|
Code: |
index.php
<?php
error_reporting(E_ALL);
set_time_limit(0);
ob_implicit_flush();
/*
Config variabelen
*/
$cfg['plugins']='plugins/'; //plugins directory
$cfg['root']='/public_html'; // De begin directory
$cfg['dir_t']='';
$cfg['dir']=$cfg['root'];
$cfg['notshow']=array();
$cfg['length_file']=40; //De uitleg van een bestand word afgekapt achter
/*
Plugins laden
*/
$plugins=scandir($cfg['plugins']);
$c_plugins=count($plugins);
for($a=0;$a<$c_plugins;$a++){
if($plugins[$a] != '.' && $plugins[$a] != '..' && is_file($cfg['plugins'].$plugins[$a])){
include($cfg['plugins'].$plugins[$a]);
}
}
/*
?dir behandelen
*/
If(isset($_GET['dir'])){
$parts=explode('.', $_GET['dir']);
$ext=strtolower($parts[count($parts)-1]);
if(is_dir($cfg['root'].'/'.$_GET['dir']) && substr_count($_GET['dir'], '../') == 0 ){
$cfg['dir']=$cfg['root'].'/'.$_GET['dir'];
$cfg['dir']=str_replace('//', '/', $cfg['dir']);
$cfg['dir_t']=$_GET['dir'];
$cfg['dir_t']=str_replace('//', '/', $cfg['dir_t']);
}
elseif(is_file($cfg['root'].'/'.$_GET['dir']) && substr_count($_GET['dir'], '../') == 0){
header('Location: /'.$_GET['dir']);
}
else{
$canthandle=$_GET['dir'];
}
}
/*
Directory ophalen
*/
$files=scandir($cfg['dir']);
$count=count($files);
$b=0;
if($count == 2){
unset($files);
$files[]='..';
$files[]='';
$count = 2;
}
for($a=0;$a<$count;$a++){
if($files[$a] == '..'){
$higher_level=TRUE;
}
elseif($files[$a] != '.' && !in_array($cfg['dir'].'/'.$files[$a], $cfg['notshow'])){
$files_g[]=$files[$a];
$b++;
}
}
natcasesort($files_g);
unset($files);
foreach($files_g as $file){
if($file != ''){
if(is_dir($cfg['dir'].'/'.$file)){
$dirs[]=array($file, handlesize($cfg['dir'].'/'.$file), 'Map', date('d/m/Y H:i', filemtime($cfg['dir'].'/'.$file)));
}
else{
$files[]=array($file, handlesize($cfg['dir'].'/'.$file, 1), handlelength(handledescriptrion($file), $cfg['length_file']), date('d/m/Y H:i', filemtime($cfg['dir'].'/'.$file)));
}
}
}
/*
Html headers
*/
?>
<html>
<head>
<title><?=$cfg['dir_t'];?></title>
<style type="text/css">
body{
background: #F7F7F7;
}
body,td{
color: #000000;
margin: 0px;
font-family: Tahoma;
font-size: 11px;
}
A:link {
color : #000000;
text-decoration: none;
}
A:visited {
color : #000000;
text-decoration: none;
}
A:hover {
color : #000000;
text-decoration: none;
}
A:active {
color : #000000;
text-decoration: none;
}
img{
border: 0px;
}
td.title{
border: 1px solid #F7F7F7;
}
</style>
</head>
<body>
<?php /* Config variabelen */ $cfg['plugins']='plugins/'; //plugins directory $cfg['root']='/public_html'; // De begin directory $cfg['dir_t']=''; $cfg['dir']=$cfg['root']; $cfg['length_file']=40; //De uitleg van een bestand word afgekapt achter /* Plugins laden */ $plugins=scandir($cfg['plugins']); $c_plugins=count($plugins); for($a=0;$a<$c_plugins;$a++){ if($plugins[$a] != '.' && $plugins[$a] != '..' && is_file($cfg['plugins'].$plugins[$a])){ include($cfg['plugins'].$plugins[$a]); } } /* ?dir behandelen */ $cfg['dir']=$cfg['root'].'/'.$_GET['dir']; $cfg['dir_t']=$_GET['dir']; } header('Location: /'.$_GET['dir']); } else{ $canthandle=$_GET['dir']; } } /* Directory ophalen */ $files=scandir($cfg['dir']); $b=0; if($count == 2){ $files[]='..'; $files[]=''; $count = 2; } for($a=0;$a<$count;$a++){ if($files[$a] == '..'){ $higher_level=TRUE; } elseif($files[$a] != '.' && !in_array($cfg['dir'].'/'.$files[$a], $cfg['notshow'])){ $files_g[]=$files[$a]; $b++; } } foreach($files_g as $file){ if($file != ''){ if(is_dir($cfg['dir'].'/'.$file)){ $dirs[]=array($file, handlesize ($cfg['dir'].'/'.$file), 'Map', date('d/m/Y H:i', filemtime($cfg['dir'].'/'.$file))); } else{ $files[]=array($file, handlesize ($cfg['dir'].'/'.$file, 1), handlelength (handledescriptrion ($file), $cfg['length_file']), date('d/m/Y H:i', filemtime($cfg['dir'].'/'.$file))); } } } /* Html headers */ ?> <html> <head> <title><?=$cfg['dir_t'];?></title> <style type="text/css"> body{ background: #F7F7F7; } body,td{ color: #000000; margin: 0px; font-family: Tahoma; font-size: 11px; } A:link { color : #000000; text-decoration: none; } A:visited { color : #000000; text-decoration: none; } A:hover { color : #000000; text-decoration: none; } A:active { color : #000000; text-decoration: none; } img{ border: 0px; } td.title{ border: 1px solid #F7F7F7; } </style> </head> <body>
<table width="100%" cellspacing="0" cellpadding="0">
<tr><td bgcolor="#F3F3F3" style="height: 40px;padding-left: 5px;" valign="middle">
<a href="javascript:history.back()" title="Vorige"><img src="img/vorige.png" alt="Vorige"></a>  
<a href="javascript:history.next()" title="Volgende"><img src="img/volgende.png" alt="Volgende"></a>  
<?php
if(isset($higher_level)){
$parts=explode('/', $cfg['dir']);
$to='';
for($a=0;$a<count($parts)-1;$a++){
$to.='/'.$parts[$a];
}
$to=str_replace('//', '/', $to);
$to=str_replace($cfg['root'].'/', '', $to);
if(empty($_GET['dir']))$_GET['dir']='';
if($to != '/' && $_GET['dir'] != '' && $to != ''){
if($to == $cfg['root']){
$to='';
}
echo '<a href="?dir='.$to.'" title="omhoog"><img src="img/omhoog.png" alt="omhoog"></a>';
}
else{
echo '<img src="img/omhoog_dark.png" alt="omhoog">';
}
}
else{
echo '<img src="img/omhoog_dark.png" alt="omhoog">';
}
if(isset($canthandle)){
echo '<br>Er is een fout opgetreden bij het openen van '.$canthandle;
}
?>
</td></tr>
</table>
<?php
/*
Directory echoen
*/
$files=array_merge((isset($dirs))?$dirs:array(), (isset($files))?$files:array());
$count=count($files);
for($a=0;$a<$count;$a++){
echo handlefile($files[$a], $a, $count);
}
/*
Einde van html
*/
?>
</body>
</html>
<table width="100%" cellspacing="0" cellpadding="0"> <tr><td bgcolor="#F3F3F3" style="height: 40px;padding-left: 5px;" valign="middle"> <a href="javascript:history.back()" title="Vorige"><img src="img/vorige.png" alt="Vorige"></a>   <a href="javascript:history.next()" title="Volgende"><img src="img/volgende.png" alt="Volgende"></a>   <?php if(isset($higher_level)){ $to=''; for($a=0;$a<count($parts)-1;$a++){ $to.='/'.$parts[$a]; } if(empty($_GET['dir']))$_GET['dir']=''; if($to != '/' && $_GET['dir'] != '' && $to != ''){ if($to == $cfg['root']){ $to=''; } echo '<a href="?dir='.$to.'" title="omhoog"><img src="img/omhoog.png" alt="omhoog"></a>'; } else{ echo '<img src="img/omhoog_dark.png" alt="omhoog">'; } } else{ echo '<img src="img/omhoog_dark.png" alt="omhoog">'; } echo '<br>Er is een fout opgetreden bij het openen van '.$canthandle; } ?> </td></tr> </table> <?php /* Directory echoen */ for($a=0;$a<$count;$a++){ echo handlefile ($files[$a], $a, $count); } /* Einde van html */ ?> </body> </html>
plugins/handlefile.php
<?php
function handlefile($file, $a, $count){
global $cfg;
$return='';
if($a == 0){
$return.='<table cellspacing="0" cellpadding="0" align="left" width="100%">'."\n";
$return.='<tr><td colspan="2" width="40%" bgcolor="#EBEADB" class="title">Naam</td><td bgcolor="#EBEADB" class="title" width="15%">Grootte</td><td bgcolor="#EBEADB" class="title" width="20%">Type</td><td bgcolor="#EBEADB" class="title" width="25%">Gewijzigd op</td></tr>'."\n";
}
if($file == ''){
echo '';
}
else{
$return.='<tr><td width="1%" bgcolor="#F7F7F7"><a href="?dir='.$cfg['dir_t'].'/'.$file[0].'"><img src="'.handleicon($cfg['dir'].'/'.$file[0]).'"></a></td><td bgcolor="#F7F7F7"> <a href="?dir='.$cfg['dir_t'].'/'.$file[0].'">'.$file[0].'</a></td><td bgcolor="#FFFFFF">'.remake($file[1]).'</td><td bgcolor="#FFFFFF">'.$file[2].'</td><td bgcolor="#FFFFFF">'.$file[3].'</td></tr>'."\n";
}
if($a == $count-1){
$return.='</table>'."\n";
}
return $return;
}
?>
<?php function handlefile($file, $a, $count){ $return=''; if($a == 0){ $return.='<table cellspacing="0" cellpadding="0" align="left" width="100%">'."\n"; $return.='<tr><td colspan="2" width="40%" bgcolor="#EBEADB" class="title">Naam</td><td bgcolor="#EBEADB" class="title" width="15%">Grootte</td><td bgcolor="#EBEADB" class="title" width="20%">Type</td><td bgcolor="#EBEADB" class="title" width="25%">Gewijzigd op</td></tr>'."\n"; } if($file == ''){ } else{ $return.='<tr><td width="1%" bgcolor="#F7F7F7"><a href="?dir='.$cfg['dir_t'].'/'.$file[0].'"><img src="'.handleicon($cfg['dir'].'/'.$file[0]).'"></a></td><td bgcolor="#F7F7F7"> <a href="?dir='.$cfg['dir_t'].'/'.$file[0].'">'.$file[0].'</a></td><td bgcolor="#FFFFFF">'.remake($file[1]).'</td><td bgcolor="#FFFFFF">'.$file[2].'</td><td bgcolor="#FFFFFF">'.$file[3].'</td></tr>'."\n"; } if($a == $count-1){ $return.='</table>'."\n"; } return $return; } ?>
plugins/handleicon.php
<?php
$icons = array();
$icons['php'] = array('php','');
$icons['css'] = array('ini', 'Document met trapsgewijs opmaakmodel');
$icons['jpg'] = array('jpg', 'JPEG-afbeelding');
$icons['jpeg'] = array('jpg', 'JPEG-afbeelding');
$icons['db'] = array('db', '');
$icons['dll'] = array('db', '');
$icons['ttf'] = array('ttf', '');
$icons['txt'] = array('txt', 'Tekstdocument');
$icons['log'] = array('txt', 'Tekstdocument');
$icons['png'] = array('png', 'PNG-afbeelding');
$icons['gif'] = array('png', 'GIF-afbeelding');
$icons['zip'] = array('zip', 'WinZip-bestand');
$icons['wmv'] = array('mpg', 'Audio-/videobestand van Windows Media');
$icons['exe'] = array('exe', 'Toepassing');
$icons['js'] = array('js', 'JScript Script File');
$icons['htm'] = array('html', '');
$icons['html'] = array('html', '');
$icons['htaccess'] = array('ini', '');
$icons['ini'] = array('ini', 'Configuratie-instellingen');
$icons[''] = array('folder', '');
function handledescriptrion($file){
global $icons;
$parts=explode('.', $file);
$ext=strtolower($parts[count($parts)-1]);
if(isset($icons[$ext]) && $icons[$ext][1] != ''){
return $icons[$ext][1];
}
else{
return ucfirst($ext).'-bestand';
}
}
function handleicon($file){
global $icons;
$parts=explode('.', $file);
$ext=strtolower($parts[count($parts)-1]);
if(isset($icons[$ext]) && !is_dir($file)){
return 'img/'.$icons[$ext][0].'.png';
}
elseif(is_dir($file)){
return 'img/folder.png';
}
else{
return 'img/unknow.png';
}
}
?>
<?php $icons['php'] = array('php',''); $icons['css'] = array('ini', 'Document met trapsgewijs opmaakmodel'); $icons['jpg'] = array('jpg', 'JPEG-afbeelding'); $icons['jpeg'] = array('jpg', 'JPEG-afbeelding'); $icons['db'] = array('db', ''); $icons['dll'] = array('db', ''); $icons['ttf'] = array('ttf', ''); $icons['txt'] = array('txt', 'Tekstdocument'); $icons['log'] = array('txt', 'Tekstdocument'); $icons['png'] = array('png', 'PNG-afbeelding'); $icons['gif'] = array('png', 'GIF-afbeelding'); $icons['zip'] = array('zip', 'WinZip-bestand'); $icons['wmv'] = array('mpg', 'Audio-/videobestand van Windows Media'); $icons['exe'] = array('exe', 'Toepassing'); $icons['js'] = array('js', 'JScript Script File'); $icons['htm'] = array('html', ''); $icons['html'] = array('html', ''); $icons['htaccess'] = array('ini', ''); $icons['ini'] = array('ini', 'Configuratie-instellingen'); $icons[''] = array('folder', ''); function handledescriptrion($file){ if(isset($icons[$ext]) && $icons[$ext][1] != ''){ return $icons[$ext][1]; } else{ } } function handleicon($file){ return 'img/'.$icons[$ext][0].'.png'; } return 'img/folder.png'; } else{ return 'img/unknow.png'; } } ?>
plugins/handlelength.php
<?php
function handlelength($string, $length){
if(strlen($string) > $length-3){
return substr($string, 0, $length-1).'...';
}
else{
return $string;
}
}
?>
<?php function handlelength($string, $length){ if(strlen($string) > $length-3){ return substr($string, 0, $length-1).'...'; } else{ return $string; } } ?>
plugins/handlesize.php
<?php
function remake($size){
if(is_numeric($size)){
if($size < 1024){
$size=$size.' b';
}
elseif($size < 1048576){
$size=round($size/1024, 1).' Kb';
}
elseif($size < 1073741824){
$size=round($size/1048576, 2).' Mb';
}
elseif($size < 1099511627776){
$size=round($size/1073741824, 3).' Gb';
}
$size=str_replace('.', ',', $size);
}
return $size;
}
function handlesize($file, $isint=0){
if(is_file($file)){
$size=(float) (filesize($file));
}
elseif(is_dir($file)){
$files=scandir($file);
$c_files=0;
$c_dirs=0;
for($a=0;$a<count($files);$a++){
if($files[$a] != '.' && $files[$a] != '..'){
if(is_file($file.'/'.$files[$a])){
$c_files++;
}
else{
$c_dirs++;
}
}
}
$size='('.$c_dirs.' mappen en '.$c_files.' bestanden)';
}
if(is_numeric($size) && $isint==0){
$size=remake($size);
}
return $size;
}
?>
<?php function remake($size){ if($size < 1024){ $size=$size.' b'; } elseif($size < 1048576){ $size=round($size/1024, 1).' Kb'; } elseif($size < 1073741824){ $size=round($size/1048576, 2).' Mb'; } elseif($size < 1099511627776){ $size=round($size/1073741824, 3).' Gb'; } } return $size; } function handlesize($file, $isint=0){ } $files=scandir($file); $c_files=0; $c_dirs=0; for($a=0;$a<count($files);$a++){ if($files[$a] != '.' && $files[$a] != '..'){ $c_files++; } else{ $c_dirs++; } } } $size='('.$c_dirs.' mappen en '.$c_files.' bestanden)'; } $size=remake($size); } return $size; } ?>
Download code (.txt)
|
|
Stemmen |
Niet ingelogd. |
|