Как записать в куки код из 5 цифр на 3 суток?
Помогите с простым скриптом, пожалуйста.
Сам скрипты писать не умею, но для сайта (на WordPress) очень нужен скрипт, чтобы делал такое: 1) записывал в куки случайно сгенерированный набор из пяти цифр и запоминал бы его на трое суток, 2) выводил бы в нужном месте страницы эти цифры. Пример работы: человек зашёл на страницу и увидел фразу "Специальный номер: 93061". Далее он может заходить (или не заходить) на сайт сколь угодно раз - номер всё равно будет таким же. Но спустя трое суток, при очередном заходе, номер уже будет другой. Буду очень рад помощи. :) Может быть это поможет тому, кто решит мне помочь - функция для генерации случайных чисел в диапазоне от m до n: function randomNumber (m,n) { m = parseInt(m); n = parseInt(n); return Math.floor( Math.random() * (n - m + 1) ) + m; } |
забыл написать, что нужно также, чтобы отображалась ещё и дата, когда код был запомнен, плюс двое суток.
|
Здравствуйте!
Судя по вашему сообщению, вы ну совсем не знаете javascript. Освойте основы языка и вопрос отпадет сам, полностью или частично. А с чем не справитесь - поможем. На сайте javascript можно начать изучать с учебника, раздел Основы javascript. Возможно, вам также понадобится HTML - учебник есть, например, здесь: http://ru.html.net/tutorials/html/ Задавайте конкретные вопросы по ходу дела. Вы просите готовый скрипт с нуля. Это работа, и за нее обычно платят деньги. Для таких сообщений предназначен раздел форума "Работа". Если вы все же хотите, чтобы вам помогли - приложите какие-то усилия сами и задавайте вопросы по ходу дела. |
GrayHunter, просто прочтите документацию к кукисам и конструктору Date. Но лично я предпочитаю работать с localStorage, вместо куков.
|
Спасибо, мне уже подсказали в другом месте.
Хотел бы уточнить лишь один момент: Сейчас у меня выводится, например, "3 апреля 2012 г. 19:43:36 Московское стандартное время", а мне нужно "3.04.12". Я заменил "date.toLocaleString()" на "date.toLocaleDateString()", но выводиться стало так: "3 апреля 2012 г." Подскажите плз, как сделать "3.04.12"? |
date.getDate()+'.'+date.getMonth()+'.'+date.getYea r()
|
Спасибо, но отображает почему-то "3.3.112".
Привожу полный код скрипта на всякий случай: <script type="text/javascript"> <!-- var console = window.console || {log : function(msg) {alert(msg);}}, MYAPP = MYAPP || { cookie : { expireDate : function(periodType, offset) { var expire = new Date(); switch (periodType.toLowerCase()) { case 'years': expire.setFullYear(expire.getFullYear() + offset); break; case 'months': expire.setMonth(expire.getMonth() + offset); break; case 'days': expire.setDate(expire.getDate() + offset); break; case 'hours': expire.setHours(expire.getHours() + offset); break; case 'minutes': expire.setMinutes(expire.getMinutes() + offset); break; default: console.log( 'MYAPP.cookie.expireDate( Invalid "periodType" = "' + periodType + '" );' ); } return expire; }, deleteCookie : function (cookieName) { writePersistentCookie(cookieName, 'Pending delete', 'years', -1); }, getCookieValue : function (cookieName) { var exp = RegExp(cookieName + '=([^;]+)'); if (exp.exec(document.cookie + ';')) { return RegExp.$1; } return null; }, writePersistentCookie : function (cookieName, cookieValue, expire, path) { var expire = expire || this.expireDate('minutes', 5), path = path || '/'; document.cookie = cookieName + '=' + cookieValue + '; expires=' + expire.toUTCString() + '; path=' + path; } }, showRandomId : function(id, range, periodType) { var getRandomId = function() { var cookieName = 'random_id', value = MYAPP.cookie.getCookieValue(cookieName), expire = MYAPP.cookie.expireDate(periodType[0], periodType[1]), x = range[0], y = range[1], random = Math.floor( Math.random() * (y - x + 1) ) + x, sep = '&'; if(value) { value = value.split(sep); } else { value = [random, expire.valueOf()]; MYAPP.cookie.writePersistentCookie(cookieName, value.join(sep), expire); } return value; }, value = getRandomId(), date = new Date(+value[1]), obj = document.getElementById(id); if(obj) { obj.innerHTML = '<p>Специальный номер: <em>' + value[0] + '</em> истекает <em>' + date.getDate()+'.'+date.getMonth()+'.'+date.getYear() + '</em></p>'; } } } --> </script> </head> <body onload="MYAPP.showRandomId('container', [10101, 99988], ['days', 3])"> <span id="container"></span> |
Часовой пояс GMT +3, время: 03:15. |