@midarovrk

Показ информации 15 раз в сутки на кукисах?

Здравствуйте.
Помогите пожалуйста переделать скрипт:

<script type="text/javascript">
function setCookie(name, value, days) {
  if (days) {
  var date = new Date();
  date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
  var expires = "; expires=" + date.toGMTString();
  }
  else var expires = "";
  document.cookie = name + "=" + value + expires + "; path=/";
}
   
function getCookie(name) {
  var nameEQ = name + "=";
  var ca = document.cookie.split(';');
  for (var i = 0; i < ca.length; i++) {
  var c = ca[i];
  while (c.charAt(0) == ' ') c = c.substring(1, c.length);
  if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
  }
  return null;
}

function eraseCookie(name)
{
setCookie(name, "", -1);
}

function Cookie(name, days)

{if (!getCookie(name))

{setCookie(name, true, days); document.write('СОДЕРЖИМОЕ');}
}

Cookie('pokazrazvsutki', 1);
</script>


Этот скрипт показывает "СОДЕРЖИМОЕ" 1 раз в сутки для одного посетителя. Работает на куки.
Можно как то сделать чтобы содержимое показывалось не 1 раз, а 15 раз в сутки?

Видимо изначально не правильно объяснил, добавлю:
Т.е. мне нужно чтобы СОДЕРЖИМОЕ показывалось 15 раз подряд (т.е. при каждом обновлении страницы), а уже на 16 раз содержимое не показывалось, и длилось это ровно сутки, либо в 0:00 ночи кука затиралась и потом всё по новой. Возможно такое?
  • Вопрос задан
  • 598 просмотров
Решения вопроса 1
Dejurin
@Dejurin
Software engineer
4-я строка в коде.
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));

Замените на
date.setTime(date.getTime() + ((24/days) * 60 * 60 * 1000));


И вставляйте так
Cookie('pokazrazvsutki', 15);

Таким образом за сутки кукисы будут создаваться 15 раз, так как каждые 1,6 часа будут истекать.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы