2010-10-26 53 views
0

我遇到了会话问题,如果我把下面的代码放在页面上,每当我重新加载页面时,计数器就会递增1。

session_start(); 
if(isset($_SESSION['views'])) 
    $_SESSION['views'] = $_SESSION['views']+ 1; 
else 
    $_SESSION['views'] = 1; 

,如果我把上面的代码中的,如果当你点击一个按钮,显示在会话的会话始终是空号在那里它只能运行的语句。

难道会有一个php.ini的问题?

在此先感谢

+0

是否使用'session_st启动会议艺术()'? – 2010-10-26 20:11:20

+1

请发表您的其他代码。从这个信息很难说。就我所见,php.ini似乎不太可能涉及。下面的 – JAL 2010-10-26 20:13:43

+0

是一个非常简单的版本 session_start(); if($ _ POST [“btnSubmit”]){ \t \t $ _SESSION [“views”] ++; \t } echo“VIEWS:”。$ _ SESSION [“views”]; <形式方法= “POST”> \t adamias 2010-10-26 20:51:50

回答

0

您的会话无法启动。检查tmp目录服务器是否可以写(很多会话问题与全磁盘无关!)

+0

只是检查tmp目录,其中会话被保存并且该文件夹具有正确的权限,并且只有7%已满 – adamias 2010-10-26 20:32:20

0

还要检查php.ini文件,以确保session.auto_start = 1,对于代码...

//debug your session 

echo"<!--".session_id()."-->";

//update the views 

array_key_exists('views',$_SESSION)?$_SESSION['views']++:$_SESSION['views']=1;

+0

一旦解决了问题,您将希望删除调试,但这样您可以检查是否有会话,但它不是SAME会话... – FatherStorm 2010-10-26 20:27:16

+0

嗨,如果我在页面加载显示会话ID,然后显示什么会话ID在回发回他们都是一样的。我还通过会话变量循环查看我拥有哪些密钥,并且在后期创建(尝试)的任何会话仍然未保存。 – adamias 2010-10-26 20:46:29

+0

我也检查php ini设置和session.auto_start设置为0,所以我改变了这一点,仍然遇到同样的问题 – adamias 2010-10-26 20:46:57

0
session_start(); 

if(isset($_SESSION['views'])) 
    $_SESSION['views']++; 
else 
    $_SESSION['views'] = 1;