0 / 0 / 1
Регистрация: 16.04.2016
Сообщений: 3

Скрипт по поиску папок по дате

17.04.2016, 14:36. Показов 1576. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Все привет.
Сделали мне скрипт по поиску и удалению папок и файлов по заданной дате на сервере, но не довели до ума, а конкретно нужно чтобоы поиск и удаление происходило не только в текущей папке а ВНУТРИ её подпапок. Пример

ПАПКА 1
-- ПОДПАПКА2
-- ПОДПАПКА3
-- ПОДПАПКА4


Сейчас происходит удаление только внутри ПАПКА1 а подпапки и внутри них файлы не удаляются.. помогите доделать..


PHP/HTML
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
<?
function removeDir ($dir) 
{ $d=opendir($dir);  
while(($entry=readdir($d))!==false) { 
if ($entry != "." && $entry != "..") { 
if (is_dir($dir."/".$entry)) {  removeDir($dir."/".$entry);  } 
else {  unlink ($dir."/".$entry);  } } } 
closedir($d);  
rmdir ($dir);  
} 
 
$data1='';
$data2='';
$file='';
$mask='';
$put='';
$folder='';
$fileche='';
$folderche='';
$outpu='';
$vsego=0;
 
if($_GET['file']=='true'){$fileche='checked="checked"';}else{$fileche='';}
 
if($_GET['folder']=='true'){$folderche='checked="checked"';}else{$folderche='';}
 
if (!empty($_GET['dataout']) & !empty($_GET['file']) &  !empty($_GET['folder'])){
if($_GET['file']=='true' | $_GET['folder']=='true'){
 
$put=$_GET['put'];
if (trim($_GET['datain'])>''){$data1=$_GET["datain"];} else {$data1='2.2.2000';}
if (trim($_GET['folder'])=='true' ){$mask='';}else{$mask=$_GET["mask"];}
$data2=$_GET["dataout"];$file=$_GET["file"];$folder=$_GET["folder"];
if($file=='true'){
if($mask>''){
foreach (glob(__DIR__.$put.$mask) as $filename) {
if(strtotime($data1)<=strtotime(date ("d.m.Y", filemtime($filename))) & (strtotime($data2)>=strtotime(date ("d.m.Y", filemtime($filename))))){
$outpu.="$filename размер " . round(filesize($filename)/1024,3)." Кб  Дата ". date ("d.m.Y", filemtime($filename))."\n";
$vsego+=round(filesize($filename)/1024,3);
unlink($filename);
}}   
}else{
foreach (glob(__DIR__.$put."*.*") as $filename) { 
if(strtotime($data1)<=strtotime(date ("d.m.Y", filemtime($filename))) & (strtotime($data2)>=strtotime(date ("d.m.Y", filemtime($filename))))){
$outpu.="$filename размер " . round(filesize($filename)/1024,3)." Кб Дата ". date ("d.m.Y", filemtime($filename))."\n";
$vsego+=round(filesize($filename)/1024,3);
unlink($filename);
}
}}}
 
if($folder=='true'){
foreach (glob(__DIR__.$put) as $filename) {
if(strtotime($data1)<=strtotime(date ("d.m.Y", filemtime($filename))) & (strtotime($data2)>=strtotime(date ("d.m.Y", filemtime($filename))))){
$outpu.="$filename размер " . round(filesize($filename)/1024,3)." Кб Дата ". date ("d.m.Y", filemtime($filename))."\n";
$vsego+=round(filesize($filename)/1024,3);
removeDir($filename);
}
}  
}
if( $outpu>''){
file_put_contents('log.txt', $outpu."\n Всего удалено ".$vsego."Kb", FILE_APPEND);}
}}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>удалялка</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<link rel="stylesheet" type="text/css" href="cal.css" />
<script  type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js"></script>
<script  type="text/javascript" src="/cal.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('#calendarin').simpleDatepicker();  // Привязать вызов календаря к полю с CSS идентификатором #calendar
$('#calendarout').simpleDatepicker();  // Привязать вызов календаря к полю с CSS идентификатором #calendar
});
</script>
</head>
<body>
<p style='display:inline;'>Файлы: <input type='checkbox'<?echo $fileche;?>  id='fff'/></p>
<p style='display:inline;'>Папки: <input type='checkbox' <?echo $folderche;?>  id='ppp'/></p>
</br></br>
<p style='display:inline;'>ОТ  <input id="calendarin" placeholder="01.01.2000" name="date" value="<?echo $data1;?>" type="text"/></p>
<p style='display:inline;'>- ДО <input id="calendarout" placeholder="10.12.2016" name="date" value="<?echo $data2;?>" type="text"/></p>
</br></br>
<p style='display:inline;'>Расширение  <input id="mask" value="<?echo $mask;?>" placeholder="*.jpg"  type="text"/></p>
</br></br>
<p style='display:inline;'>Путь   <?echo __DIR__;?><input id="put" name="date"  placeholder="/myfolder/" value="<?echo $put;?>" type="text"/></p>
</br></br>
<input id="send"  value="Удалить" type="button"/>
</br></br>
<textarea style='display:inline;width:100%;height:200px;' id='cnsl1'><?echo $outpu."\nВсего удалено ".$vsego."Kb";?></textarea>
</body>
</html>
<script>
if(document.getElementById("ppp").checked){ $("#mask").attr("disabled",true);}else{ $("#mask").removeAttr("disabled");}
$('#ppp').click(function(){if(this.checked){ $("#mask").attr("disabled",true);}else{ $("#mask").removeAttr("disabled");}})
$('#send').click(function(){
a1=document.getElementById("fff").checked;
a2=document.getElementById("ppp").checked;
a3=document.getElementById("mask").value;
a4=document.getElementById("put").value;
b1=document.getElementById("calendarin").value;
b2=document.getElementById("calendarout").value;
if (confirm("Вы уверены?")) {
document.location.href='?file='+a1+'&folder='+a2+'&mask='+a3+'&put='+a4+"&datain="+b1+"&dataout="+b2;
} 
 
 
})
</script>
Добавлено через 4 часа 25 минут
Народ, хелп... по поиску особо не нашёл ничего ( помогите данный скрипт подправить...

Добавлено через 17 часов 36 минут
Народ, помощь нужна срочная.... неужели трудная задача для знающих??
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.04.2016, 14:36
Ответы с готовыми решениями:

Скрипт по поиску заданного слова в файлах
Написать скрипт, который подсчитывает кол-во встречаемостей заданного слова среди текстовых файлов текущего каталога. Если кол-во...

Создать bat-файл по поиску самого нового файла по дате в папках и подпапках без использования промежуточных файлов
Доброго времени суток, друзья. В общем, понадобился bat-файл, который будет искать самый новый файл по дате создания. Пробовала...

Удаление папок по дате в их именах
Доброго времени суток! У меня появилась проблема по удаление папок по дате. Суть: Есть папка C:\reserv, куда после запуска bat-ника...

2
Эксперт PHP
3900 / 3238 / 1353
Регистрация: 01.08.2012
Сообщений: 10,914
18.04.2016, 08:07
DimkaG, я думаю, лучше обратиться к разработчику или на фриланс. Код жуткий, конечно...
0
0 / 0 / 1
Регистрация: 16.04.2016
Сообщений: 3
18.04.2016, 19:05  [ТС]
Закрывайте, сделал!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.04.2016, 19:05
Помогаю со студенческими работами здесь

Копирование логов из различных, по дате, папок
Добрый день! Столкнулись с задачей: Есть папки с логами, вида: c:\etc\logs\2018\05\16\CompanyName1\ ...

VBA Outlook - Список папок, фильтр по дате
Добрый день! Имеется необходимость получить полный список всех папок с письмами, включая вложенные и дополнительно подключенные ящики....

Сортировка папок и файлов по размеру, дате создания
Здравствуйте , подскажите как с помощью Windows Form сделать как чтобы ты сначала выбираешь допустим папку которая имеет разные подпапки и...

Копирование с созданием папки назначения с именем, соответствующим дате копирования, и удаление старых папок
Доброго времени суток уважаемые форумчане! Помогите пожалуйста! Необходимо создать BATник, который будет копировать папки с D:\1c-base в...

Скрипт синхронизации папок
Помогите, пожалуйста, решить задачу: Написать программу синхронизации двух каталогов, например, Dir1 и Dir2. Пользователь задаёт имена Dir1...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru