@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 ночи кука затиралась и потом всё по новой. Возможно такое?
  • Вопрос задан
  • 612 просмотров
Решения вопроса 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 часа будут истекать.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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