За последние 24 часа нас посетили 61011 программистов и 1744 робота. Сейчас ищут 1026 программистов ...

Удаление по истечении времени

Тема в разделе "PHP для новичков", создана пользователем Andrey5555, 9 фев 2008.

  1. Andrey5555

    Andrey5555 Активный пользователь

    С нами с:
    29 ноя 2007
    Сообщения:
    486
    Симпатии:
    0
    Адрес:
    Киев
    Как осуществить удаление сообщения по истечении определенного времени? Есть предположение что в бд добавляеться конечная дата сообщения, и когда текущая дата и конечная даты одинаковы, то строка DELETE. Верно ли это предположение?
     
  2. DarkElf

    DarkElf Активный пользователь

    С нами с:
    22 окт 2006
    Сообщения:
    1.632
    Симпатии:
    0
    Andrey5555

    да. только не равны, а текущая дата больше конечной.
     
  3. Andrey5555

    Andrey5555 Активный пользователь

    С нами с:
    29 ноя 2007
    Сообщения:
    486
    Симпатии:
    0
    Адрес:
    Киев
    Спасибо
     
  4. Andrey5555

    Andrey5555 Активный пользователь

    С нами с:
    29 ноя 2007
    Сообщения:
    486
    Симпатии:
    0
    Адрес:
    Киев
    А как увеличить текущую дату на определенный срок?
     
  5. Sergey89

    Sergey89 Активный пользователь

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
    Зачем?
     
  6. Andrey5555

    Andrey5555 Активный пользователь

    С нами с:
    29 ноя 2007
    Сообщения:
    486
    Симпатии:
    0
    Адрес:
    Киев
    Что бы в бд добавилась конечная дата для удаления, или это не так делаеться?
     
  7. Ruzzz

    Ruzzz Активный пользователь

    С нами с:
    11 фев 2008
    Сообщения:
    148
    Симпатии:
    1
    А такой вопрос! Как делать проверку "удалять или нет"? Точнее когда именно и как это делать? Через какой-то там CRON? О котором я только слышал. Или просто в каком-то index.php постоянно вначале include checkdelete.php? Тогда как-то нужно указывать что-бы делал проверку только например не ранее чем через час(день) после проследней проверки? А где и как хранить глобальную метку? Я не силен в PHP :(. В файле? или что-то типа static-пересенная? может это чушь, но я еще не знаю некоторых нюансов. Программирование под web, после прогр. под десктоп несколько смущает :)
     
  8. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
    Ruzzz
    Крон лишь запускает определенную команду в определенный промежуток (аналог Task Manager в Win)
    Ваш вариант тоже возможен, но больше геморроя будет.
     
  9. RomanBush

    RomanBush Активный пользователь

    С нами с:
    5 дек 2007
    Сообщения:
    798
    Симпатии:
    0
    Адрес:
    200 км от Москвы
    Ruzzz

    CRON - это то, что в винде называется "планировщик задач".
    Так же, как и в програмировании "под десктоп". Вопрос в алгоритме, а не в реализации.
    Можно в файле, можно в бд. Время жизни php-скрипта - несколько секунд - пока сгенерится страница, которую отдадут пользователю. "Статик" переменных, которые бы жили между сеансами разных пользователей - нет.
    Ещё раз внимательнее прочитай самое начало любого самоучителя по php. Там везде говорят (по крайней мере, во всех толковых) - "когда страница начинает отдаваться пользователю - php уже закончил свою работу.
     
  10. RomanBush

    RomanBush Активный пользователь

    С нами с:
    5 дек 2007
    Сообщения:
    798
    Симпатии:
    0
    Адрес:
    200 км от Москвы
    Andrey5555
    Начинаешь утомлять. Вообще-то для таких простых вопросов существует поиск.
    mktime, time
    $nextweek=time()+60*60*24*7;
    расшифровка "волшебных цифр" слева направо: 60-секунд умножаем на 60 минут умножаем на 24 часа и умножаем на 7 дней. Получаем что? Прааавильно! Плюс 7 дней, к текущему моменту.
    Что с ней дальше делать? Почитать про date и отформатировать.
     
  11. Ruzzz

    Ruzzz Активный пользователь

    С нами с:
    11 фев 2008
    Сообщения:
    148
    Симпатии:
    1
    Спасибо! Понял насчет переменных! На счет крона, я знал что это "планировщик задач", я имел ввиду что не знаю как с ним работать. Ну да не важно.

    Вопрос такой, как лучше, эффективней: КРОН, файл или БД?

    Спасибо!
     
  12. RomanBush

    RomanBush Активный пользователь

    С нами с:
    5 дек 2007
    Сообщения:
    798
    Симпатии:
    0
    Адрес:
    200 км от Москвы
    Проще всё таки запихать в cron