• Страница 1 из 1
  • 1
Форум Studio AD » Сайтостроение » Общий форум по Javascript » Разница между датами в днях
Разница между датами в днях
Raiderr
Дата: Четверг, 05.08.2010, 19:22 | Сообщение # 1
болтун
Группа: Проверенные
Пользователь №: 673
Сообщений: 349
Получено оценок: 26
Можно как-то узнать разницу между 01.03.2010 и 02.05.2009 в днях?

Новый кавер Jar of Hearts: http://www.youtube.com/watch?v=OLkXQMHVRhI
  
Aleko
Дата: Четверг, 05.08.2010, 19:37 | Сообщение # 2
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
Raiderr, да

используй Date.parse() для обоих дат, потом из второй вычти первую - получишь число миллисекунд, потом /60/60/24 и получишь дни.


Бесплатные обои.
  
Raiderr
Дата: Четверг, 05.08.2010, 19:43 | Сообщение # 3
болтун
Группа: Проверенные
Пользователь №: 673
Сообщений: 349
Получено оценок: 26
ооооо, спс! А можно это на сервере юковском сделать? Или на пхп Date.parse() есть?

Новый кавер Jar of Hearts: http://www.youtube.com/watch?v=OLkXQMHVRhI
  
Raiderr
Дата: Вторник, 10.08.2010, 00:08 | Сообщение # 4
болтун
Группа: Проверенные
Пользователь №: 673
Сообщений: 349
Получено оценок: 26
Вот написал СЕРВЕРНЫЙ скрипт, который узнает, сколько дней прошло с 0.
То есть сколько ПОЛНЫХ дней имеет текущая дата.
Code
<?if($MONTH$='1')?><? $YEAR$ * 365 + int($YEAR$ / 4) + $DAY$ ?><?endif?>
<?if($MONTH$='2')?><? $YEAR$ * 365 + int($YEAR$ / 4) + 31 + $DAY$ ?><?endif?>
<?if($MONTH$='3')?><?if int($YEAR$ / 4)=($YEAR$ / 4)?><? $YEAR$ * 365 + int($YEAR$ / 4) + 60 + $DAY$ ?><?else?><? $YEAR$ * 365 + int($YEAR$ / 4) + 59 + $DAY$ ?><?endif?><?endif?>
<?if($MONTH$='4')?><?if int($YEAR$ / 4)=($YEAR$ / 4)?><? $YEAR$ * 365 + int($YEAR$ / 4) + 91 + $DAY$ ?><?else?><? $YEAR$ * 365 + int($YEAR$ / 4) + 90 + $DAY$ ?><?endif?><?endif?>
<?if($MONTH$='5')?><?if int($YEAR$ / 4)=($YEAR$ / 4)?><? $YEAR$ * 365 + int($YEAR$ / 4) + 121 + $DAY$ ?><?else?><? $YEAR$ * 365 + int($YEAR$ / 4) + 120 + $DAY$ ?><?endif?><?endif?>
<?if($MONTH$='6')?><?if int($YEAR$ / 4)=($YEAR$ / 4)?><? $YEAR$ * 365 + int($YEAR$ / 4) + 152 + $DAY$ ?><?else?><? $YEAR$ * 365 + int($YEAR$ / 4) + 151 + $DAY$ ?><?endif?><?endif?>
<?if($MONTH$='7')?><?if int($YEAR$ / 4)=($YEAR$ / 4)?><? $YEAR$ * 365 + int($YEAR$ / 4) + 182 + $DAY$ ?><?else?><? $YEAR$ * 365 + int($YEAR$ / 4) + 181 + $DAY$ ?><?endif?><?endif?>
<?if($MONTH$='8')?><?if int($YEAR$ / 4)=($YEAR$ / 4)?><? $YEAR$ * 365 + int($YEAR$ / 4) + 213 + $DAY$ ?><?else?><? $YEAR$ * 365 + int($YEAR$ / 4) + 212 + $DAY$ ?><?endif?><?endif?>
<?if($MONTH$='9')?><?if int($YEAR$ / 4)=($YEAR$ / 4)?><? $YEAR$ * 365 + int($YEAR$ / 4) + 244 + $DAY$ ?><?else?><? $YEAR$ * 365 + int($YEAR$ / 4) + 243 + $DAY$ ?><?endif?><?endif?>
<?if($MONTH$='10')?><?if int($YEAR$ / 4)=($YEAR$ / 4)?><? $YEAR$ * 365 + int($YEAR$ / 4) + 274 + $DAY$ ?><?else?><? $YEAR$ * 365 + int($YEAR$ / 4) + 273 + $DAY$ ?><?endif?><?endif?>
<?if($MONTH$='11')?><?if int($YEAR$ / 4)=($YEAR$ / 4)?><? $YEAR$ * 365 + int($YEAR$ / 4) + 305 + $DAY$ ?><?else?><? $YEAR$ * 365 + int($YEAR$ / 4) + 304 + $DAY$ ?><?endif?><?endif?>
<?if($MONTH$='12')?><?if int($YEAR$ / 4)=($YEAR$ / 4)?><? $YEAR$ * 365 + int($YEAR$ / 4) + 335 + $DAY$ ?><?else?><? $YEAR$ * 365 + int($YEAR$ / 4) + 334 + $DAY$ ?><?endif?><?endif?>

на данный момент этот скрипт выводит только 734373 дня


Новый кавер Jar of Hearts: http://www.youtube.com/watch?v=OLkXQMHVRhI

Сообщение отредактировал Raiderr - Вторник, 10.08.2010, 00:23
  
UnderShot
Дата: Вторник, 10.08.2010, 21:36 | Сообщение # 5
оратор
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
Quote (Raiderr)
734373
На самом деле 14 000+
Code
javascript:var a=new Date("1 Jan 1970").getTime(),b=parseInt(((new Date).getTime()-a)/1000/86400);alert(b)
Вернуло 14 831.


Очень важная тема!
Filmzona — онлайн фильмы.
  
Raiderr
Дата: Вторник, 10.08.2010, 23:07 | Сообщение # 6
болтун
Группа: Проверенные
Пользователь №: 673
Сообщений: 349
Получено оценок: 26
734 373/365=2011,98082 /* число больше, из за того, что раз в четыре года год имеет 366 дней. */
твой вариант щитает дни c 1970 года вроде
14 831/365=40,6328767
и + мой вариант работает на сервере, нагрузки на браузер никакой


Новый кавер Jar of Hearts: http://www.youtube.com/watch?v=OLkXQMHVRhI

Сообщение отредактировал Raiderr - Вторник, 10.08.2010, 23:09
  
UnderShot
Дата: Среда, 11.08.2010, 12:37 | Сообщение # 7
оратор
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
Raiderr, unix.

Очень важная тема!
Filmzona — онлайн фильмы.
  
Raiderr
Дата: Среда, 11.08.2010, 15:16 | Сообщение # 8
болтун
Группа: Проверенные
Пользователь №: 673
Сообщений: 349
Получено оценок: 26
Quote (Raiderr)
сколько дней прошло с 0

я не говорил что по unix сделал

вот мой вариант по юниксу:

Code
<?if($MONTH$='1')?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + $DAY$ ?><?endif?>
<?if($MONTH$='2')?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 31 + $DAY$ ?><?endif?>
<?if($MONTH$='3')?><?if int($YEAR$ / 4)=($YEAR$ / 4)?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 60 + $DAY$ ?><?else?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 59 + $DAY$ ?><?endif?><?endif?>
<?if($MONTH$='4')?><?if int($YEAR$ / 4)=($YEAR$ / 4)?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 91 + $DAY$ ?><?else?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 90 + $DAY$ ?><?endif?><?endif?>
<?if($MONTH$='5')?><?if int($YEAR$ / 4)=($YEAR$ / 4)?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 121 + $DAY$ ?><?else?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 120 + $DAY$ ?><?endif?><?endif?>
<?if($MONTH$='6')?><?if int($YEAR$ / 4)=($YEAR$ / 4)?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 152 + $DAY$ ?><?else?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 151 + $DAY$ ?><?endif?><?endif?>
<?if($MONTH$='7')?><?if int($YEAR$ / 4)=($YEAR$ / 4)?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 182 + $DAY$ ?><?else?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 181 + $DAY$ ?><?endif?><?endif?>
<?if($MONTH$='8')?><?if int($YEAR$ / 4)=($YEAR$ / 4)?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 213 + $DAY$ ?><?else?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 212 + $DAY$ ?><?endif?><?endif?>
<?if($MONTH$='9')?><?if int($YEAR$ / 4)=($YEAR$ / 4)?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 244 + $DAY$ ?><?else?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 243 + $DAY$ ?><?endif?><?endif?>
<?if($MONTH$='10')?><?if int($YEAR$ / 4)=($YEAR$ / 4)?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 274 + $DAY$ ?><?else?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 273 + $DAY$ ?><?endif?><?endif?>
<?if($MONTH$='11')?><?if int($YEAR$ / 4)=($YEAR$ / 4)?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 305 + $DAY$ ?><?else?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 304 + $DAY$ ?><?endif?><?endif?>
<?if($MONTH$='12')?><?if int($YEAR$ / 4)=($YEAR$ / 4)?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 335 + $DAY$ ?><?else?><? ($YEAR$ - 1970) * 365 + int(($YEAR$ - 1970) / 4) + 334 + $DAY$ ?><?endif?><?endif?>

твой вариант "СЕГОДНЯ" считает как за день, а мой его не вщитывает, то есть мой считает ПОЛНЫХ сколько дней


Новый кавер Jar of Hearts: http://www.youtube.com/watch?v=OLkXQMHVRhI
  
Форум Studio AD » Сайтостроение » Общий форум по Javascript » Разница между датами в днях
  • Страница 1 из 1
  • 1
Поиск:
© Studioad.ru 2006 · 2010. Использование материалов форума на сторонних ресурсах без прямой обратной ссылки строго запрещено. Хостинг от uCoz.