基于$ _SESSION的点击计数器不起作用?

时间:2012-09-22 19:04:23

标签: php

我正在尝试创建一个程序,它接收用户最喜欢的电影名称并将其打印回来。默认收藏夹设置为Godfather

我还附加了一个基于会话变量的HIT计数器,但它无法正常工作。每次加载页面时都会显示ZERO。这是我的代码:

<?php
session_start();

if(!isset($_SESSION['count']))
    $_SESSION['count'] = 0;
else
    $_SESSION['count']++;

if (!isset($_SESSION['movie']))
         $_SESSION['movie'] = "THE GODFATHER";

if(isset($_POST['submit'])) 
    $_SESSION['movie'] = $_REQUEST['moviename'];
?>

<form method='POST' action="index.php">
Please Enter your Favourite Movie
<input type="text" name='moviename' />
<input type="submit" name='submit' value='set movie' />
</form> 

<br /><br />
Your Current Favourite Movie is <?php echo "called ", $_SESSION['movie'] ,"."; ?>
<br /><br />
<?php echo "You Have Viewed this page ", $_SESSION['count'], " times."; ?> 

无论页面加载了多少次,您都会获得YOU HAVE VIEWED THIS PAGE 0 TIMES

2 个答案:

答案 0 :(得分:3)

尝试echo session_id();并确保它不会改变。

如果确实发生了变化,那么您还没有正确配置会话。检查相关的php.ini设置,特别是确保保存路径存在。

答案 1 :(得分:0)

  1. 检查您的编码,可能文件的UTF 带BOM ,将文件转换为UTF-8而不带BOM
  2. 检查文件中的第一行,第一行可能<?php为否