|
|
|
| А как сделать чтобы отображались все файлы в какой то папке со ссылкой на его удаление? | |
|
|
|
|
|
|
|
для: v_q
(23.05.2007 в 00:02)
| | пройти в цикле по папке, вывести файлы в таблице со ссылкой на скрипт для удаления файлов...
Написать код? | |
|
|
|
|
|
|
|
для: mefestofel
(23.05.2007 в 00:04)
| | Да, пожалуйста. | |
|
|
|
|
|
|
|
для: v_q
(23.05.2007 в 02:01)
| | В общем это класс, написанный на скорую руку(работает на PHP4-5), с поправками на ночное время - сейчас 3.35:
<?
// Класс для работы с файлами
class file_class
{
var $fp = ''; // дескриптор
var $file_name = ''; //имя файла
var $dir = ''; //дирректория с файламит
var $data = ''; // массив с инфой о файле....
var $array_file_list = ''; //массив с файлами и информацией о файлах...
// получение информации о файлах из директории $dir
function GetFilesFromDir()
{
$dir = opendir($this->dir);
$ind = 0;
while (($file = readdir($dir)) !== false)
{
if (($file !== '.') && ($file !== '..') && ($file !== 'Thumbs.db'))
{
$this->GetInfoAboutFile($this->dir.$file);
$array_file_list[$ind] = array(
'name' => $file,
'size' => $this->data['filesize'],
'created' => $this->data['fileemtime']
);
$ind++;
}
}
closedir($dir);
return $this->array_file_list = $array_file_list;
}
// функция для получения информации о файле
function GetInfoAboutFile($file_name)
{
if (file_exists($file_name))
{
$data = array(
'filetime' => fileatime($file_name),
'filegroup' => filegroup($file_name),
'fileemtime' => filemtime($file_name),
'fileowner' => fileowner($file_name),
'filesize' => filesize($file_name),
'is_readable' => var_export(is_readable($file_name), true),
'is_writeable' => var_export(is_writeable($file_name), true),
'is_uploaded_file' => var_export(is_uploaded_file($file_name), true)
);
return $this->data = $data;
}
else
{
return false;
}
}
// функция для удаления файла
function DelFile()
{
if ((isset($this->dir)) && ($this->dir != ''))
{
$file_name = $this->dir.$this->file_name;
}
else
{
$file_name = $this->file_name;
}
unlink($file_name);
return true;
}
}
$folder = 'images/'; // директория с файлами
$files = new file_class; // создаем объект класса file_class
$files->dir = $folder; // установка директории
$files->GetFilesFromDir(); // вызов метода получения информации о файлах
$my_array = $files->array_file_list;
for ($i=0;$i <= (count($my_array) - 1);$i++)
{
print $my_array[$i]['name']."<br>"; // имя файла
print round($my_array[$i]['size']/1024)." Kb<br>"; // размер
print date('d-m-Y',$my_array[$i]['created'])."<br>"; // дата создания
print "<a href=\"files.php?fname=".$my_array[$i]['name']."\">Удалить файл</a><br><br>";
// можете вывести в таблице...
}
?>
|
Т.К. написано на скорую руку, то некоторое надо подправить, кое - что добавить, но при этом все работает, да и чтобы совсем не оказвать 'медвежью услугу', я Вам оставил для рзмышления - удаление файлов, благо фкнкция в классе написана... ;-)
Класс выводит также доп.информацию по файлам, модифицируйте на свой вкус....
Жду пример удаления файла... | |
|
|
|
|
|
|
|
для: mefestofel
(23.05.2007 в 03:34)
| | За что так обидели Thumbs.db ?
Может это не файл, а рессора от трактора "Беларусь"? | |
|
|
|
|
|
|
|
для: Trianon
(23.05.2007 в 10:35)
| | > Thumbs.db
Чтобы эта рессора не мешала ездить скрипту под Windows... | |
|
|
|
|
|
|
|
для: mefestofel
(23.05.2007 в 12:13)
| | Пользователь не сможет удалить этот файл этим скриптом, если захочет.
Как следствие - потом не сможет удалить сам каталог.
Где логика? | |
|
|
|
|
|
|
|
для: Trianon
(23.05.2007 в 13:11)
| | Про каталог ничего не сказано, вот когда надо будет удалять каталог придется заботитья об этом файле............... | |
|
|
|