Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在JavaScript/客户端上创建类似PHP会话的页面访问计数_Javascript - Fatal编程技术网

如何在JavaScript/客户端上创建类似PHP会话的页面访问计数

如何在JavaScript/客户端上创建类似PHP会话的页面访问计数,javascript,Javascript,您能告诉我是否可以像PHP一样创建页面查看/访问的会话号吗 $_SESSION['views'] = 0; 用JavaScript?即使当用户翻页并再次返回时,是否可以跟踪号码?您可以使用Cookies。访问时获取cookie并将其递增1。如果不存在,则将其设置为1 例如: <p id="yolo"> </p> <script> var numberOfVisits = function getCookie('numberOfVisits');

您能告诉我是否可以像PHP一样创建页面查看/访问的会话号吗

$_SESSION['views'] = 0;

用JavaScript?即使当用户翻页并再次返回时,是否可以跟踪号码?

您可以使用Cookies。访问时获取cookie并将其递增1。如果不存在,则将其设置为1

例如:

<p id="yolo"> </p>

<script>
    var numberOfVisits = function getCookie('numberOfVisits');

    if (numberOfVisits == "")
    {
        setcookie('numberOfVisits', 1, 100);
    }
    else
    {
        numberOfVisits++;
        setcookie('numberOfVisits', numberOfVisits, 100);
    }

    document.getElementById('yolo').innerHTML = getCookie('numberOfVisits');

    function getCookie(cname) {
        var name = cname + "=";
        var decodedCookie = decodeURIComponent(document.cookie);
        var ca = decodedCookie.split(';');
        for(var i = 0; i <ca.length; i++) {
            var c = ca[i];
            while (c.charAt(0) == ' ') {
                c = c.substring(1);
            }
            if (c.indexOf(name) == 0) {
                return c.substring(name.length, c.length);
            }
        }
        return "";
    }

    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=/";added
    }
</script>

var numberofvisions=函数getCookie('numberofvisions'); 如果(NumberOfVisitions==“”) { setcookie('numberofvisions',1100); } 其他的 { 访问次数++; setcookie(“NumberOfVisitions”,NumberOfVisitions,100); } document.getElementById('yolo')。innerHTML=getCookie('numberOfVisitions'); 函数getCookie(cname){ 变量名称=cname+“=”; var decodedCookie=decodeURIComponent(document.cookie); var ca=decodedCookie.split(“;”);
对于(var i=0;i您可以使用cookie。访问时获取cookie并将其递增1。如果它不存在,则将其设置为1

例如:

<p id="yolo"> </p>

<script>
    var numberOfVisits = function getCookie('numberOfVisits');

    if (numberOfVisits == "")
    {
        setcookie('numberOfVisits', 1, 100);
    }
    else
    {
        numberOfVisits++;
        setcookie('numberOfVisits', numberOfVisits, 100);
    }

    document.getElementById('yolo').innerHTML = getCookie('numberOfVisits');

    function getCookie(cname) {
        var name = cname + "=";
        var decodedCookie = decodeURIComponent(document.cookie);
        var ca = decodedCookie.split(';');
        for(var i = 0; i <ca.length; i++) {
            var c = ca[i];
            while (c.charAt(0) == ' ') {
                c = c.substring(1);
            }
            if (c.indexOf(name) == 0) {
                return c.substring(name.length, c.length);
            }
        }
        return "";
    }

    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=/";added
    }
</script>

var numberofvisions=函数getCookie('numberofvisions'); 如果(NumberOfVisitions==“”) { setcookie('numberofvisions',1100); } 其他的 { 访问次数++; setcookie(“NumberOfVisitions”,NumberOfVisitions,100); } document.getElementById('yolo')。innerHTML=getCookie('numberOfVisitions'); 函数getCookie(cname){ 变量名称=cname+“=”; var decodedCookie=decodeURIComponent(document.cookie); var ca=decodedCookie.split(“;”);
对于(var i=0;i如果您只需要客户端的数据,则使用
window.localStorage
,它在客户端存储没有过期日期的数据,并且不会像cookies那样在每次请求时都将数据发送到服务器,如前所述


var varname=“访问计数器”;
if(localStorage.getItem(varname)==null){
setItem(varname,1);
}否则{
var-visions\u count=parseInt(localStorage.getItem(varname))+1;
setItem(varname,访问次数);
console.log(“总访问量:+访问次数”);
}

如果您只需要客户端的数据,请使用
window.localStorage
,它在客户端存储没有过期日期的数据,并且不会像cookies那样在每次请求时都将数据发送到服务器,如前所述


var varname=“访问计数器”;
if(localStorage.getItem(varname)==null){
setItem(varname,1);
}否则{
var-visions\u count=parseInt(localStorage.getItem(varname))+1;
setItem(varname,访问次数);
console.log(“总访问量:+访问次数”);
}

非常感谢@dustytrash,但是你能告诉我如何显示结果吗?谢谢@dustytrash,但是你能告诉我如何显示结果吗