Показать сообщение отдельно
  #1 (permalink)  
Старый 07.11.2017, 21:50
Профессор
Отправить личное сообщение для DivMan Посмотреть профиль Найти все сообщения от DivMan
 
Регистрация: 08.03.2016
Сообщений: 429

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

<?php
/*
    В первую куку записывается первый визит и она означает последний визит, при повторном входе, проверяется,
    есть ли сессия юзера, если есть то создать вторую куку с визитом и сравнить их и удалить первую куку
    и так каждый раз
*/
    session_start();
   
    $_SESSION['user'] = 'Dima';
   
    $lastVisit = date('d-m-Y');
   
    if(!empty($_SESSION['user'])) {
        if(!isset($_COOKIE['lastVisit'])) {
            setcookie('lastVisit', $lastVisit, time() + 3600*24*30);
        }
        else {
            setcookie('lastVisit2', $lastVisit, time() + 3600*24*30);
           
            $lastArr = explode('-', $_COOKIE['lastVisit']);
            $newArr = explode('-', $lastVisit);
           
            echo 'Последний визит был ' . (mktime(0, 0, 0, $newArr[1], $newArr[0], $newArr[2]) - mktime(0, 0, 0, $lastArr[1], $lastArr[0], $lastArr[2])) / 86400 . ' дней назад.';
           
            setcookie('lastVisit', '', time());
        }
    }
?>
Ответить с цитированием