Статистика файлов

Тема в разделе "PHP", создана пользователем Mydr, 2 июл 2010.

Статус темы:
Закрыта.
Модераторы: latteo
  1. Mydr

    Mydr Создатель

    Регистр.:
    2 окт 2009
    Сообщения:
    46
    Симпатии:
    2
    Здравствуйте.
    Итак , встала следующая проблема.
    Имеется архив картинок.Около 10к.

    Сам архив mysql не использует

    Некоторые картинки используются на сторонних ресурсах.(картинка берется с моего архива)
    Некоторый картинки просматриваются пользователями.
    Некоторые не использовались со дня "рождения"(загрузки)
    Последние необходимо удалить, а все остальные осталиь

    Задача: сделать скрипт , который будет удалять картинки , которые не загружались более 6 месяцев.

    Сначала думал делать с mysql , типа пользователь просмотрел > запись добавилась > нет 6 месяцев запись удалилась..Но потом понял не состоятальность этой идеи.Если картинка на стороннем ресурсе "подгружается" , то запись никак не добавится..


    В общем хочется услышать варианты , и , если будет не тяжело , исполнение..:bc::thenks:;)
     
  2. diavolic

    diavolic

    Регистр.:
    17 мар 2010
    Сообщения:
    522
    Симпатии:
    102
    читай помощь по функциям:
    fileatime
    unixtojd
    date
    unlink


    думаю остальное реализовать - дело техники
     
    Mydr нравится это.
  3. bondaf

    bondaf Постоялец

    Регистр.:
    16 мар 2010
    Сообщения:
    85
    Симпатии:
    20
    Не отдавай сторонним ресурсам, да и своим, прямые ссылки на картинки. пропускай все через пхп скрипт, который сделает нужные изменения в БД, а потом "сгенерирует" нужную картинку
     
    Mydr нравится это.
  4. DrakonHaSh

    DrakonHaSh

    Регистр.:
    29 июн 2010
    Сообщения:
    358
    Симпатии:
    122
    а че, логи нельзя проанализировать ?
    имхо самый простой вариант
     
    Mydr нравится это.
  5. Jeckerson

    Jeckerson Постоялец

    Регистр.:
    26 июл 2009
    Сообщения:
    56
    Симпатии:
    6
    Да, если не юзать базу, то тогда при добавлении картинки/файла создавать лог и вбивать туда дату когда сохранился этот файл, ну или редактировать уже существующий, делая к примеру:
    $name_file - $date;
    и потом искать нужное слово и проверять дату
     
    Mydr нравится это.
  6. Mydr

    Mydr Создатель

    Регистр.:
    2 окт 2009
    Сообщения:
    46
    Симпатии:
    2
    как бы что-то изменять уже не получится...Система сделана кординально..
    И есть ОГРОМНЫЙ (около 6к картинок) , с которыми стали большие проблемы..
    Особенно с переносами на другой хостингом.
    Пришлось заниматься таким гемороем: лить все на персонал по фтп и потом на новый тож по фтп.По другому - серв зависает и проц гаснет..

    Проблемы с новыми картинками решил.Но вот старые необходимо почистить...

    Базы юзать не хочется..Хочется сделать что-то простое..
    Думаю так:

    Простая функция: если fileatime > 6 месяцев , либо FALSE , то файл удалить.

    Можете набрасать такое?тут , как я понимаю 4 строчки.
     
  7. pitkina

    pitkina

    Регистр.:
    1 апр 2007
    Сообщения:
    253
    Симпатии:
    176
    как-то так
    PHP:
    $files=glob('./image_folder/*.jpg');
    foreach(
    $files as $file)
    { if (
    fileatime($file) < (time()-180*24*60*60))   // 180 дней назад
    unlink($file); echo $file." - deleted\n<br />"; } }
     
    Mydr нравится это.
Статус темы:
Закрыта.