Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Каталоги
 
 автор: DelbI4   (24.04.2006 в 07:52)   письмо автору
 
 

Помогите написать след. тему:
Например, открыли мы каталог, отобразили что в нем есть

$dir = opendir ("D:/bla/go/");
while ( $file = readdir ($dir))
  {
    if (( $file != ".") && ($file != ".."))
    {
      echo "$file<br>";
    }
  }
 closedir ($dir);

Как сделать проверку, если это файл, то он давал сылку типа http://site/download?gg=crack.zip и.тп
А если это папка, то при нажатие на сылку, пользователя запускала в эту папку(каталог), и отображало что в нем есть.

   
 
 автор: CrazyAngel   (24.04.2006 в 08:03)   письмо автору
 
   для: DelbI4   (24.04.2006 в 07:52)
 

Если я правельно понял здесь нужна рекурсия,


<?
functon dir 
($dir) {
$dir opendir ($dir);
while ( 
$file readdir ($dir)!=="fales")
  {
    if (
is_file($dir."/".$file)
    {
      echo 
"http://site/download?gg=$file<br>";
    }
   else if (
is_dir($dir."/".$file) && ( $file != ".") && ($file != ".."))
   { 
    
dir($dir."/".$file);
  }
  }
closedir ($dir);


dir("D:/bla/go/"); 
?>

   
 
 автор: DelbI4   (24.04.2006 в 08:11)   письмо автору
 
   для: CrazyAngel   (24.04.2006 в 08:03)
 

У вас правильность написание кода не верное, не разберусь почему там парс еррор дает if (is_file($dir."/".$file)

   
 
 автор: CrazyAngel   (24.04.2006 в 08:53)   письмо автору
 
   для: DelbI4   (24.04.2006 в 08:11)
 


<?
function direct ($dir) {
echo 
$dir."<br>";
IF (
$direct opendir ($dir))
{
while((
$file readdir($direct)) !== false){
  {
      if (
is_file($dir."/".$file))
    {
      echo 
"http://site/download?gg=$file<br>";
    }
   else if (
is_dir($dir."/".$file) && ( $file != ".") && ($file != ".."))
    {
    echo
"<h3>$dir/$file</h3><br>";
     
direct ($dir."/".$file);
    }
      }
 }
}
else
{
echo 
"фиг;";
}
}
direct("C:/WebSite");
?>

   
 
 автор: DelbI4   (24.04.2006 в 09:31)   письмо автору
 
   для: CrazyAngel   (24.04.2006 в 08:53)
 

Прикольно.. вывело все что есть в папке.. на 1 страничку, все 4000 файлов... :) папки не как сылки, а просто например D:/katalog и ниже идут файлы, потом D:/katalog/gg, и ниже файлы. :) короче чет не то :)

   
 
 автор: CrazyAngel   (24.04.2006 в 11:08)   письмо автору
 
   для: DelbI4   (24.04.2006 в 09:31)
 


<?
function direct ($dir) {
IF (
$direct opendir ($dir))
{
while((
$file readdir($direct)) !== false){
  {
      if (
is_file($dir."/".$file))
    {
      echo 
"<a href=\"http://site/download?gg=$file\">$file</a><br>";
    }
   else if (
is_dir($dir."/".$file) && ( $file != ".") && ($file != ".."))
    {
    echo
"<h3>$dir/$file</h3><br>";
     
direct ($dir."/".$file);
    }
      }
}
}
else
{
echo 
"фиг;";
}
}
direct("C:/WebSite");
?>


Дальще дорабатывайте сами =)

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования