USER VISIT IN A WEBSITE USING COOKIES FOR VISITOR COUNT

PROGRAM:

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script language="JavaScript" type="text/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 count
            }
        }
        function getCookieVal(offset) {
            var endstr = document.cookie.indexOf(";", offset);
            if (endstr == -1)
                endstr = document.cookie.length;
            return unescape(document.cookie.substring(offset, endstr));
        }
    </script>
</head>
<body>
      <h1>WEB SITE VISIT</h1>
     <form id="form1" runat="server">
     UserName:
    <asp:TextBox ID="txtUserName" runat="server"></asp:TextBox><br />
     Remember me:
    <asp:CheckBox ID="chkRememberMe" runat="server" /></asp:Checkbox><br/>
    <asp:Button ID="Button1" runat="server" Text="SUBMIT" OnClick="Button1_Click"/></asp:Button >
     <br />
     VISITOR COUNT:
     <script language="JavaScript">
        document.write("You've been here <b>" + amt() + "</b> times.")
     </script>
     </form>
</body>
</html>
 ----------------------------------------------------------------------------------

Default.aspx.vb:

Partial Class _Default
    Inherits System.Web.UI.Page

    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        If chkRememberMe.Checked Then
            Response.Cookies("UserName").Expires = DateTime.Now.AddDays(30)
        Else
            Response.Cookies("UserName").Expires = DateTime.Now.AddDays(-1)
        End If
        Response.Cookies("UserName").Value = txtUserName.Text.Trim
    End Sub

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Not IsPostBack Then
            If (Not (Request.Cookies("UserName")) Is Nothing) Then
                txtUserName.Text = Request.Cookies("UserName").Value
            End If
        End If
    End Sub
End Class
 


No comments:

Post a Comment