Last updated on April 25th, 2022 at 10:12 am

Using javascript create cookie (Demo Added), These cookies records how many times the visitor has visited the page and writes to the page accordingly. Below script has details on how to add visitor counter using javascript and also delete cookies along with reset counter option.
Also Check Simple Graphical Hit counter using php and mysql

Here is the complete code.

<script LANGUAGE="JavaScript">
function GetCookie (name) {
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i < clen) {
var j = i + alen;
if (document.cookie.substring(i, j) == arg)
return getCookieVal (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0) break;
}
return null;
}
function SetCookie (name, value) {
var argv = SetCookie.arguments;
var argc = SetCookie.arguments.length;
var expires = (argc > 2) ? argv[2] : null;
var path = (argc > 3) ? argv[3] : null;
var domain = (argc > 4) ? argv[4] : null;
var secure = (argc > 5) ? argv[5] : false;
document.cookie = name + "=" + escape (value) +
((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
((path == null) ? "" : ("; path=" + path)) +
((domain == null) ? "" : ("; domain=" + domain)) +
((secure == true) ? "; secure" : "");
}
function DeleteCookie (name) {
var exp = new Date();
exp.setTime (exp.getTime() - 1);
var cval = GetCookie (name);
document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}
var expDays = 30;
var exp = new Date();
exp.setTime(exp.getTime() + (expDays*24*60*60*1000));
function amt(){
var count = GetCookie('count')
if(count == null) {
SetCookie('count','1')
return 1
}
else {
var newcount = parseInt(count) + 1;
DeleteCookie('count')
SetCookie('count',newcount,exp)
return newcount
   }
}
function getCookieVal(offset) {
var endstr = document.cookie.indexOf (";", offset);
if (endstr == -1)
endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}
// End -->
</script>

<!-- STEP TWO: Copy this code into the BODY of your HTML document  -->
<body>
<script LANGUAGE="JavaScript">
<!-- Begin
document.write("You are here for <b>" + amt() + " times.")
// End -->
</script>
<input type="button" onclick="DeleteCookie('count')" value="Reset Cookies"/>

We found a small bug in the script inside function amt for the else statement, we should use return newcount instead of return count. This is fixed now (Apr 25th 2022)

Demo

One thought on “Visitor counter using cookies and javascript”

Leave a Reply

Your email address will not be published. Required fields are marked *