php организация загрузки

Discussion in 'PHP' started by genom--, 3 May 2007.

  1. genom--

    genom-- Elder - Старейшина

    Joined:
    9 Jul 2006
    Messages:
    668
    Likes Received:
    416
    Reputations:
    288
    вообщем пишу скрипт нухно заделать типо скачку файлов в скрипте -- файлов много а скачивать нужно пачками -- т.е указанное количество файлов ---- это я организую упаковкой части фалов в архив --- вопрос в другом можно какнить установить время жизни чтоли сгенерированного файла чтобы он автоматом удаляллся после скачки чтобы он не висел постоянно на серве -- вот как такое можно замутить
     
  2. Talisman

    Talisman Elder - Старейшина

    Joined:
    22 Apr 2006
    Messages:
    400
    Likes Received:
    151
    Reputations:
    80
    Мое предложение: к имени файла вконец добавляешь дату создания .. ну можно еще час указывать) потом кроном парсишь папку с файлами и удаляешь старые.
    а если еще и активность файлов учитывать, то с помощью мод реврайта сделать читабельные имена файлов (без мусора в конце) да и еще дописывать дату последней скачки... переименовыая файл) (тут нужно правильно лочить файл во время отдачи, чтобы не переименовали. а апдейт даты производить по алгоритму - файл залочен, значит ты не последний, скриптик дохни, если ты был последний. т.е. файл не залочен, изменяй имя) :) вроде просто и сердито, без дополнительных файлов
     
  3. SMiX

    SMiX Elder - Старейшина

    Joined:
    25 Jul 2005
    Messages:
    227
    Likes Received:
    55
    Reputations:
    29
    1) Можно средствами php проверять дату создания файла
    2) Можно в название файла сунуть текущий timestamp и по нему смотреть, но имхо 1 сп-б вернее будет =)
     
  4. Pridu_ROCK

    Pridu_ROCK Member

    Joined:
    11 Apr 2005
    Messages:
    15
    Likes Received:
    7
    Reputations:
    0
    когда то писал такой скрипт вот мое наркоманское решение =)
    PHP:
    $op=opendir("./chat_bd/"); # тута идет проверка если в папке chat_bd есть файлы которые были созданы сутки назад то их удоляем 
    while ($fil=readdir($op))
        {if (
    substr($fil, -3)=="txt") {$files[]=$fil;}}
        for (
    $i=0;$i<sizeof($files);$i++)
        {if (
    date("d",filemtime("./chat_bd/".$files[$i]))!=date("d"))
            {
    unlink("./chat_bd/".$files[$i]);}
        }
     
    #4 Pridu_ROCK, 4 May 2007
    Last edited: 4 May 2007
    1 person likes this.
  5. xaker-boss

    xaker-boss Elder - Старейшина

    Joined:
    6 Mar 2007
    Messages:
    251
    Likes Received:
    49
    Reputations:
    -11
    genom-- как сделаеш скрипт выложи плиз, мне тоже нужен такой, если нетрудно
     
  6. genom--

    genom-- Elder - Старейшина

    Joined:
    9 Jul 2006
    Messages:
    668
    Likes Received:
    416
    Reputations:
    288
    вообщем я тупо добавил кнопку чтобы можно было одним кликом удалить файл и все -- он у меня просто 1 будет создаваться =)
     
  7. Raz0r

    Raz0r Elder - Старейшина

    Joined:
    7 Jan 2007
    Messages:
    126
    Likes Received:
    20
    Reputations:
    0
    1. Создаешь БД
    2. Пишешь в таблицу, скажем, prefix_files, инфу которая хранит в себе имя(/категорию) файла, а так-же дату заливки файла.
    3. Создаешь и вешаешь на крон скрипт, который будет чекать невалидные по срокам файлы и удалять их.