Задать вопрос

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

Здравствуйте, недавно один человек мне делал скрипт, который по клику на кнопку записывает в текстовый документ клики и потом на сайте в одном месте все это выводим, раз в сутки должен происходить сброс, в то время в какое мы запустим сброс, он далее должен автоматически раз в сутки скидывать, вот только не работает автоматически, в ручном работает, если по ссылке перейти, а человек который мне делал молчит. (походу черт).

Сайт на html, скрипт работает без базы данных и т.д, сайт простой и была задача сделать запись кликов за сутки и потом сброс и по новой запись.

Вывод кол-во кликов:
<span id="count"></span>

Кнопка при клике на которую идет запись в текстовый
<button type="submit" class="pob" id="click">Отправить данные к специалисту</button>


Скрипт который делает запись в текстовый документ
<script>
      $(function() {
        $('#click').click(function() {
          var $inc = $(this);
          $.ajax({
            type: "POST",
            url: "/counter/worker.php",
            data: $inc.serialize()
          });
        });
        //отмена действия по умолчанию для кнопки submit
        return false; 

      });
      $('#my_form').submit(function (e) {
        var form = this;
        e.preventDefault();
        setTimeout(function () {
          form.submit();
        }, 1000); // in milliseconds
      });
      setInterval(function(){
        $.ajax({
          url: '/counter/refresh.php',
          dataType: 'text',
          success: function(data) {
            $('#count').text(data);
          }
        });
      },1000);
    </script>


Фаил который отчищает клики, и должен автоматически отчищать раз в сутки, после того как мы его запустим перейдя по ссылке. clear.php
<?php
$fpd = fopen("base.txt", "a"); // Открываем файл в режиме записи 
ftruncate($fpd, 0); // Очищаем его
sleep(86400); // засыпаем на сутки
?>


Фаил который делает запись кликов worker.php
<?php

$fp = file_get_contents('base.txt', true);
$num = intval($fp);
$count = $num + 1;

$fpd = fopen("base.txt", "a"); // Открываем файл в режиме записи 
ftruncate($fpd, 0);
$test = fwrite($fpd, $count); // Запись в файл
fclose($fpd); //Закрытие файла
?>


Фаил который обновляет запись я так понимаю refresh.php
<?php
$fp = file_get_contents('base.txt', true);
$num = intval($fp);
print_r($num);
?>


Текстовый в котором идет запись кликов base.txt

Все работает отлично, запись по клику происходит, но нет автоматического обновления кликов, после того как мы запускаем клинер.
  • Вопрос задан
  • 360 просмотров
Подписаться 2 Средний 14 комментариев
Пригласить эксперта
Ответы на вопрос 1
@Kirill-Gorelov
С ума с IT
Для файла clear.php
<?php
include 'refresh.php';
$fpd = fopen("base.txt", "a"); // Открываем файл в режиме записи 
ftruncate($fpd, 0); // Очищаем его
sleep(86400); // засыпаем на сутки
?>


А можно настроить cron, на нужное время.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы