Автор Тема: помогите с написанием php-кода, позволяющего сканировать файлы в папке...  (Прочитано 4290 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн mctroj

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 5
  • +0/-0
  • 0
    • Просмотр профиля
    • http://am-509.narod.ru
У меня возникла идея создать php-скрипт (без использования mysql), который позволял бы сканировать какую-то папку на наличие файлов, а затем бы сам генерировал html страницу, в которой выводил бы ссылки на эти файлы, сколь угодно их бы там не было.

Саму идею придумал, а вот как реализовать сканирование файлов не представляю =(

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://

Оффлайн soda

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 12
  • +0/-0
  • 0
    • Просмотр профиля
    • http://

<?
	
if (  
$d = @opendir( \'.\' )  ) {
	
	
while(  false !== ( $file = @readdir($d) )  ) {
	
	
	
if (  !(eregi( \'^[^.].*\\.(.*?)$\', $file )) || is_dir( $file)  ) {
	
	
	
	
continue;
	
	
	
}
	
	
	
$files[ $file ] = size2str(  filesize( $file )  );
	
	
}
	
	
closedir($d);
	
	
@ksort( $files );
	
} else {exit;}
	
$dir =  (  preg_match( \'!([^/]+)/[^/]*$!\', getenv(\'REQUEST_URI\'), $regs )  )  ?  htmlspecialchars( $regs[1] )  :  \'current directory\';
	
$dir = htmlspecialchars(  urldecode( $dir )  );
?>
<html>
<head>
<title>Содержимое каталога <<?=$dir?>></title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<meta http-equiv="Content-Language" content="ru,en">
</head>
<body>
<table>
<tr><td id="title" colspan="2">
	
	
Содержимое каталога <<span><?=$dir?></span>>
<?
	
if ( is_array($files) ) {
	
	
foreach( $files as $file => $size ) { ?> 
<tr class="item"<?=( ($count++ ^ 1) == $count ) ? \'\' : \' id="even"\'?>>
	
<td>
	
	
<a href="<?=htmlspecialchars( $file );?>"><?=htmlspecialchars( $file );?></a> 
	
<td id="size" nowrap>
	
	
<?=$size;?>
<?
	
	
}
	
} else {?> 
<tr><td class="empty">
	
	
Каталог пуст
<?
	
}
?> 
<tr><td class="last" colspan="2">
	
	
<?=( is_array($files) ) ? \'<b>TEST</b>
\' : \'\'?> 
</table></body></html>
<?
	
//functions
	
function size2str( $size ) {
	
	
if ( $size >= 1048576 )
	
	
	
return round( $size / 1048576, 2) . \' MB\';
	
	
elseif ( $size >= 1024 )
	
	
	
return round( $size / 1024, 1) . \' KB\';
	
	
else
	
	
	
return $size . " B";
	
}
?>
wbr, soda
free MP3

Оффлайн mctroj

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 5
  • +0/-0
  • 0
    • Просмотр профиля
    • http://am-509.narod.ru
Спасибо за помощь... все сделал

Оффлайн CGVictor

  • теперь местный
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2511
  • +0/-0
  • 2
    • Просмотр профиля
    • http://cg.net.ru
LJ: Backslashed life (rss)

Оффлайн Volfgang

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 1
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Не видит файлы, говорит папка пуста, товарищи, не поленитесь, скиньте рабочий вариант на volfgang(собака)bk.ru

 

Sitemap 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