Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Добавление даты сейчас + n дней и сейчас - n дней 
V
    Опции темы
Serious2008
Дата 16.2.2012, 17:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 294
Регистрация: 28.1.2011

Репутация: нет
Всего: нет



Подскажите две команды. Одна выборка из БД, текущая дата + определённое количество дней, а вторая функция текущая дата - несколько дней.
PM MAIL   Вверх
$дмитрий
Дата 16.2.2012, 18:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 19.6.2004

Репутация: 3
Всего: 45



Цитата

Одна выборка из БД, текущая дата + определённое количество дней

SELECT NOW() + INTERVAL 10 DAY

Цитата

а вторая функция текущая дата - несколько дней. 

SELECT NOW() - INTERVAL 10 DAY
PM MAIL   Вверх
Gold Dragon
Дата 16.2.2012, 18:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Призрачный
****


Профиль
Группа: Экс. модератор
Сообщений: 6753
Регистрация: 1.3.2004
Где: Россия, Тамбов

Репутация: 2
Всего: 71



Код

...UNIX_TIMESTAMP(CURRENT_TIMESTAMP)-UNIX_TIMESTAMP(`data`)... < $date_time

ЕСЛИ текущая дата МИНУС дата из таблицы МЕНЬШЕ заданного числа секунд...
например 30 суток ровно
Код

$date_time =30 * 24 * 60 * 60;


НУ что то из этой области smile

Это сообщение отредактировал(а) Gold Dragon - 16.2.2012, 19:06


--------------------
Нельзя жить в прошлом, оно уже прошло.
Нельзя жить в будущем, оно ещё не наступило.
Нужно жить в настоящем, помня прошлое и думая о будущем!
PM MAIL WWW ICQ   Вверх
krundetz
Дата 16.2.2012, 20:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вечный странник
***


Профиль
Группа: Завсегдатай
Сообщений: 1400
Регистрация: 14.6.2007
Где: НН(Сормово)

Репутация: 1
Всего: 69



Gold Dragon, вроде как если дата из таблицы вариант предложенный $дмитрий тоже отработает


--------------------
!цензоры - Хранитель стратегической жидкости
Группа ТГВ
Группа Нижний Новгород
user posted image
PM MAIL   Вверх
Gold Dragon
Дата 17.2.2012, 06:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Призрачный
****


Профиль
Группа: Экс. модератор
Сообщений: 6753
Регистрация: 1.3.2004
Где: Россия, Тамбов

Репутация: 2
Всего: 71



krundetz, ну просто вопрос что такое количество дней smile

например, 
сколько дней между 17.02.2012 23:59:59 и 18.02.2012 00:00:01
или между 17.02.2012 00:00:00 и 18.02.2012 23:59:59

В первом случае две секунду, во втором - двое суток без двух секунд. В принципе если такая "погрешность" не важна, то однозначно можно и по другому решить smile

Добавлено через 1 минуту и 50 секунд
а вообще, так получилось что когда я писал кода $дмитрий`я ещё не было smile просто открыл новые темы, пока читал и отвечал уже появился ответ 


--------------------
Нельзя жить в прошлом, оно уже прошло.
Нельзя жить в будущем, оно ещё не наступило.
Нужно жить в настоящем, помня прошлое и думая о будущем!
PM MAIL WWW ICQ   Вверх
krundetz
Дата 17.2.2012, 09:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вечный странник
***


Профиль
Группа: Завсегдатай
Сообщений: 1400
Регистрация: 14.6.2007
Где: НН(Сормово)

Репутация: 1
Всего: 69



Цитата(Gold Dragon @  17.2.2012,  06:11 Найти цитируемый пост)
В принципе если такая "погрешность" не важна, то однозначно можно и по другому решить

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

Хотя вопрос затронутый тобой безусловно интересен. Надо посмотреть, что сделает NOW() - INTERVAL 10 DAY с временем.


--------------------
!цензоры - Хранитель стратегической жидкости
Группа ТГВ
Группа Нижний Новгород
user posted image
PM MAIL   Вверх
Gold Dragon
Дата 17.2.2012, 09:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Призрачный
****


Профиль
Группа: Экс. модератор
Сообщений: 6753
Регистрация: 1.3.2004
Где: Россия, Тамбов

Репутация: 2
Всего: 71



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


--------------------
Нельзя жить в прошлом, оно уже прошло.
Нельзя жить в будущем, оно ещё не наступило.
Нужно жить в настоящем, помня прошлое и думая о будущем!
PM MAIL WWW ICQ   Вверх
ksnk
Дата 17.2.2012, 09:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 14
Всего: 386



Цитата(Gold Dragon @  17.2.2012,  09:41 Найти цитируемый пост)
в DAY я так понимаю не содержит временной части, а значит будет две секунд по идеи считаться двумя днями 




Код

The INTERVAL keyword and the unit specifier are not case sensitive.

The following table shows the expected form of the expr argument for each unit value.

unit Value    Expected expr Format
MICROSECOND    MICROSECONDS
SECOND    SECONDS
MINUTE    MINUTES
HOUR    HOURS
DAY    DAYS
WEEK    WEEKS
MONTH    MONTHS
QUARTER    QUARTERS
YEAR    YEARS
SECOND_MICROSECOND    'SECONDS.MICROSECONDS'
MINUTE_MICROSECOND    'MINUTES:SECONDS.MICROSECONDS'
MINUTE_SECOND    'MINUTES:SECONDS'
HOUR_MICROSECOND    'HOURS:MINUTES:SECONDS.MICROSECONDS'
HOUR_SECOND    'HOURS:MINUTES:SECONDS'
HOUR_MINUTE    'HOURS:MINUTES'
DAY_MICROSECOND    'DAYS HOURS:MINUTES:SECONDS.MICROSECONDS'
DAY_SECOND    'DAYS HOURS:MINUTES:SECONDS'
DAY_MINUTE    'DAYS HOURS:MINUTES'
DAY_HOUR    'DAYS HOURS'
YEAR_MONTH    'YEARS-MONTHS'

отсюда


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
Serious2008
Дата 19.2.2012, 18:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 294
Регистрация: 28.1.2011

Репутация: нет
Всего: нет



Мне нужно было просто по крону запускать, чтобы всё что 10 или любое другое число дней назад было, или будет через некое число дней, то делать то. И храниться в базе просто число как дата. Я думаю вы оба правы. Но я воспользовался вариантом дмитрия
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Базы Данных | Следующая тема »


 




[ Время генерации скрипта: 0.0512 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.