как вести историю пользователей на сайте в php?

0

У меня есть веб-сайт, и я хочу показать пользователю "ваши недавние визиты", и это произойдет, когда пользователь придет более одного раза, если пользователь впервые посетит веб-сайт, и ничего не появится, но если он вернется к тому, что у него есть, прежде чем он будет показать в коробке. Для этого у меня есть работа над файлами cookie, но это не работает, мой код ниже:

    <?php
       $pageName = basename($_SERVER['SCRIPT_NAME']);
       $site_name = 'www.xyz.com';
       setcookie('site_name',$site_name,time()+(60*60));
     ?>

      <body style="margin:0 auto; width:400px">
      <br /><h2>Cookie Example</h2>

     <?php
        // print_r($_COOKIE);
        echo "<strong>Cookie has been Created:</strong>&nbsp;&nbsp;&nbsp;".$site_name;
        echo "<br>";
        if(isset($_COOKIE['site_name']))
        {
        echo "<br>";
        echo "<strong>wellcome back</strong>";
        echo "<br>";echo "<br>";echo "<br>";
    }
    else
    {
        echo "<br>";
        echo "<strong>Wellcome</strong>";
    }

    ?>

       <a href="visit1.php">Visit 1</a>&nbsp;&nbsp;|&nbsp;&nbsp;
       <a href="visit2.php">Visit 2</a>&nbsp;&nbsp;|&nbsp;&nbsp;
       <a href="visit3.php">Visit 3</a>

есть ли другой способ получить данные посетителя.

  • 0
    без сохранения в базу данных?
  • 0
    да без сохранения в базе данных
Теги:

2 ответа

0
  1. Страницы (которые появляются в истории) должны быть представлены как можно короче. Назначьте уникальный идентификатор каждой странице.

  2. Вы должны разработать метод, который хранит ряд идентификаторов страниц в простой строке. Вы должны написать процедуры, которые преобразуют массив страниц в эту строку, а также тот, который создает массив этой строки.

  3. Эта строка должна храниться в файле cookie.

  4. Вы должны написать функции, которые создают пустой массив истории (да, это тривиально), добавляет элемент в историю (это не так, у вас есть дублирование), а также упомянутые: конвертировать массив истории в строку, вперед и назад.

  5. Итак, если эти подпрограммы готовы, вы можете добавить функцию "добавить страницу в историю" на каждой странице.

Даже такие простые вещи должны быть разработаны, иначе вы потеряны.

-2

Вам нужно работать с IP-адресом, который будет вашей уникальной записью в dbtable, чтобы сохранить поиск по этому ipaddress в другой dbtable. покажите ему результаты при каждом посещении, сначала проверьте, есть ли у пользователя запись в вашей dbtable, если нет первой записи в эту таблицу, и соответствующий поиск будет введен во вторую dbtable, связанную с этой основной таблицей. Если ваша работа над файлом cookie может оказаться нецелесообразной, если cookie удаляется в любой ситуации, вы можете потерять пользовательские данные, и вы должны каждый раз настраивать их и поддерживать запись db для этого конкретного файла cookie. скорее сохраните полученные значения в cookie. вам не нужно получать таблицу при каждом посещении страницы.

  • 1
    Работа с IP-адресами была бы плохой идеей. Поскольку у многих пользователей не будет статических адресов, они будут время от времени посещать новые адреса и получать данные без данных. Хуже того, другие пользователи могут увидеть ваши предыдущие посещения. Никакое решение для файлов cookie не будет намного лучше, даже если данные могут быть потеряны, если пользователь очистит свои файлы cookie.
  • 0
    но я хочу сделать это с печеньем
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню