Smallbear Опубліковано: 3 червня 2011 Share Опубліковано: 3 червня 2011 Уже столько версий опенкарта , а эта проблема все еще остается,неужели все вручную удаляют копии картинок? Я так понимаю нужно какой-то скрипт написать который просто будет через определенный период очищать папку с кешем картинок,если программно это довольно сложно в сам движок вставить. Может кто-нибудь может написать такой скрипт Надіслати Поділитися на інших сайтах More sharing options...
Xpl Опубліковано: 3 червня 2011 Share Опубліковано: 3 червня 2011 крон если хостинг держит ссш Надіслати Поділитися на інших сайтах More sharing options...
Smallbear Опубліковано: 3 червня 2011 Автор Share Опубліковано: 3 червня 2011 крон если хостинг держит ссш такие фразы я уже встречал,вот если бы кто-то подробно хоть раз написал что и как нужно сделать было бы очень хорошо Надіслати Поділитися на інших сайтах More sharing options...
Yesvik Опубліковано: 3 червня 2011 Share Опубліковано: 3 червня 2011 А зачем это надо? Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 3 червня 2011 Автор Share Опубліковано: 3 червня 2011 А зачем это надо? что именно , зачем удалять кэш или зачем обьяснять как это сделать? удалять нужно потому что , если много товаров , то кэш много места будет занимать. Ну а чтобы кто-то обьяснил не мешало бы т.к. начал я читать про этот крон и ничего совсем не понял. Поэтому прошу помощи :unsure: :unsure: :unsure: :unsure: Надіслати Поділитися на інших сайтах More sharing options... AlexFisher Опубліковано: 3 червня 2011 Share Опубліковано: 3 червня 2011 Это у вас больше от скуки, чем от лени =) Только что искал ТАК и на ТРЕТЬЕЙ ССЫЛКЕ уже прекрасно себе представлял, как это делается. У меня на магазе кеш немного пожирает, посему об этой проблеме не задумывался, а у заказчиков хостинги "резиновые", поэтому не парятся)))) Да. А уж как у вас крон "включается" - это от панели управления зависит)) В таком случае помогут запросы "крон си-панель" или "крон-айыспимэнэджэр" ;) 1 Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 3 червня 2011 Автор Share Опубліковано: 3 червня 2011 Это у вас больше от скуки, чем от лени =) Только что искал ТАК и на ТРЕТЬЕЙ ССЫЛКЕ уже прекрасно себе представлял, как это делается. У меня на магазе кеш немного пожирает, посему об этой проблеме не задумывался, а у заказчиков хостинги "резиновые", поэтому не парятся)))) Да. А уж как у вас крон "включается" - это от панели управления зависит)) В таком случае помогут запросы "крон си-панель" или "крон-айыспимэнэджэр" ;) по запросу "крон удалить файлы" мне как-то и в голову не пришло искать,т.к. думал это далеко не основная задача этого крона)) я вот тут темку нашел на форуме https://opencartforum.com/topic/290-объём-кеша-картинок-больше-самого-магазина/page__p__1806__hl__кэш__fromsearch__1#entry1806 меня заинтересовала вот эта строка Я делаю через крон самой ОС команда rm -f /shop/image/cache/data/ *.jpg я что-то не совсем понял ОС тут имеется наверно ввиду операционная система?или все-таки имели ввиду Opencart. Из этого вопрос где на локальном комьютере (в самом виндовс или опенкарте) находится крон?:) понимаю,что вопросы может и глупые,но уже очень поздно соображаю плохо может кто подскажет?))есть подозрение что это кнопочка "выполнить" , но не понятно что туда написать чтобы проверить. P.S. На хостинге вроде нашел этот крон, но там еще нужно разобраться что прописывать. Вроде как путь к пхп файлу со скриптом,ну а остальное минуты выполнения ,дни и т.д. там вроде просто прописываются. Надіслати Поділитися на інших сайтах More sharing options... AlexFisher Опубліковано: 4 червня 2011 Share Опубліковано: 4 червня 2011 Под виндой это Пуск -> Панель управления -> Назначенные задания :) Не знаю, правда, для чего это может пригодиться, если магазин на локале висит... Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 4 червня 2011 Автор Share Опубліковано: 4 червня 2011 Вобщем проблему решил примерно на половину на хостинге ситуация следующая т.е. как я понял SSH доступа на хостинге нет и просто какую-то команду в строку "задача" я не могу ,а могу только прописать путь к файлу ии может я не прав? Но суть не в этом,можно и путь к фалу со скриптом прописать , только сам скрипт никто не поможет дописать? <?php foreach (glob("*.jpg") as $filename) { echo "$filename size " . filesize($filename) . "n"; unlink($filename); } ?> вот такой скрипт вставленный в папку image\cache\data работает,но он удаляет только файлы jpg которые находятся в папке data.А те картинки которые создаются во вложенных папках он не трогает. У меня созданы папки для категорий товаров т.е. примерно такая структура image\cache\data\папка_для_товаров_категории_№_1 \папка_для_товаров_категории_№_2 \папка_для_товаров_категории_№_3 \просто_картинки_без_папок Как переписать скрипт , чтобы удалял картинки в папке data , не только в корне , но и во вложенных файлах? Или например вообще чтобы удаляло все,что в папке data Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 5 червня 2011 Автор Share Опубліковано: 5 червня 2011 Сформулирую вопрос немножко по другому: Люди помогите пожалуйста написать функцию которая удаляет определенную папку вместе со всем ее содержимым?(чтобы удаляла не только все файлы , но и вложенные папке со всем содержимым) Надіслати Поділитися на інших сайтах More sharing options... Yesvik Опубліковано: 5 червня 2011 Share Опубліковано: 5 червня 2011 Да не надо тебе ни каких функций, попроси хостера что-бы тебе подсказали как с помощью cron'а очищать директорию... там одна команда. Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 6 червня 2011 Автор Share Опубліковано: 6 червня 2011 Да не надо тебе ни каких функций, попроси хостера что-бы тебе подсказали как с помощью cron'а очищать директорию... там одна команда. Я скрин выше показывал,как я понял там можно только путь прописать к скрипту на сервере..Да и всеравно хотелось бы знать какой скрипт может сделать то что мне нужно,а то уже из гугла кучу попробовал и ничего не работает или пробую как-то не так.Максимум ,что получается это удаление всех файлов в папке со скриптом,но при этом и скрипт удаляется,а вот вложенные папки всеравно остаются. Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 6 червня 2011 Share Опубліковано: 6 червня 2011 Smallbear: так пробовал? /bin/rm -rf /home/......./image/cache/dataЭто написать в поле "Задача" вместо всего того, что там сейчас. 1 Надіслати Поділитися на інших сайтах More sharing options... alys2007 Опубліковано: 10 червня 2011 Share Опубліковано: 10 червня 2011 <?php foreach (glob("*.jpg") as $filename) { echo "$filename size " . filesize($filename) . "n"; unlink($filename); } ?> Как переписать скрипт , чтобы удалял картинки в папке data , не только в корне , но и во вложенных файлах? Или например вообще чтобы удаляло все,что в папке data Как вариант: удалять все папки с картинками, а затем создавать папки заново. Иначе только рекурсивный обход папок. Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 10 червня 2011 Автор Share Опубліковано: 10 червня 2011 Smallbear: так пробовал? /bin/rm -rf /home/......./image/cache/dataЭто написать в поле "Задача" вместо всего того, что там сейчас. попробовал прописать,но не помогло,ну это впринципе и логично там ведь вроде можно только путь к скрипту прописать а не команду или я не прав? Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 10 червня 2011 Автор Share Опубліковано: 10 червня 2011 Как вариант: удалять все папки с картинками, а затем создавать папки заново. Иначе только рекурсивный обход папок. Удалить все папки-это Вы имеете ввиду писать скрипт который я привел для каждой папки или что? Про ррекурсивный обход читал, но не один скрипт который я находил не заработал.Если поделитесь рабочим буду очень благодарен. Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 10 червня 2011 Share Опубліковано: 10 червня 2011 попробовал прописать,но не помогло,ну это впринципе и логично там ведь вроде можно только путь к скрипту прописать а не команду или я не прав?Вообще крону всё-равно - у вас на скриншоте видно, что указан путь к команде 'php' с параметром для запуска конкретного файла. Т.е. вместо пути к php можно указать любую другую команду, по идее. Но! - мало-ли как там у вашего хостера всё устроено, так что лучше прямо у него и спросить почему этот вариант не сработал. 1 Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 10 червня 2011 Share Опубліковано: 10 червня 2011 Но суть не в этом,можно и путь к фалу со скриптом прописать , только сам скрипт никто не поможет дописать? <?php foreach (glob("*.jpg") as $filename) { echo "$filename size " . filesize($filename) . "n"; unlink($filename); } ?> вот такой скрипт вставленный в папку image\cache\data работает,но он удаляет только файлы jpg которые находятся в папке data.А те картинки которые создаются во вложенных папках он не трогает. Как-то так: <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$dirname/$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$dirname/$d/$filename size " . filesize($dirname/$d/$filename) . "\n"; unlink($dirname/$d/$filename); } rm_tree($dirname/$d); } } rm_tree("."); ?> Скрипт не тестировал, так что лучше сделать полный бекап перед тем как пробовать. 1 Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 Вообще крону всё-равно - у вас на скриншоте видно, что указан путь к команде 'php' с параметром для запуска конкретного файла. Т.е. вместо пути к php можно указать любую другую команду, по идее. Но! - мало-ли как там у вашего хостера всё устроено, так что лучше прямо у него и спросить почему этот вариант не сработал. ну я так понимаю чтобы команды можно было писать нуженssh доступ?а его на хостинге я знаю что нет. У хостера я спрашивал,сказали что нужно прописывать путь к файлу со скриптом,только скрипт не дали:) Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 Как-то так: <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$dirname/$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$dirname/$d/$filename size " . filesize($dirname/$d/$filename) . "\n"; unlink($dirname/$d/$filename); } rm_tree($dirname/$d); } } rm_tree("."); ?> Скрипт не тестировал, так что лучше сделать полный бекап перед тем как пробовать. спасибо большое за скрипт , только он к сожалению не работает сначала его вставил в папку image\cache\data там была такая ошибка на всю страницу,причем какое-то время записи добавляются , потом останавливается добавление Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 потом вставил в папку image\cache\ вверху стало писать немного другую ошибку,а дальше до конца страницы опять та же ошибка , что и в предидущем случае rning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ././data/././data/apple_logo-100x100.jpg size Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: unlink() [function.unlink]: No error in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ././data/././data/apple_logo-160x160.jpg size Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: unlink() [function.unlink]: No error in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Помогите пожалуйста дописать этот скриптик,я чувствую,что уже немного осталось :) Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 11 червня 2011 Share Опубліковано: 11 червня 2011 <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$d/$filename size " . filesize("$d/$filename") . "\n"; unlink("$d/$filename"); } rm_tree($d); } } rm_tree("."); ?> А если так? Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$d/$filename size " . filesize("$d/$filename") . "\n"; unlink("$d/$filename"); } rm_tree($d); } } rm_tree("."); ?>А если так? у меня опять не работает, а у Вас этот срипт работал?Может я чего-то не так делаю,так вроде,что тут делать прописал путь к скрипту в адресной строке и запустил,все..или я что-то и тут мог упустить,я уже не понимаю. Или Вы этот скрипт не тестировали? У меня вот такого плана ошибки на всю страницу выдает: Warning: filesize() [function.filesize]: stat failed for ./data/./data/apple_logo-100x100.jpg in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ./data/./data/apple_logo-100x100.jpg size Warning: unlink(./data/./data/apple_logo-100x100.jpg) [function.unlink]: No such file or directory in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: filesize() [function.filesize]: stat failed for ./data/./data/apple_logo-160x160.jpg in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ./data/./data/apple_logo-160x160.jpg size Warning: unlink(./data/./data/apple_logo-160x160.jpg) [function.unlink]: No such file or directory in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: filesize() [function.filesize]: stat failed for ./data/products/binary_watch/./data/products/binary_watch/29-ledwatch-120x120.jpg in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ./data/products/binary_watch/./data/products/binary_watch/29-ledwatch-120x120.jpg size Warning: unlink(./data/products/binary_watch/./data/products/binary_watch/29-ledwatch-120x120.jpg) [function.unlink]: No such file or directory in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Надіслати Поділитися на інших сайтах More sharing options... Yesvik Опубліковано: 11 червня 2011 Share Опубліковано: 11 червня 2011 Ну на фига весь этот цирк? Лёгких путей не ищем? Да обратись ты к хостеру... он тебе внятно ответит какой командой грохнуть содержимое папки. Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 Ну на фига весь этот цирк? Лёгких путей не ищем? Да обратись ты к хостеру... он тебе внятно ответит какой командой грохнуть содержимое папки. мне тоже интересно зачем вся эта тема (хоть я ее и создал). Почему-то мне казалось,что эту проблему все хоть как-то решают,а оказывается или никак не решают или жалко поделится скриптиком. По поводу хостера я ведь писал выше,что хостер сказал "пиши путь к скрипту,а не какую-то команду в крон.." вот я и мучаюсь теперь с этим кэшем Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 11 червня 2011 Share Опубліковано: 11 червня 2011 Smallbear: остальные заказывают столько место на диске, сколько им требуется. Либо руками оптимизируют картинки в кэше. <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$filename size " . filesize("$filename") . "\n"; unlink("$filename"); } rm_tree($d); } } rm_tree("."); ?>Вот так уже должно заработать. 1 Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Загальні питання [Решено] Как автоматически удалять картинки из папки с кэшем? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Smallbear Опубліковано: 3 червня 2011 Автор Share Опубліковано: 3 червня 2011 А зачем это надо? что именно , зачем удалять кэш или зачем обьяснять как это сделать? удалять нужно потому что , если много товаров , то кэш много места будет занимать. Ну а чтобы кто-то обьяснил не мешало бы т.к. начал я читать про этот крон и ничего совсем не понял. Поэтому прошу помощи :unsure: :unsure: :unsure: :unsure: Надіслати Поділитися на інших сайтах More sharing options...
AlexFisher Опубліковано: 3 червня 2011 Share Опубліковано: 3 червня 2011 Это у вас больше от скуки, чем от лени =) Только что искал ТАК и на ТРЕТЬЕЙ ССЫЛКЕ уже прекрасно себе представлял, как это делается. У меня на магазе кеш немного пожирает, посему об этой проблеме не задумывался, а у заказчиков хостинги "резиновые", поэтому не парятся)))) Да. А уж как у вас крон "включается" - это от панели управления зависит)) В таком случае помогут запросы "крон си-панель" или "крон-айыспимэнэджэр" ;) 1 Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 3 червня 2011 Автор Share Опубліковано: 3 червня 2011 Это у вас больше от скуки, чем от лени =) Только что искал ТАК и на ТРЕТЬЕЙ ССЫЛКЕ уже прекрасно себе представлял, как это делается. У меня на магазе кеш немного пожирает, посему об этой проблеме не задумывался, а у заказчиков хостинги "резиновые", поэтому не парятся)))) Да. А уж как у вас крон "включается" - это от панели управления зависит)) В таком случае помогут запросы "крон си-панель" или "крон-айыспимэнэджэр" ;) по запросу "крон удалить файлы" мне как-то и в голову не пришло искать,т.к. думал это далеко не основная задача этого крона)) я вот тут темку нашел на форуме https://opencartforum.com/topic/290-объём-кеша-картинок-больше-самого-магазина/page__p__1806__hl__кэш__fromsearch__1#entry1806 меня заинтересовала вот эта строка Я делаю через крон самой ОС команда rm -f /shop/image/cache/data/ *.jpg я что-то не совсем понял ОС тут имеется наверно ввиду операционная система?или все-таки имели ввиду Opencart. Из этого вопрос где на локальном комьютере (в самом виндовс или опенкарте) находится крон?:) понимаю,что вопросы может и глупые,но уже очень поздно соображаю плохо может кто подскажет?))есть подозрение что это кнопочка "выполнить" , но не понятно что туда написать чтобы проверить. P.S. На хостинге вроде нашел этот крон, но там еще нужно разобраться что прописывать. Вроде как путь к пхп файлу со скриптом,ну а остальное минуты выполнения ,дни и т.д. там вроде просто прописываются. Надіслати Поділитися на інших сайтах More sharing options... AlexFisher Опубліковано: 4 червня 2011 Share Опубліковано: 4 червня 2011 Под виндой это Пуск -> Панель управления -> Назначенные задания :) Не знаю, правда, для чего это может пригодиться, если магазин на локале висит... Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 4 червня 2011 Автор Share Опубліковано: 4 червня 2011 Вобщем проблему решил примерно на половину на хостинге ситуация следующая т.е. как я понял SSH доступа на хостинге нет и просто какую-то команду в строку "задача" я не могу ,а могу только прописать путь к файлу ии может я не прав? Но суть не в этом,можно и путь к фалу со скриптом прописать , только сам скрипт никто не поможет дописать? <?php foreach (glob("*.jpg") as $filename) { echo "$filename size " . filesize($filename) . "n"; unlink($filename); } ?> вот такой скрипт вставленный в папку image\cache\data работает,но он удаляет только файлы jpg которые находятся в папке data.А те картинки которые создаются во вложенных папках он не трогает. У меня созданы папки для категорий товаров т.е. примерно такая структура image\cache\data\папка_для_товаров_категории_№_1 \папка_для_товаров_категории_№_2 \папка_для_товаров_категории_№_3 \просто_картинки_без_папок Как переписать скрипт , чтобы удалял картинки в папке data , не только в корне , но и во вложенных файлах? Или например вообще чтобы удаляло все,что в папке data Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 5 червня 2011 Автор Share Опубліковано: 5 червня 2011 Сформулирую вопрос немножко по другому: Люди помогите пожалуйста написать функцию которая удаляет определенную папку вместе со всем ее содержимым?(чтобы удаляла не только все файлы , но и вложенные папке со всем содержимым) Надіслати Поділитися на інших сайтах More sharing options... Yesvik Опубліковано: 5 червня 2011 Share Опубліковано: 5 червня 2011 Да не надо тебе ни каких функций, попроси хостера что-бы тебе подсказали как с помощью cron'а очищать директорию... там одна команда. Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 6 червня 2011 Автор Share Опубліковано: 6 червня 2011 Да не надо тебе ни каких функций, попроси хостера что-бы тебе подсказали как с помощью cron'а очищать директорию... там одна команда. Я скрин выше показывал,как я понял там можно только путь прописать к скрипту на сервере..Да и всеравно хотелось бы знать какой скрипт может сделать то что мне нужно,а то уже из гугла кучу попробовал и ничего не работает или пробую как-то не так.Максимум ,что получается это удаление всех файлов в папке со скриптом,но при этом и скрипт удаляется,а вот вложенные папки всеравно остаются. Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 6 червня 2011 Share Опубліковано: 6 червня 2011 Smallbear: так пробовал? /bin/rm -rf /home/......./image/cache/dataЭто написать в поле "Задача" вместо всего того, что там сейчас. 1 Надіслати Поділитися на інших сайтах More sharing options... alys2007 Опубліковано: 10 червня 2011 Share Опубліковано: 10 червня 2011 <?php foreach (glob("*.jpg") as $filename) { echo "$filename size " . filesize($filename) . "n"; unlink($filename); } ?> Как переписать скрипт , чтобы удалял картинки в папке data , не только в корне , но и во вложенных файлах? Или например вообще чтобы удаляло все,что в папке data Как вариант: удалять все папки с картинками, а затем создавать папки заново. Иначе только рекурсивный обход папок. Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 10 червня 2011 Автор Share Опубліковано: 10 червня 2011 Smallbear: так пробовал? /bin/rm -rf /home/......./image/cache/dataЭто написать в поле "Задача" вместо всего того, что там сейчас. попробовал прописать,но не помогло,ну это впринципе и логично там ведь вроде можно только путь к скрипту прописать а не команду или я не прав? Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 10 червня 2011 Автор Share Опубліковано: 10 червня 2011 Как вариант: удалять все папки с картинками, а затем создавать папки заново. Иначе только рекурсивный обход папок. Удалить все папки-это Вы имеете ввиду писать скрипт который я привел для каждой папки или что? Про ррекурсивный обход читал, но не один скрипт который я находил не заработал.Если поделитесь рабочим буду очень благодарен. Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 10 червня 2011 Share Опубліковано: 10 червня 2011 попробовал прописать,но не помогло,ну это впринципе и логично там ведь вроде можно только путь к скрипту прописать а не команду или я не прав?Вообще крону всё-равно - у вас на скриншоте видно, что указан путь к команде 'php' с параметром для запуска конкретного файла. Т.е. вместо пути к php можно указать любую другую команду, по идее. Но! - мало-ли как там у вашего хостера всё устроено, так что лучше прямо у него и спросить почему этот вариант не сработал. 1 Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 10 червня 2011 Share Опубліковано: 10 червня 2011 Но суть не в этом,можно и путь к фалу со скриптом прописать , только сам скрипт никто не поможет дописать? <?php foreach (glob("*.jpg") as $filename) { echo "$filename size " . filesize($filename) . "n"; unlink($filename); } ?> вот такой скрипт вставленный в папку image\cache\data работает,но он удаляет только файлы jpg которые находятся в папке data.А те картинки которые создаются во вложенных папках он не трогает. Как-то так: <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$dirname/$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$dirname/$d/$filename size " . filesize($dirname/$d/$filename) . "\n"; unlink($dirname/$d/$filename); } rm_tree($dirname/$d); } } rm_tree("."); ?> Скрипт не тестировал, так что лучше сделать полный бекап перед тем как пробовать. 1 Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 Вообще крону всё-равно - у вас на скриншоте видно, что указан путь к команде 'php' с параметром для запуска конкретного файла. Т.е. вместо пути к php можно указать любую другую команду, по идее. Но! - мало-ли как там у вашего хостера всё устроено, так что лучше прямо у него и спросить почему этот вариант не сработал. ну я так понимаю чтобы команды можно было писать нуженssh доступ?а его на хостинге я знаю что нет. У хостера я спрашивал,сказали что нужно прописывать путь к файлу со скриптом,только скрипт не дали:) Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 Как-то так: <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$dirname/$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$dirname/$d/$filename size " . filesize($dirname/$d/$filename) . "\n"; unlink($dirname/$d/$filename); } rm_tree($dirname/$d); } } rm_tree("."); ?> Скрипт не тестировал, так что лучше сделать полный бекап перед тем как пробовать. спасибо большое за скрипт , только он к сожалению не работает сначала его вставил в папку image\cache\data там была такая ошибка на всю страницу,причем какое-то время записи добавляются , потом останавливается добавление Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 потом вставил в папку image\cache\ вверху стало писать немного другую ошибку,а дальше до конца страницы опять та же ошибка , что и в предидущем случае rning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ././data/././data/apple_logo-100x100.jpg size Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: unlink() [function.unlink]: No error in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ././data/././data/apple_logo-160x160.jpg size Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: unlink() [function.unlink]: No error in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Помогите пожалуйста дописать этот скриптик,я чувствую,что уже немного осталось :) Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 11 червня 2011 Share Опубліковано: 11 червня 2011 <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$d/$filename size " . filesize("$d/$filename") . "\n"; unlink("$d/$filename"); } rm_tree($d); } } rm_tree("."); ?> А если так? Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$d/$filename size " . filesize("$d/$filename") . "\n"; unlink("$d/$filename"); } rm_tree($d); } } rm_tree("."); ?>А если так? у меня опять не работает, а у Вас этот срипт работал?Может я чего-то не так делаю,так вроде,что тут делать прописал путь к скрипту в адресной строке и запустил,все..или я что-то и тут мог упустить,я уже не понимаю. Или Вы этот скрипт не тестировали? У меня вот такого плана ошибки на всю страницу выдает: Warning: filesize() [function.filesize]: stat failed for ./data/./data/apple_logo-100x100.jpg in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ./data/./data/apple_logo-100x100.jpg size Warning: unlink(./data/./data/apple_logo-100x100.jpg) [function.unlink]: No such file or directory in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: filesize() [function.filesize]: stat failed for ./data/./data/apple_logo-160x160.jpg in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ./data/./data/apple_logo-160x160.jpg size Warning: unlink(./data/./data/apple_logo-160x160.jpg) [function.unlink]: No such file or directory in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: filesize() [function.filesize]: stat failed for ./data/products/binary_watch/./data/products/binary_watch/29-ledwatch-120x120.jpg in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ./data/products/binary_watch/./data/products/binary_watch/29-ledwatch-120x120.jpg size Warning: unlink(./data/products/binary_watch/./data/products/binary_watch/29-ledwatch-120x120.jpg) [function.unlink]: No such file or directory in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Надіслати Поділитися на інших сайтах More sharing options... Yesvik Опубліковано: 11 червня 2011 Share Опубліковано: 11 червня 2011 Ну на фига весь этот цирк? Лёгких путей не ищем? Да обратись ты к хостеру... он тебе внятно ответит какой командой грохнуть содержимое папки. Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 Ну на фига весь этот цирк? Лёгких путей не ищем? Да обратись ты к хостеру... он тебе внятно ответит какой командой грохнуть содержимое папки. мне тоже интересно зачем вся эта тема (хоть я ее и создал). Почему-то мне казалось,что эту проблему все хоть как-то решают,а оказывается или никак не решают или жалко поделится скриптиком. По поводу хостера я ведь писал выше,что хостер сказал "пиши путь к скрипту,а не какую-то команду в крон.." вот я и мучаюсь теперь с этим кэшем Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 11 червня 2011 Share Опубліковано: 11 червня 2011 Smallbear: остальные заказывают столько место на диске, сколько им требуется. Либо руками оптимизируют картинки в кэше. <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$filename size " . filesize("$filename") . "\n"; unlink("$filename"); } rm_tree($d); } } rm_tree("."); ?>Вот так уже должно заработать. 1 Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Загальні питання [Решено] Как автоматически удалять картинки из папки с кэшем? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV
Smallbear Опубліковано: 3 червня 2011 Автор Share Опубліковано: 3 червня 2011 Это у вас больше от скуки, чем от лени =) Только что искал ТАК и на ТРЕТЬЕЙ ССЫЛКЕ уже прекрасно себе представлял, как это делается. У меня на магазе кеш немного пожирает, посему об этой проблеме не задумывался, а у заказчиков хостинги "резиновые", поэтому не парятся)))) Да. А уж как у вас крон "включается" - это от панели управления зависит)) В таком случае помогут запросы "крон си-панель" или "крон-айыспимэнэджэр" ;) по запросу "крон удалить файлы" мне как-то и в голову не пришло искать,т.к. думал это далеко не основная задача этого крона)) я вот тут темку нашел на форуме https://opencartforum.com/topic/290-объём-кеша-картинок-больше-самого-магазина/page__p__1806__hl__кэш__fromsearch__1#entry1806 меня заинтересовала вот эта строка Я делаю через крон самой ОС команда rm -f /shop/image/cache/data/ *.jpg я что-то не совсем понял ОС тут имеется наверно ввиду операционная система?или все-таки имели ввиду Opencart. Из этого вопрос где на локальном комьютере (в самом виндовс или опенкарте) находится крон?:) понимаю,что вопросы может и глупые,но уже очень поздно соображаю плохо может кто подскажет?))есть подозрение что это кнопочка "выполнить" , но не понятно что туда написать чтобы проверить. P.S. На хостинге вроде нашел этот крон, но там еще нужно разобраться что прописывать. Вроде как путь к пхп файлу со скриптом,ну а остальное минуты выполнения ,дни и т.д. там вроде просто прописываются. Надіслати Поділитися на інших сайтах More sharing options...
AlexFisher Опубліковано: 4 червня 2011 Share Опубліковано: 4 червня 2011 Под виндой это Пуск -> Панель управления -> Назначенные задания :) Не знаю, правда, для чего это может пригодиться, если магазин на локале висит... Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 4 червня 2011 Автор Share Опубліковано: 4 червня 2011 Вобщем проблему решил примерно на половину на хостинге ситуация следующая т.е. как я понял SSH доступа на хостинге нет и просто какую-то команду в строку "задача" я не могу ,а могу только прописать путь к файлу ии может я не прав? Но суть не в этом,можно и путь к фалу со скриптом прописать , только сам скрипт никто не поможет дописать? <?php foreach (glob("*.jpg") as $filename) { echo "$filename size " . filesize($filename) . "n"; unlink($filename); } ?> вот такой скрипт вставленный в папку image\cache\data работает,но он удаляет только файлы jpg которые находятся в папке data.А те картинки которые создаются во вложенных папках он не трогает. У меня созданы папки для категорий товаров т.е. примерно такая структура image\cache\data\папка_для_товаров_категории_№_1 \папка_для_товаров_категории_№_2 \папка_для_товаров_категории_№_3 \просто_картинки_без_папок Как переписать скрипт , чтобы удалял картинки в папке data , не только в корне , но и во вложенных файлах? Или например вообще чтобы удаляло все,что в папке data Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 5 червня 2011 Автор Share Опубліковано: 5 червня 2011 Сформулирую вопрос немножко по другому: Люди помогите пожалуйста написать функцию которая удаляет определенную папку вместе со всем ее содержимым?(чтобы удаляла не только все файлы , но и вложенные папке со всем содержимым) Надіслати Поділитися на інших сайтах More sharing options... Yesvik Опубліковано: 5 червня 2011 Share Опубліковано: 5 червня 2011 Да не надо тебе ни каких функций, попроси хостера что-бы тебе подсказали как с помощью cron'а очищать директорию... там одна команда. Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 6 червня 2011 Автор Share Опубліковано: 6 червня 2011 Да не надо тебе ни каких функций, попроси хостера что-бы тебе подсказали как с помощью cron'а очищать директорию... там одна команда. Я скрин выше показывал,как я понял там можно только путь прописать к скрипту на сервере..Да и всеравно хотелось бы знать какой скрипт может сделать то что мне нужно,а то уже из гугла кучу попробовал и ничего не работает или пробую как-то не так.Максимум ,что получается это удаление всех файлов в папке со скриптом,но при этом и скрипт удаляется,а вот вложенные папки всеравно остаются. Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 6 червня 2011 Share Опубліковано: 6 червня 2011 Smallbear: так пробовал? /bin/rm -rf /home/......./image/cache/dataЭто написать в поле "Задача" вместо всего того, что там сейчас. 1 Надіслати Поділитися на інших сайтах More sharing options... alys2007 Опубліковано: 10 червня 2011 Share Опубліковано: 10 червня 2011 <?php foreach (glob("*.jpg") as $filename) { echo "$filename size " . filesize($filename) . "n"; unlink($filename); } ?> Как переписать скрипт , чтобы удалял картинки в папке data , не только в корне , но и во вложенных файлах? Или например вообще чтобы удаляло все,что в папке data Как вариант: удалять все папки с картинками, а затем создавать папки заново. Иначе только рекурсивный обход папок. Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 10 червня 2011 Автор Share Опубліковано: 10 червня 2011 Smallbear: так пробовал? /bin/rm -rf /home/......./image/cache/dataЭто написать в поле "Задача" вместо всего того, что там сейчас. попробовал прописать,но не помогло,ну это впринципе и логично там ведь вроде можно только путь к скрипту прописать а не команду или я не прав? Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 10 червня 2011 Автор Share Опубліковано: 10 червня 2011 Как вариант: удалять все папки с картинками, а затем создавать папки заново. Иначе только рекурсивный обход папок. Удалить все папки-это Вы имеете ввиду писать скрипт который я привел для каждой папки или что? Про ррекурсивный обход читал, но не один скрипт который я находил не заработал.Если поделитесь рабочим буду очень благодарен. Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 10 червня 2011 Share Опубліковано: 10 червня 2011 попробовал прописать,но не помогло,ну это впринципе и логично там ведь вроде можно только путь к скрипту прописать а не команду или я не прав?Вообще крону всё-равно - у вас на скриншоте видно, что указан путь к команде 'php' с параметром для запуска конкретного файла. Т.е. вместо пути к php можно указать любую другую команду, по идее. Но! - мало-ли как там у вашего хостера всё устроено, так что лучше прямо у него и спросить почему этот вариант не сработал. 1 Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 10 червня 2011 Share Опубліковано: 10 червня 2011 Но суть не в этом,можно и путь к фалу со скриптом прописать , только сам скрипт никто не поможет дописать? <?php foreach (glob("*.jpg") as $filename) { echo "$filename size " . filesize($filename) . "n"; unlink($filename); } ?> вот такой скрипт вставленный в папку image\cache\data работает,но он удаляет только файлы jpg которые находятся в папке data.А те картинки которые создаются во вложенных папках он не трогает. Как-то так: <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$dirname/$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$dirname/$d/$filename size " . filesize($dirname/$d/$filename) . "\n"; unlink($dirname/$d/$filename); } rm_tree($dirname/$d); } } rm_tree("."); ?> Скрипт не тестировал, так что лучше сделать полный бекап перед тем как пробовать. 1 Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 Вообще крону всё-равно - у вас на скриншоте видно, что указан путь к команде 'php' с параметром для запуска конкретного файла. Т.е. вместо пути к php можно указать любую другую команду, по идее. Но! - мало-ли как там у вашего хостера всё устроено, так что лучше прямо у него и спросить почему этот вариант не сработал. ну я так понимаю чтобы команды можно было писать нуженssh доступ?а его на хостинге я знаю что нет. У хостера я спрашивал,сказали что нужно прописывать путь к файлу со скриптом,только скрипт не дали:) Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 Как-то так: <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$dirname/$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$dirname/$d/$filename size " . filesize($dirname/$d/$filename) . "\n"; unlink($dirname/$d/$filename); } rm_tree($dirname/$d); } } rm_tree("."); ?> Скрипт не тестировал, так что лучше сделать полный бекап перед тем как пробовать. спасибо большое за скрипт , только он к сожалению не работает сначала его вставил в папку image\cache\data там была такая ошибка на всю страницу,причем какое-то время записи добавляются , потом останавливается добавление Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 потом вставил в папку image\cache\ вверху стало писать немного другую ошибку,а дальше до конца страницы опять та же ошибка , что и в предидущем случае rning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ././data/././data/apple_logo-100x100.jpg size Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: unlink() [function.unlink]: No error in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ././data/././data/apple_logo-160x160.jpg size Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: unlink() [function.unlink]: No error in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Помогите пожалуйста дописать этот скриптик,я чувствую,что уже немного осталось :) Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 11 червня 2011 Share Опубліковано: 11 червня 2011 <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$d/$filename size " . filesize("$d/$filename") . "\n"; unlink("$d/$filename"); } rm_tree($d); } } rm_tree("."); ?> А если так? Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$d/$filename size " . filesize("$d/$filename") . "\n"; unlink("$d/$filename"); } rm_tree($d); } } rm_tree("."); ?>А если так? у меня опять не работает, а у Вас этот срипт работал?Может я чего-то не так делаю,так вроде,что тут делать прописал путь к скрипту в адресной строке и запустил,все..или я что-то и тут мог упустить,я уже не понимаю. Или Вы этот скрипт не тестировали? У меня вот такого плана ошибки на всю страницу выдает: Warning: filesize() [function.filesize]: stat failed for ./data/./data/apple_logo-100x100.jpg in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ./data/./data/apple_logo-100x100.jpg size Warning: unlink(./data/./data/apple_logo-100x100.jpg) [function.unlink]: No such file or directory in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: filesize() [function.filesize]: stat failed for ./data/./data/apple_logo-160x160.jpg in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ./data/./data/apple_logo-160x160.jpg size Warning: unlink(./data/./data/apple_logo-160x160.jpg) [function.unlink]: No such file or directory in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: filesize() [function.filesize]: stat failed for ./data/products/binary_watch/./data/products/binary_watch/29-ledwatch-120x120.jpg in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ./data/products/binary_watch/./data/products/binary_watch/29-ledwatch-120x120.jpg size Warning: unlink(./data/products/binary_watch/./data/products/binary_watch/29-ledwatch-120x120.jpg) [function.unlink]: No such file or directory in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Надіслати Поділитися на інших сайтах More sharing options... Yesvik Опубліковано: 11 червня 2011 Share Опубліковано: 11 червня 2011 Ну на фига весь этот цирк? Лёгких путей не ищем? Да обратись ты к хостеру... он тебе внятно ответит какой командой грохнуть содержимое папки. Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 Ну на фига весь этот цирк? Лёгких путей не ищем? Да обратись ты к хостеру... он тебе внятно ответит какой командой грохнуть содержимое папки. мне тоже интересно зачем вся эта тема (хоть я ее и создал). Почему-то мне казалось,что эту проблему все хоть как-то решают,а оказывается или никак не решают или жалко поделится скриптиком. По поводу хостера я ведь писал выше,что хостер сказал "пиши путь к скрипту,а не какую-то команду в крон.." вот я и мучаюсь теперь с этим кэшем Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 11 червня 2011 Share Опубліковано: 11 червня 2011 Smallbear: остальные заказывают столько место на диске, сколько им требуется. Либо руками оптимизируют картинки в кэше. <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$filename size " . filesize("$filename") . "\n"; unlink("$filename"); } rm_tree($d); } } rm_tree("."); ?>Вот так уже должно заработать. 1 Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Загальні питання [Решено] Как автоматически удалять картинки из папки с кэшем?
Smallbear Опубліковано: 4 червня 2011 Автор Share Опубліковано: 4 червня 2011 Вобщем проблему решил примерно на половину на хостинге ситуация следующая т.е. как я понял SSH доступа на хостинге нет и просто какую-то команду в строку "задача" я не могу ,а могу только прописать путь к файлу ии может я не прав? Но суть не в этом,можно и путь к фалу со скриптом прописать , только сам скрипт никто не поможет дописать? <?php foreach (glob("*.jpg") as $filename) { echo "$filename size " . filesize($filename) . "n"; unlink($filename); } ?> вот такой скрипт вставленный в папку image\cache\data работает,но он удаляет только файлы jpg которые находятся в папке data.А те картинки которые создаются во вложенных папках он не трогает. У меня созданы папки для категорий товаров т.е. примерно такая структура image\cache\data\папка_для_товаров_категории_№_1 \папка_для_товаров_категории_№_2 \папка_для_товаров_категории_№_3 \просто_картинки_без_папок Как переписать скрипт , чтобы удалял картинки в папке data , не только в корне , но и во вложенных файлах? Или например вообще чтобы удаляло все,что в папке data Надіслати Поділитися на інших сайтах More sharing options...
Smallbear Опубліковано: 5 червня 2011 Автор Share Опубліковано: 5 червня 2011 Сформулирую вопрос немножко по другому: Люди помогите пожалуйста написать функцию которая удаляет определенную папку вместе со всем ее содержимым?(чтобы удаляла не только все файлы , но и вложенные папке со всем содержимым) Надіслати Поділитися на інших сайтах More sharing options...
Yesvik Опубліковано: 5 червня 2011 Share Опубліковано: 5 червня 2011 Да не надо тебе ни каких функций, попроси хостера что-бы тебе подсказали как с помощью cron'а очищать директорию... там одна команда. Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 6 червня 2011 Автор Share Опубліковано: 6 червня 2011 Да не надо тебе ни каких функций, попроси хостера что-бы тебе подсказали как с помощью cron'а очищать директорию... там одна команда. Я скрин выше показывал,как я понял там можно только путь прописать к скрипту на сервере..Да и всеравно хотелось бы знать какой скрипт может сделать то что мне нужно,а то уже из гугла кучу попробовал и ничего не работает или пробую как-то не так.Максимум ,что получается это удаление всех файлов в папке со скриптом,но при этом и скрипт удаляется,а вот вложенные папки всеравно остаются. Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 6 червня 2011 Share Опубліковано: 6 червня 2011 Smallbear: так пробовал? /bin/rm -rf /home/......./image/cache/dataЭто написать в поле "Задача" вместо всего того, что там сейчас. 1 Надіслати Поділитися на інших сайтах More sharing options... alys2007 Опубліковано: 10 червня 2011 Share Опубліковано: 10 червня 2011 <?php foreach (glob("*.jpg") as $filename) { echo "$filename size " . filesize($filename) . "n"; unlink($filename); } ?> Как переписать скрипт , чтобы удалял картинки в папке data , не только в корне , но и во вложенных файлах? Или например вообще чтобы удаляло все,что в папке data Как вариант: удалять все папки с картинками, а затем создавать папки заново. Иначе только рекурсивный обход папок. Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 10 червня 2011 Автор Share Опубліковано: 10 червня 2011 Smallbear: так пробовал? /bin/rm -rf /home/......./image/cache/dataЭто написать в поле "Задача" вместо всего того, что там сейчас. попробовал прописать,но не помогло,ну это впринципе и логично там ведь вроде можно только путь к скрипту прописать а не команду или я не прав? Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 10 червня 2011 Автор Share Опубліковано: 10 червня 2011 Как вариант: удалять все папки с картинками, а затем создавать папки заново. Иначе только рекурсивный обход папок. Удалить все папки-это Вы имеете ввиду писать скрипт который я привел для каждой папки или что? Про ррекурсивный обход читал, но не один скрипт который я находил не заработал.Если поделитесь рабочим буду очень благодарен. Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 10 червня 2011 Share Опубліковано: 10 червня 2011 попробовал прописать,но не помогло,ну это впринципе и логично там ведь вроде можно только путь к скрипту прописать а не команду или я не прав?Вообще крону всё-равно - у вас на скриншоте видно, что указан путь к команде 'php' с параметром для запуска конкретного файла. Т.е. вместо пути к php можно указать любую другую команду, по идее. Но! - мало-ли как там у вашего хостера всё устроено, так что лучше прямо у него и спросить почему этот вариант не сработал. 1 Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 10 червня 2011 Share Опубліковано: 10 червня 2011 Но суть не в этом,можно и путь к фалу со скриптом прописать , только сам скрипт никто не поможет дописать? <?php foreach (glob("*.jpg") as $filename) { echo "$filename size " . filesize($filename) . "n"; unlink($filename); } ?> вот такой скрипт вставленный в папку image\cache\data работает,но он удаляет только файлы jpg которые находятся в папке data.А те картинки которые создаются во вложенных папках он не трогает. Как-то так: <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$dirname/$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$dirname/$d/$filename size " . filesize($dirname/$d/$filename) . "\n"; unlink($dirname/$d/$filename); } rm_tree($dirname/$d); } } rm_tree("."); ?> Скрипт не тестировал, так что лучше сделать полный бекап перед тем как пробовать. 1 Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 Вообще крону всё-равно - у вас на скриншоте видно, что указан путь к команде 'php' с параметром для запуска конкретного файла. Т.е. вместо пути к php можно указать любую другую команду, по идее. Но! - мало-ли как там у вашего хостера всё устроено, так что лучше прямо у него и спросить почему этот вариант не сработал. ну я так понимаю чтобы команды можно было писать нуженssh доступ?а его на хостинге я знаю что нет. У хостера я спрашивал,сказали что нужно прописывать путь к файлу со скриптом,только скрипт не дали:) Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 Как-то так: <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$dirname/$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$dirname/$d/$filename size " . filesize($dirname/$d/$filename) . "\n"; unlink($dirname/$d/$filename); } rm_tree($dirname/$d); } } rm_tree("."); ?> Скрипт не тестировал, так что лучше сделать полный бекап перед тем как пробовать. спасибо большое за скрипт , только он к сожалению не работает сначала его вставил в папку image\cache\data там была такая ошибка на всю страницу,причем какое-то время записи добавляются , потом останавливается добавление Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 потом вставил в папку image\cache\ вверху стало писать немного другую ошибку,а дальше до конца страницы опять та же ошибка , что и в предидущем случае rning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ././data/././data/apple_logo-100x100.jpg size Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: unlink() [function.unlink]: No error in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ././data/././data/apple_logo-160x160.jpg size Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: unlink() [function.unlink]: No error in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Помогите пожалуйста дописать этот скриптик,я чувствую,что уже немного осталось :) Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 11 червня 2011 Share Опубліковано: 11 червня 2011 <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$d/$filename size " . filesize("$d/$filename") . "\n"; unlink("$d/$filename"); } rm_tree($d); } } rm_tree("."); ?> А если так? Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$d/$filename size " . filesize("$d/$filename") . "\n"; unlink("$d/$filename"); } rm_tree($d); } } rm_tree("."); ?>А если так? у меня опять не работает, а у Вас этот срипт работал?Может я чего-то не так делаю,так вроде,что тут делать прописал путь к скрипту в адресной строке и запустил,все..или я что-то и тут мог упустить,я уже не понимаю. Или Вы этот скрипт не тестировали? У меня вот такого плана ошибки на всю страницу выдает: Warning: filesize() [function.filesize]: stat failed for ./data/./data/apple_logo-100x100.jpg in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ./data/./data/apple_logo-100x100.jpg size Warning: unlink(./data/./data/apple_logo-100x100.jpg) [function.unlink]: No such file or directory in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: filesize() [function.filesize]: stat failed for ./data/./data/apple_logo-160x160.jpg in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ./data/./data/apple_logo-160x160.jpg size Warning: unlink(./data/./data/apple_logo-160x160.jpg) [function.unlink]: No such file or directory in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: filesize() [function.filesize]: stat failed for ./data/products/binary_watch/./data/products/binary_watch/29-ledwatch-120x120.jpg in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ./data/products/binary_watch/./data/products/binary_watch/29-ledwatch-120x120.jpg size Warning: unlink(./data/products/binary_watch/./data/products/binary_watch/29-ledwatch-120x120.jpg) [function.unlink]: No such file or directory in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Надіслати Поділитися на інших сайтах More sharing options... Yesvik Опубліковано: 11 червня 2011 Share Опубліковано: 11 червня 2011 Ну на фига весь этот цирк? Лёгких путей не ищем? Да обратись ты к хостеру... он тебе внятно ответит какой командой грохнуть содержимое папки. Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 Ну на фига весь этот цирк? Лёгких путей не ищем? Да обратись ты к хостеру... он тебе внятно ответит какой командой грохнуть содержимое папки. мне тоже интересно зачем вся эта тема (хоть я ее и создал). Почему-то мне казалось,что эту проблему все хоть как-то решают,а оказывается или никак не решают или жалко поделится скриптиком. По поводу хостера я ведь писал выше,что хостер сказал "пиши путь к скрипту,а не какую-то команду в крон.." вот я и мучаюсь теперь с этим кэшем Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 11 червня 2011 Share Опубліковано: 11 червня 2011 Smallbear: остальные заказывают столько место на диске, сколько им требуется. Либо руками оптимизируют картинки в кэше. <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$filename size " . filesize("$filename") . "\n"; unlink("$filename"); } rm_tree($d); } } rm_tree("."); ?>Вот так уже должно заработать. 1 Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку
Smallbear Опубліковано: 6 червня 2011 Автор Share Опубліковано: 6 червня 2011 Да не надо тебе ни каких функций, попроси хостера что-бы тебе подсказали как с помощью cron'а очищать директорию... там одна команда. Я скрин выше показывал,как я понял там можно только путь прописать к скрипту на сервере..Да и всеравно хотелось бы знать какой скрипт может сделать то что мне нужно,а то уже из гугла кучу попробовал и ничего не работает или пробую как-то не так.Максимум ,что получается это удаление всех файлов в папке со скриптом,но при этом и скрипт удаляется,а вот вложенные папки всеравно остаются. Надіслати Поділитися на інших сайтах More sharing options...
Sammy95 Опубліковано: 6 червня 2011 Share Опубліковано: 6 червня 2011 Smallbear: так пробовал? /bin/rm -rf /home/......./image/cache/dataЭто написать в поле "Задача" вместо всего того, что там сейчас. 1 Надіслати Поділитися на інших сайтах More sharing options...
alys2007 Опубліковано: 10 червня 2011 Share Опубліковано: 10 червня 2011 <?php foreach (glob("*.jpg") as $filename) { echo "$filename size " . filesize($filename) . "n"; unlink($filename); } ?> Как переписать скрипт , чтобы удалял картинки в папке data , не только в корне , но и во вложенных файлах? Или например вообще чтобы удаляло все,что в папке data Как вариант: удалять все папки с картинками, а затем создавать папки заново. Иначе только рекурсивный обход папок. Надіслати Поділитися на інших сайтах More sharing options...
Smallbear Опубліковано: 10 червня 2011 Автор Share Опубліковано: 10 червня 2011 Smallbear: так пробовал? /bin/rm -rf /home/......./image/cache/dataЭто написать в поле "Задача" вместо всего того, что там сейчас. попробовал прописать,но не помогло,ну это впринципе и логично там ведь вроде можно только путь к скрипту прописать а не команду или я не прав? Надіслати Поділитися на інших сайтах More sharing options...
Smallbear Опубліковано: 10 червня 2011 Автор Share Опубліковано: 10 червня 2011 Как вариант: удалять все папки с картинками, а затем создавать папки заново. Иначе только рекурсивный обход папок. Удалить все папки-это Вы имеете ввиду писать скрипт который я привел для каждой папки или что? Про ррекурсивный обход читал, но не один скрипт который я находил не заработал.Если поделитесь рабочим буду очень благодарен. Надіслати Поділитися на інших сайтах More sharing options...
Sammy95 Опубліковано: 10 червня 2011 Share Опубліковано: 10 червня 2011 попробовал прописать,но не помогло,ну это впринципе и логично там ведь вроде можно только путь к скрипту прописать а не команду или я не прав?Вообще крону всё-равно - у вас на скриншоте видно, что указан путь к команде 'php' с параметром для запуска конкретного файла. Т.е. вместо пути к php можно указать любую другую команду, по идее. Но! - мало-ли как там у вашего хостера всё устроено, так что лучше прямо у него и спросить почему этот вариант не сработал. 1 Надіслати Поділитися на інших сайтах More sharing options...
Sammy95 Опубліковано: 10 червня 2011 Share Опубліковано: 10 червня 2011 Но суть не в этом,можно и путь к фалу со скриптом прописать , только сам скрипт никто не поможет дописать? <?php foreach (glob("*.jpg") as $filename) { echo "$filename size " . filesize($filename) . "n"; unlink($filename); } ?> вот такой скрипт вставленный в папку image\cache\data работает,но он удаляет только файлы jpg которые находятся в папке data.А те картинки которые создаются во вложенных папках он не трогает. Как-то так: <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$dirname/$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$dirname/$d/$filename size " . filesize($dirname/$d/$filename) . "\n"; unlink($dirname/$d/$filename); } rm_tree($dirname/$d); } } rm_tree("."); ?> Скрипт не тестировал, так что лучше сделать полный бекап перед тем как пробовать. 1 Надіслати Поділитися на інших сайтах More sharing options...
Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 Вообще крону всё-равно - у вас на скриншоте видно, что указан путь к команде 'php' с параметром для запуска конкретного файла. Т.е. вместо пути к php можно указать любую другую команду, по идее. Но! - мало-ли как там у вашего хостера всё устроено, так что лучше прямо у него и спросить почему этот вариант не сработал. ну я так понимаю чтобы команды можно было писать нуженssh доступ?а его на хостинге я знаю что нет. У хостера я спрашивал,сказали что нужно прописывать путь к файлу со скриптом,только скрипт не дали:) Надіслати Поділитися на інших сайтах More sharing options...
Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 Как-то так: <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$dirname/$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$dirname/$d/$filename size " . filesize($dirname/$d/$filename) . "\n"; unlink($dirname/$d/$filename); } rm_tree($dirname/$d); } } rm_tree("."); ?> Скрипт не тестировал, так что лучше сделать полный бекап перед тем как пробовать. спасибо большое за скрипт , только он к сожалению не работает сначала его вставил в папку image\cache\data там была такая ошибка на всю страницу,причем какое-то время записи добавляются , потом останавливается добавление Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\data\del.php on line 11 потом вставил в папку image\cache\ вверху стало писать немного другую ошибку,а дальше до конца страницы опять та же ошибка , что и в предидущем случае rning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ././data/././data/apple_logo-100x100.jpg size Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: unlink() [function.unlink]: No error in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ././data/././data/apple_logo-160x160.jpg size Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: unlink() [function.unlink]: No error in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Warning: Division by zero in Z:\home\localhost\www\ledw\image\cache\del.php on line 11 Помогите пожалуйста дописать этот скриптик,я чувствую,что уже немного осталось :) Надіслати Поділитися на інших сайтах More sharing options...
Sammy95 Опубліковано: 11 червня 2011 Share Опубліковано: 11 червня 2011 <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$d/$filename size " . filesize("$d/$filename") . "\n"; unlink("$d/$filename"); } rm_tree($d); } } rm_tree("."); ?> А если так? Надіслати Поділитися на інших сайтах More sharing options...
Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$d/$filename size " . filesize("$d/$filename") . "\n"; unlink("$d/$filename"); } rm_tree($d); } } rm_tree("."); ?>А если так? у меня опять не работает, а у Вас этот срипт работал?Может я чего-то не так делаю,так вроде,что тут делать прописал путь к скрипту в адресной строке и запустил,все..или я что-то и тут мог упустить,я уже не понимаю. Или Вы этот скрипт не тестировали? У меня вот такого плана ошибки на всю страницу выдает: Warning: filesize() [function.filesize]: stat failed for ./data/./data/apple_logo-100x100.jpg in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ./data/./data/apple_logo-100x100.jpg size Warning: unlink(./data/./data/apple_logo-100x100.jpg) [function.unlink]: No such file or directory in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: filesize() [function.filesize]: stat failed for ./data/./data/apple_logo-160x160.jpg in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ./data/./data/apple_logo-160x160.jpg size Warning: unlink(./data/./data/apple_logo-160x160.jpg) [function.unlink]: No such file or directory in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Warning: filesize() [function.filesize]: stat failed for ./data/products/binary_watch/./data/products/binary_watch/29-ledwatch-120x120.jpg in Z:\home\localhost\www\ledw\image\cache\del.php on line 7 ./data/products/binary_watch/./data/products/binary_watch/29-ledwatch-120x120.jpg size Warning: unlink(./data/products/binary_watch/./data/products/binary_watch/29-ledwatch-120x120.jpg) [function.unlink]: No such file or directory in Z:\home\localhost\www\ledw\image\cache\del.php on line 8 Надіслати Поділитися на інших сайтах More sharing options...
Yesvik Опубліковано: 11 червня 2011 Share Опубліковано: 11 червня 2011 Ну на фига весь этот цирк? Лёгких путей не ищем? Да обратись ты к хостеру... он тебе внятно ответит какой командой грохнуть содержимое папки. Надіслати Поділитися на інших сайтах More sharing options... Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 Ну на фига весь этот цирк? Лёгких путей не ищем? Да обратись ты к хостеру... он тебе внятно ответит какой командой грохнуть содержимое папки. мне тоже интересно зачем вся эта тема (хоть я ее и создал). Почему-то мне казалось,что эту проблему все хоть как-то решают,а оказывается или никак не решают или жалко поделится скриптиком. По поводу хостера я ведь писал выше,что хостер сказал "пиши путь к скрипту,а не какую-то команду в крон.." вот я и мучаюсь теперь с этим кэшем Надіслати Поділитися на інших сайтах More sharing options... Sammy95 Опубліковано: 11 червня 2011 Share Опубліковано: 11 червня 2011 Smallbear: остальные заказывают столько место на диске, сколько им требуется. Либо руками оптимизируют картинки в кэше. <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$filename size " . filesize("$filename") . "\n"; unlink("$filename"); } rm_tree($d); } } rm_tree("."); ?>Вот так уже должно заработать. 1 Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 1 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0
Smallbear Опубліковано: 11 червня 2011 Автор Share Опубліковано: 11 червня 2011 Ну на фига весь этот цирк? Лёгких путей не ищем? Да обратись ты к хостеру... он тебе внятно ответит какой командой грохнуть содержимое папки. мне тоже интересно зачем вся эта тема (хоть я ее и создал). Почему-то мне казалось,что эту проблему все хоть как-то решают,а оказывается или никак не решают или жалко поделится скриптиком. По поводу хостера я ведь писал выше,что хостер сказал "пиши путь к скрипту,а не какую-то команду в крон.." вот я и мучаюсь теперь с этим кэшем Надіслати Поділитися на інших сайтах More sharing options...
Sammy95 Опубліковано: 11 червня 2011 Share Опубліковано: 11 червня 2011 Smallbear: остальные заказывают столько место на диске, сколько им требуется. Либо руками оптимизируют картинки в кэше. <?php function rm_tree($dirname) { $dirs = glob("$dirname/*", GLOB_ONLYDIR|GLOB_NOSORT); foreach ($dirs as $d) { foreach (glob("$d/*.jpg", GLOB_NOSORT) as $filename) { echo "$filename size " . filesize("$filename") . "\n"; unlink("$filename"); } rm_tree($d); } } rm_tree("."); ?>Вот так уже должно заработать. 1 Надіслати Поділитися на інших сайтах More sharing options...
Recommended Posts