База данных: Дата
-
Вопрос: как поменять?
Я получаю дату на страничке через "Выполнить код"
[[DATE_STIRNG]] = new Date()
[[DATE_YEAR]] = [[DATE_STIRNG]].getFullYear()
[[DATE_MONTH]] = [[DATE_STIRNG]].getMonth() +1
[[DATE_DAY]] = [[DATE_STIRNG]].getDate()
[[DATE_HOURS]] = [[DATE_STIRNG]].getHours()
[[DATE_MINUTES]] = [[DATE_STIRNG]].getMinutes()
[[DATE]] = [[DATE_DAY]]+";"+[[DATE_MONTH]]+";"+[[DATE_YEAR]]
А вот как заменить соответствующее поле в базе данных, что-то не дотумкал..
Пробовал и менять разделители, и вставлять [[DATE_STRING]] целиком. Ни фига не выходит.
-
@Viktor пожалуйста, помогите кто-нибудь!
Как заносить в базу данных дату? Какой синтаксис для операций с типом данных date?
-
@Viktor могу ошибиться, но в базу вам надо добавить [[DATE]]
-
@BigLebovski попробую, в любом случае спасибо.
-
@BigLebovski попробовал. Не вышло. Даже не пишется скопированное один к одному значение из самого поля "Дата".
Support, вернитесь к нам!
-
@Viktor При вставки записи в базу, поле c типом date можешь оставлять пустым, и это поле автоматом заполнится текущей датой.
-
@santilo оно все время имеет какое то значение. Не очистить его...
-
@Viktor это поле не может быть пустым
-
@santilo ага. оно автоматом заполняется датой 1970 года..
-
@Viktor Этот тип поля принимает timestamp в миллисекундах , формат который у тебя в первом посте не пройдет, оставляй это поле пустым (чтобы использовалась текущую дата автоматом), вроде тебе это нужно.
-
@santilo не совсем это.Мне нужно каждый день получать дату, сравнивать ее со значением в поле.Если не равно, тогда пообнулять счетчики и заменить дату.
Говоришь, в милисекундах..Так это надо как усе пересчитывать, чтобы теперешнюю дату получить в приемлимом формате? Хоть подскажи, куда копать!
-
@Viktor используй действие Получить записи -> добавить фильтр, выбираешь поле которое типа дата, далее тип фильтра (допустим Раньше чем) в значение выбираешь тип выражение и пишешь Date.now() это текущая дата в миллесекундах. На выходе будет список записей, ты можешь пройтись по ним циклом foreach
-
@santilo получилось! Спасибо!
-
@santilo
Может, теперь подскажешь как вычесть одну дату из другой?
Яваскрипт это позволяет, но код вида
[[DATE]] = new Date()
[[N]] = [[DATE]] - [[DATE_BORN]];
не работает..
-
Вот так сработает, "выполнить код"
VAR_DATE = new Date() VAR_N = (VAR_DATE) - (VAR_DATE_BORN)
При условии, что ты объявил перед этим переменную DATE_BORN, например так:
VAR_DATE_BORN = new Date()
-
@Fox я тактоже делал
Только в скобочки не занес. Возвращало null
И сейчас возвращает ((
В обоих переменных четко формат даты. Причем, неодинаковой. 1-я больше 2-й..
-
Ну я вот только что всё проверил.
Тестовый проект
-
@Fox это мистика какая-то. Код работает, и у тебя и у меня в проектах. Но если DATE_BORN брать из базы, то возвращает null
-
У тебя в базе дата в каком виде? Если взять дату количеством миллисекунд, прошедших с 01.01.1970, командой
+new Date()
то из переменной работает.
Тот же тестовый проект
-
@Fox там точно тип данных date. Единственное, что я внес его копипастом. На вид тоже самое.
-
@Fox кароче, теперь вопрос стоит не как вычесть дату, а как правильно вычесть дату из таблицы. Потому что та дата, которая получается выражением, и та дата, которая берется из таблицы - какие то разные даты.