2012-12-12 45 views
0

我转移了一些网站文件,我曾经在不同的网站上运行WAMP,并且一切正常,但现在我将它转移到WAMP后,一些登录php的东西没有一切工作。 session_destroy()的东西甚至不工作,我也试过session_unset()。我在WAMP上遇到的另一件事是unset($_SESSION);。看起来好像它甚至没有工作。你能帮忙的话,我会很高兴。在WAMP上登录系统

这里是注销脚本

<?php 
session_start(); 
session_destroy(); 
header('Location:login.php'); 
?> 

这里是登录脚本的一部分(会话寄存器部分)

// Register $myusername, $mypassword and redirect to file "login_success.php" 
session_start('myusername'); 
session_start('mypassword'); 
$_SESSION['F_name'] = $row['First Name']; 
$_SESSION['L_name'] = $row['Last Name']; 
$_SESSION['Email'] = $row['Email']; 
$_SESSION['Password'] = $row['_password']; 
$_SESSION['id'] = $row['id']; 

我做什么困惑。我已经尝试了一些东西,有些东西有点奏效,但是所有这些代码都用于在不同的服务器上工作,并且它们都是相同的文件和所有东西。

+0

会话文件在哪里被保存? apache是​​否有权限从该文件夹中删除文件? –

+0

检查两个系统上的php配置。可能是一些会话配置,可能是一些register_global问题。到目前为止,仅仅这些信息还不足以让你看清你正在经历的事情。 – Djumaka

+1

我不认为'unset($ _ SESSION)'会永远起作用。你会希望使用'unset($ _ SESSION ['Password'])'从$ _SESSION变量中取消设置。你所提供的所有代码看起来都是正确的。您是否查看了错误日志以查看是否有任何错误? – Twisty

回答

0

我找到了答案。是的,我原来的代码变得有点蹩脚,所以我回到了默认文件,答案很简单。我发现,我只需要调用会话,然后设置这样的变量:

session_start(); 
$_SESSION[SomeName'] = $SomeValue; 

,当我想检查是否设置

if(!isset($_SESSION['SomeName'])){} 

已经完全制定了我,谢谢每个人都有帮助。