繁体   English   中英

如何在PHP中显示会话和Cookies的正确输出

[英]How to display correct output of Sessions & Cookies in PHP

我的“会话和Cookie”程序有问题。

请查看以下代码:

<?php
session_start();    //session starts
if(! isset($_COOKIE['cnt']))
{
    @$_SESSION['nv'] = 1;
}
else
{
    @$_SESSION['nv'] += 1;
}
$val =  $_SESSION['nv'];
echo $val;
setcookie("cnt", $val, time()+30 );
echo "<h1>No. of visits=".@$_COOKIE['cnt'] ."</h1>";
if (@$_COOKIE['cnt'] == 5)
  {
  setcookie("cnt", 0, time()-30);
  session_destroy();
  }
?>

它没有给出正确的输出。

当我第一次运行该程序时,它显示:

No. of visits=

没什么意思

&当我第二次运行该程序时,它显示:

No. of visits=1

我希望我的输出在我第一次运行该程序时显示为“访问次数= 1”。 但是它在第二次显示此输出。

请帮我..

setcookie设置的cookie与服务器发送给客户端的HTTP响应一起发送,并引用文档:

一旦设置了cookie, 就可以使用$ _COOKIE或$ HTTP_COOKIE_VARS数组在下一页加载访问它们

您应该打印会话变量

echo "<h1>No. of visits=" . $_SESSION['nv'] . "</h1>";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM