php会话变量无法在服务器上运行

时间:2014-02-25 08:37:23

标签: php session

我的服务器上的网站有问题,
我是php的新手

我的登录页面包含以下代码:

    session_set_cookie_params(0, '/', 'marutinrutyakala.co.uk'); 
    session_start(); 
    $_SESSION['name']= $adminname; 
    $_SESSION['login']=true; 
    $_SESSION['start']=time(); 
    echo '<META HTTP-EQUIV="Refresh" Content="0; URL=performance.php">';

现在在performance.php上,代码是

    session_start(); 
    if(!isset($_SESSION['login'])) 
    { echo '<META HTTP-EQUIV="Refresh" Content="0; URL=index.php">'; }

此处执行的网页代码........

此代码在本地主机上运行良好但在服务器上失败......

请帮忙......

2 个答案:

答案 0 :(得分:0)

有些事情要尝试:

来自session_set_cookie_params的{​​{3}}:

此功能的效果仅持续脚本的持续时间。因此,您需要在调用set_cookie_params()之前为每个请求调用会话_ session_start()

所以你的performance.php应该是:

session_set_cookie_params(0, '/', 'marutinrutyakala.co.uk'); 
session_start(); 
if(!isset($_SESSION['login'])) 
{ echo '<META HTTP-EQUIV="Refresh" Content="0; URL=index.php">'; }

检查服务器的域名。您明确声明您的会话cookie仅适用于maruntinrutyakala.co.uk域名:该域名是否正确?

尝试不使用session_set_cookie_params行,是否可以使用?

检查您的PHP documentation:是否出现错误?

答案 1 :(得分:0)

在页面顶部使用以下代码

ob_start();

此功能将打开输出缓冲。当输出缓冲处于活动状态时,不会从脚本(标头除外)发送输出,而是将输出存储在内部缓冲区中。