Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.54/41: Рейтинг темы: голосов - 41, средняя оценка - 4.54
3 / 3 / 0
Регистрация: 18.09.2011
Сообщений: 61

Таймер на php. Определить, сколько осталось от текущей даты до конечной

04.01.2014, 19:34. Показов 8290. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
у меня выводит дату окончание вывода поста с БД, например: 2014-01-10
Помогите сделать таймер, сколько осталось от текущей даты до конечной...
и если таймер закончен, то нужно выполнить действие
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.01.2014, 19:34
Ответы с готовыми решениями:

Программа определяет сколько дней от текущей даты осталось до нового года и дня рождения
Программа определяет сколько дней от текущей даты осталось до нового года и дня рождения ,текущую дату и день рождения вводится с...

Вводится дата и время, нужно сделать таймер который показывает сколько осталось от настоящего момента, до введенной даты
Задание, вводится дата и время, нужно сделать таймер который показывает сколько осталось от настоящего момента, до введенной даты. var...

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

10
 Аватар для cellse
70 / 68 / 22
Регистрация: 12.08.2013
Сообщений: 297
04.01.2014, 19:47
Предполагаю, что нужно опираться на это:
Пока текущая дата меньше <= конечной дате
выводим разницу, т.е. сколько там осталось до конца
0
3 / 3 / 0
Регистрация: 18.09.2011
Сообщений: 61
04.01.2014, 21:11  [ТС]
Сколько осталось можно и так проверить, а мне нужно в виде таймера(например: осталось: 2 дня 3 часа 1 минута 12 сек)
PHP
1
2
3
4
5
6
7
    function GetTime($date1 , $date2){
   $datetime1 = new DateTime($date1);
   $datetime2 = new DateTime($date2);
   $interval = $datetime1->diff($datetime2); 
   #нужный формат :
   return $interval->format('%Y-%m-%d %H:%i:%s');
 }
Добавлено через 1 час 20 минут
Сделал как тут, все выводит как надо, одно НО как при завершении таймера выполнить определенный запрос ??
0
Автор FAQ
 Аватар для insideone
3687 / 964 / 114
Регистрация: 10.01.2010
Сообщений: 2,550
05.01.2014, 00:45
А какой запрос? Полагаю update\delete?
Тогда на каждом хите можно выполнять. К примеру удаляем все просроченные строки (дата завершения в колонке DATE_END)
SQL
1
DELETE FROM TABLE WHERE DATE_END >= now()
0
3 / 3 / 0
Регистрация: 18.09.2011
Сообщений: 61
05.01.2014, 02:24  [ТС]
так а как мне каждую минуту проверять закончилось ли время или что? мне так не годиться нужно что бы как то автоматически при завершении таймера был апдейт
0
Автор FAQ
 Аватар для insideone
3687 / 964 / 114
Регистрация: 10.01.2010
Сообщений: 2,550
05.01.2014, 22:15
Цитата Сообщение от женя610 Посмотреть сообщение
так а как мне каждую минуту проверять закончилось ли время или что?
Данный запрос должен выполняться быстро и не загрузит хит. Однако это все равно не подойдёт при необходимости точности выполнения, т.к. все это будет выполняться только при наличии посещаемости.


Для точности можно использовать планировщик событий MySQL
или Cron
0
 Аватар для cellse
70 / 68 / 22
Регистрация: 12.08.2013
Сообщений: 297
05.01.2014, 23:15
Почему бы не сделать обычную проверку, если вы знаете конечную дату. Если конечная дата наступила, то выполнить запрос. И не надо каждую минуту проверять закончилось ли время
1
Автор FAQ
 Аватар для insideone
3687 / 964 / 114
Регистрация: 10.01.2010
Сообщений: 2,550
05.01.2014, 23:47
А как будет запущен код который выполнит проверку и запрос? Запланировать выполнение php-кода на определённое время по сути можно только через cron
1
 Аватар для cellse
70 / 68 / 22
Регистрация: 12.08.2013
Сообщений: 297
06.01.2014, 00:14
Верно, не подумал, прошу прощения
0
3 / 3 / 0
Регистрация: 18.09.2011
Сообщений: 61
07.01.2014, 05:01  [ТС]
Цитата Сообщение от insideone Посмотреть сообщение
Запланировать выполнение php-кода на определённое время по сути можно только через cron
сделаю я файлик для крона, он выполняет то что нужно, как мне на cron передавать автоматически дату выполнения??
я просто знаю крон в настройках выставляется когда ему работать - запускать файл, а у меня разные даты, выводятся конкурсы и при истечении срока определенного конкурса должен выиграть пользователь который больше набрал балов...Вот и возникает вопрос как автоматически передать дату в крон, что бы не писать все время при создании каждого конкурса в крон дату?
0
75 / 75 / 17
Регистрация: 29.11.2013
Сообщений: 262
07.01.2014, 07:04
Если конкурсы или другие события часто происходят, то нет смысла постоянно менять task крона. Маленький пример:
PHP
1
2
3
4
5
6
7
8
9
10
<?php
$date_string = '2014-01-07 15:00:00';
$adv_enabled = true;
if ($adv_enabled)
{
    if (strtotime($date_string) < time()) echo 'Время приключений!';
    else echo 'Час еще не пришел';
}
else echo 'Увы, конкурсов нет';
?>
Аналогично можно составить алгоритм для cron-скрипта:
1. Получаем список конкурсов, которые закончились, но еще не были обработаны.
2. Если таковых нет - завершаем работу скрипта.
3. Проводим подсчет для каждого конкурса и изменяем их статус.
Добавляем cron-задачу на время 00:00 с интервалом исполнения раз в сутки.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.01.2014, 07:04
Помогаю со студенческими работами здесь

Сколько времени осталось до даты
Как узнать сколько осталось дней, часов, минут, секунд до определённой даты? (Пример: Осталось 4 дн. 5 ч. 17 мин. 25 сек.)

Сколько дней осталось до определенной даты
Всем доброго времени суток. Кто может подсказать как зная например какую нибудь дату, получить сколько осталось дней до неё?

Вычислить, сколько дней осталось до нужной даты в БД
имеется таблица tblhosting в ней строки nextduedate = 2015.08.22 regdate = 2015.07.22 в базе данных тип данных date как...

Вычислить сколько дней осталось до нужной даты, указанной в БД
В таблице mysql есть такие данны: name - dataarendy - datareturn вещь1 - 2014-02-17 - 2014-02-22 вещь2 - 2014-02-17 -...

Сколько лет, месяцев, дней, часов осталось до заданной даты
Нужно написать скрипт, вычисляющий сколько лет, месяцев, дней, часов осталось до заданной даты. Ввод данных и вывод результата должен...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru