Вот не могу понять логику (именно логику,а не код), как сделать так что бы делался подщёт сколько пользователь пробыл на сайте, уитывая время только то которое он в онлайне, типа как тут на мастерам
ОБСУЖДЕНИЕ
Работа со временем
если бы знал помог бы бесплатно))
не понял?
что именно?
Так тут же всё просто)
Если "актуальное" время онлайна больше, чем текущее время, то пишется: новое время плюс текущее время и минус "актуальное" время онлайна. :)
Если "актуальное" время онлайна больше, чем текущее время, то пишется: новое время плюс текущее время и минус "актуальное" время онлайна. :)
актуальное - это то с которого он зареган?
Bishop, Нет) Ну ты включи же логику свою, если время, с которого зареган - то это уже будет просто подсчет времени со дня регистрации, а не времяпроведения.
"Актуальное" - я имел ввиду то время, которое постоянно пишется в БД когда ты лазиешь по сайту)
"Актуальное" - я имел ввиду то время, которое постоянно пишется в БД когда ты лазиешь по сайту)
спс,и не понял это еще "новое время плюс текущее время"
то делать -
<?php
$time=time();
$times=$time+$time;
?>
Я так понял?
то делать -
<?php
$time=time();
$times=$time+$time;
?>
Я так понял?
Актуальное время - колонка, по которой ты определяешь кто вообще в онлайне в данный момент.
Текущее время - время из time().
Ну и собственно будет тут как ты уже понял, новая колонка для записи времяпроведения)
Текущее время - время из time().
Ну и собственно будет тут как ты уже понял, новая колонка для записи времяпроведения)
Ну смотри, сначала ты проверяешь есть ли пользователь в онлайне в данный момент, чтобы не писать времяпроведения нашару
if ($время_юзера_в_онл > time() - Nсек)
{
$для_записи = $времяпроведение + time() - $время_юзера_в_онл
}
if ($время_юзера_в_онл > time() - Nсек)
{
$для_записи = $времяпроведение + time() - $время_юзера_в_онл
}
$времяпроведение - обьясни что это ибо я туплю чото)
Ща сек) Постараюсь оформить более информативно
буду признателен, просто я непонимаю как мне записывать в бд это
$времяпроведение - Это и есть то время, которое ты будешь записывать.
пускай у тебя в базе колонки
1. online - сюда постоянно пишется время из time() для определения онлайна пользователя
2. pastime - сюда пишется общее проведённое время в онлайне
3. $row[] - примитивный элемент массива.
4. $max - время в секундах, когда пользователя считается еще в онлайне.
Сам сценарий
if ($row['pastime'] > time() - $max)
{
$insert = ($row['pastime'] + time() - $row['online']);
sql > UPDATE `пользователи` SET pastime = '$insert' WHERE `айди` = '$мой_айди' LIMIT 1
}
пускай у тебя в базе колонки
1. online - сюда постоянно пишется время из time() для определения онлайна пользователя
2. pastime - сюда пишется общее проведённое время в онлайне
3. $row[] - примитивный элемент массива.
4. $max - время в секундах, когда пользователя считается еще в онлайне.
Сам сценарий
if ($row['pastime'] > time() - $max)
{
$insert = ($row['pastime'] + time() - $row['online']);
sql > UPDATE `пользователи` SET pastime = '$insert' WHERE `айди` = '$мой_айди' LIMIT 1
}
А дальше просто переводишь pastime в минуты/часы/дни и т.д. при выводе
спасибо огромное)))
Тему закрыл Bishop!
Причина: решено
Причина: решено