[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Сколько пройшло дней?
peter888
У меня есть текстовая переменная $my_day="01.01.2009".
Мне надо подсчитать, сколько пройшло дней с $my_day до сегоднешнего дня date("d.m.Y").
Пол дня парюсь, и никак немогу написать скрипт.
Это первое.

Второе: еще мне надо вывести сколько в таблице (в базе даных) записей, и просумировать конкретный столбец (поле типа FLOAT) (не через for или while).



Спустя 1 час, 3 минуты, 3 секунды (11.02.2009 - 13:49) sergeiss написал(а):
По первому вопросу просто:
PHP
$diff=strtotimedate("Y-m-d") )-strtotime$my_day );

В переменной будет содержаться разница (в секундах) между указанными датами.
Я думаю, что предобразовать ее в дни сможешь сам smile.gif

По второму вопросу таже просто.
Пусть поле называется F, а таблица T. Тогда запрос будет выглядеть так:
SQL
SELECT COUNT(*), SUM(F) FROM T


Спустя 44 минуты, 49 секунд (11.02.2009 - 14:34) peter888 написал(а):
Цитата (sergeiss @ 11.02.2009 - 10:49)
По первому вопросу просто:
PHP
$diff=strtotime( date("Y-m-d") )-strtotime( $my_day );

В переменной будет содержаться разница (в секундах) между указанными датами.
Я думаю, что предобразовать ее в дни сможешь сам smile.gif

По второму вопросу таже просто.
Пусть поле называется F, а таблица T. Тогда запрос будет выглядеть так:
SQL
SELECT COUNT(*), SUM(F) FROM T

Спасибо, но число очень длинное получаеться.

#my_day="01.01.2009";

$diff= (strtotime(date("d.m.Y"))-strtotime($my_day));
$diff=$diff/86400; // в дне 86400 секунд
echo $diff;

Выводит не верное (большое) число.
sad.gif

Спустя 24 минуты, 28 секунд (11.02.2009 - 14:59) sergeiss написал(а):
У меня нормально всё получается, пробовал 2 варианта формата даты, "Y-m-d" и "m.d.Y". Результат одинаковый и правильный.

И почему у тебя перед my_day стоит знак #?

Вот такой код
PHP
$my_day='01.01.2009';

$diff=strtotime( date("d.m.Y") )-strtotime( $my_day );

echo $diff.", ".($diff/3600).", ".($diff/(3600*24))."<br>";
у меня выдает результат
Код
3542400, 984, 41


PS. А ты видишь число 14285.875? smile.gif

Спустя 8 минут, 29 секунд (11.02.2009 - 15:07) peter888 написал(а):
Цитата (sergeiss @ 11.02.2009 - 11:59)
У меня нормально всё получается, пробовал 2 варианта формата даты, "Y-m-d" и "m.d.Y". Результат одинаковый и правильный.

И почему у тебя перед my_day стоит знак #?

Вот такой код
PHP
$my_day='01.01.2009';

$diff=strtotime( date("d.m.Y") )-strtotime( $my_day );

echo $diff.", ".($diff/3600).", ".($diff/(3600*24))."<br>";
у меня выдает результат
Код
3542400, 984, 41


PS. А ты видишь число 14285.875? smile.gif

Да действительно Ваш код работает.

$my_day="01.01.2009";
$diff=strtotime( date("d.m.Y") )-strtotime( $my_day );
$diff=$diff/(3600*24);
echo $diff;

Спасибо. smile.gif

Тема закрыта.

Спустя 2 часа, 59 минут, 22 секунды (11.02.2009 - 18:06) Alchemist написал(а):
Поживем - увидим...
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.