Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Срочно !!! Время отображения ...
Покинул форум
Сообщений всего: 15
Дата рег-ции: Февр. 2013
Помог: 0 раз(а)
Вообщем возникла задача -
Нужно чтобы скрипт работал 1 раз в день, в случайно сгенерированое время , и всего 17 мн , а потом генерировалось новое время !
И в следующий день он в это время должен заработать на 17мн , если пользователь зайдет на страницу со скриптом, то он сделает что нужно , а если нет, то нет!)
LIME
Отправлено: 06 Февраля, 2013 - 22:24:37
Активный участник
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
Помог: 322 раз(а)
боюсь что в шаред хостинге это невозможно
если вы можете запускать системные команды то вам придется переписывать таблицу крона
решите это и задайте вопрос заново
KyberKr0ser
Отправлено: 06 Февраля, 2013 - 22:27:50
Новичок
Покинул форум
Сообщений всего: 15
Дата рег-ции: Февр. 2013
Помог: 0 раз(а)
LIME пишет:
боюсь что в шаред хостинге это невозможно
если вы можете запускать системные команды то вам придется переписывать таблицу крона
решите это и задайте вопрос заново
Нужно это сделать чисто с помощью php ...
K_Konstantin
Отправлено: 06 Февраля, 2013 - 22:31:30
Новичок
Покинул форум
Сообщений всего: 16
Дата рег-ции: Февр. 2013
Помог: 1 раз(а)
Я не сильно так шарю но все выскажусь,хоть может и будет звучать смешно!
Допусти есть таблица date в которую мы рандомом заносим случайную дату (запись), сам скрипт проверяет текущую дату с датой в БД и если дата совпадает начинает выполнять скрипт,если нет то нет!
Покинул форум
Сообщений всего: 15
Дата рег-ции: Февр. 2013
Помог: 0 раз(а)
K_Konstantin пишет:
Я не сильно так шарю но все выскажусь,хоть может и будет звучать смешно!
Допусти есть таблица date в которую мы рандомом заносим случайную дату (запись), сам скрипт проверяет текущую дату с датой в БД и если дата совпадает начинает выполнять скрипт,если нет то нет!
Теоретически сделать можно!
Ну ход мысли понял , сегодня выполнил скрипт , в таблицу занес дату на день больше , и случайно сгенирированное время для того дня, а потом в условии сравниваем с текущей датой, и времинем ?! . А как насчет того что бы работало оно всего 17 мн с того как это время настало , и заново обновляло дату и время ?? )
Какое условие нужно ?
Stierus
Отправлено: 06 Февраля, 2013 - 22:46:19
Рекордсмен по количеству сообщений за 7 дней
Покинул форум
Сообщений всего: 2132
Дата рег-ции: Дек. 2008 Откуда: Москваль
Помог: 52 раз(а)
у тебя есть дата и время - старт, когда скрипт начинает работать + ты знаешь, что работать он должен не больше 17 минут (время из бд + 17 минут - максимальное врем)
я правильно понимаю, что ты спрашиваешь, как понять, что текущее время (сейчас) больше времени в базе данных, но меньше (времени в бд + 17минут) ?
LIME
Отправлено: 06 Февраля, 2013 - 22:49:58
Активный участник
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
Помог: 322 раз(а)
Stierus там еще условие случайного времени запуска
заметте))
KyberKr0ser
Отправлено: 06 Февраля, 2013 - 22:54:27
Новичок
Покинул форум
Сообщений всего: 15
Дата рег-ции: Февр. 2013
Помог: 0 раз(а)
Stierus пишет:
у тебя есть дата и время - старт, когда скрипт начинает работать + ты знаешь, что работать он должен не больше 17 минут (время из бд + 17 минут - максимальное врем)
я правильно понимаю, что ты спрашиваешь, как понять, что текущее время (сейчас) больше времени в базе данных, но меньше (времени в бд + 17минут) ?
Я немного не понял что ты написал , вот пример
пробывал делать так
Но тогда скрипт работает с 00:00 до 22:47
А нужно чтобы с 22:30 до 22:47 ....
Stierus
Отправлено: 06 Февраля, 2013 - 22:54:30
Рекордсмен по количеству сообщений за 7 дней
Покинул форум
Сообщений всего: 2132
Дата рег-ции: Дек. 2008 Откуда: Москваль
Помог: 52 раз(а)
задача:
написать скрипт, который выводит слово "тест"
может быть запущен ровно 1 раз в сутки
может быть запущен в 17-ти минутный интервал времени, начиная от рандомного
скрипт после успешного выполнения должен генерировать новое рандомное время интервала для следующего запуска.
Все правильно понимаю?
KyberKr0ser
Отправлено: 06 Февраля, 2013 - 22:55:50
Новичок
Покинул форум
Сообщений всего: 15
Дата рег-ции: Февр. 2013
Помог: 0 раз(а)
Stierus пишет:
задача:
написать скрипт, который выводит слово "тест"
может быть запущен ровно 1 раз в сутки
может быть запущен в 17-ти минутный интервал времени, начиная от рандомного
скрипт после успешного выполнения должен генерировать новое рандомное время интервала для следующего запуска.
Все правильно понимаю?
Да =)!!!
LIME
Отправлено: 06 Февраля, 2013 - 22:59:57
Активный участник
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
Помог: 322 раз(а)
KyberKr0ser ты бы не радовался
решение требует некоторых знаний которых у тебя отсутствует
KyberKr0ser
Отправлено: 06 Февраля, 2013 - 23:01:36
Новичок
Покинул форум
Сообщений всего: 15
Дата рег-ции: Февр. 2013
Помог: 0 раз(а)
LIME пишет:
KyberKr0ser ты бы не радовался
решение требует некоторых знаний которых у тебя отсутствует
Каких ?)
LIME
Отправлено: 06 Февраля, 2013 - 23:02:45
Активный участник
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
Помог: 322 раз(а)
почитай про cron
KyberKr0ser
Отправлено: 06 Февраля, 2013 - 23:04:44
Новичок
Покинул форум
Сообщений всего: 15
Дата рег-ции: Февр. 2013
Помог: 0 раз(а)
LIME пишет:
почитай про cron
Да знаю я про крон !!! Говорю же , нужно без крона cделать!
Покинул форум
Сообщений всего: 2132
Дата рег-ции: Дек. 2008 Откуда: Москваль
Помог: 52 раз(а)
делаешь файл, в котором хранишь разрешенное время запуска (unix timestamp)
алгоритм работы скрипта:
1. берем таймштамп из файла
2 смотрим текущий таймштамп (time())
3 если текущее время больше времени из файла И меньше (времяиз файла + 17*60) - выполняемся, иначе выходим
выполняемся:
выводим строку "тест"
в файл записываем новое время (создаем объект DateTime от сегодня, сбрасываем часы, минуты и секунды в 0, прибавляем 1 день + rand(0, (24*60*60)) секунд)
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.