Den skal registere om cokkien: "chat" er gemt på computeren
1. Hvis den ikke findes på computeren skal den genere et 10-cifret tal. 2. Hvis computeren har cookien skal den ikke generere et nyt men bare udskrive det den allerede har...
Cookien må gerne indstilles til at udløbe 1 år efter aktivering!
function setCook() { var oExp = new Date(), nVal = Math.round(Math.random()*10000000000), nNewTime = oExp.getTime() + (1000*60*60*24*365); oExp.setTime(nNewTime); if ( navigator.cookieEnabled ) { document.cookie="chat="+nVal+";expires=" + oExp.toGMTString(); } } function checkCook() { if (!navigator.cookieEnabled) return; if (document.cookie.indexOf("chat=")!=-1) { var aVal = document.cookie.split("chat="); if (aVal.length>1) { var nVal = aVal[1].split(";")[0]; alert("Gør, hvad du vil med nVal her: " + nVal); } else setCook(); } else setCook(); } checkCook();
- eller en sjov lille konstruktion, så den afvikler sig selv:
(function() { if (!navigator.cookieEnabled) return; if (document.cookie.indexOf("chat=")!=-1) { var aVal = document.cookie.split("chat="); if (aVal.length>1) { var nVal = aVal[1].split(";")[0]; alert("Gør, hvad du vil med nVal her: " + nVal); } else setCook(); } else setCook();
function setCook() { var oExp = new Date(), nVal = Math.round(Math.random()*10000000000), nNewTime = oExp.getTime() + (1000*60*60*24*365); oExp.setTime(nNewTime); document.cookie="chat="+nVal+";expires=" + oExp.toGMTString(); } })();
thomas_b >> Der er ingen fejl omkring nVal's eksistens. Bliver den ikke sat, er det fordi, du gør noget forkert - eller fordi, du har disabled cookies :)
- og så har roenving ret i det med de 10 ciffre. Det kunne du f.eks. komme udenom med: nVal = String(Math.random()*10000000000).replace(".","").substring(0,10)
(function() { if (!navigator.cookieEnabled) return; if (document.cookie.indexOf("chart=")!=-1) { var aVal = document.cookie.split("chart="); if (aVal.length>1) { var nVal = aVal[1].split(";")[0]; } else setCook(); } else setCook();
function setCook() { var oExp = new Date(), nVal = Math.round(Math.random()*10000000000), nNewTime = oExp.getTime() + (1000*60*60*24*365); oExp.setTime(nNewTime); document.cookie="chart="+nVal+";expires=" + oExp.toGMTString(); } })();
olebole... Er der en anden måde at gøre dette på, hvor den ikke laver det lille nummer der :)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.