我的登录脚本会自动注销

时间:2016-06-15 09:30:27

标签: php session

我自己创建了一个登录脚本,但现在当我登录时,它会转到主页,当我点击其他页面时,它会将我注销。当我重新登录时。它确实有效。

这是我的登录脚本:

CREATE TABLE #Testing (
    [id] [int] IDENTITY(1,1) NOT NULL,
    [col] [decimal](19, 11) NULL,
CONSTRAINT [PK_id_testing] PRIMARY KEY CLUSTERED ([id] ASC)
) 

INSERT INTO #Testing ([col])
SELECT Put_Column_Name_Here 
FROM Put_Table_Name_Here

;WITH rec AS (
SELECT  CAST((1+col/100) as decimal(19,11)) as d,
        1 as l
FROM #Testing
WHERE id = 1
UNION ALL
SELECT CAST( d * (1+col/100) as decimal(19,11)),
        l+1
FROM rec r
INNER JOIN #Testing c
    ON c.id = l+1
)

SELECT top 1 d
FROM rec
ORDER BY l desc
OPTION (MAXRECURSION 0)

DROP TABLE #Testing

这是我的索引:

if(isset($_POST['login'])){
if($sQuery = $db->query("SELECT salt, id FROM users WHERE email='".$db- >real_escape_string($_POST['email'])."'")){
    $sFetch = $sQuery->fetch_assoc();
    if($lQuery = $db->query("SELECT id FROM users WHERE email='".$db->real_escape_string($_POST['email'])."' AND password='".crypt($_POST['password'], $sFetch['salt'])."'")){
        if($lQuery->num_rows > 0){
            $_SESSION['email'] = $_POST['email'];
            $_SESSION['id'] = $sFetch['id'];
            header('Location: home'); 
            exit();
        }else{
            $errorlogin = "Je email of wachtwoord klopt niet.";
        }    
    }else{
        $errorlogin = "Er is iets misgegaan. Foutmelding: ".$db->error;
    }
}else{
    $errorlogin = "Er is iets misgegaan. Foutmelding: ".$db->error;
}
}  

我希望有人可以帮助我

2 个答案:

答案 0 :(得分:0)

第一个.$db- >real_escape_string中的空间是否有意?

答案 1 :(得分:0)

还检查会话变量是否可用于脚本。使用empty()测试而不是isset

if(!empty($_SESSION['id'])){
    include("ingelogd.php"); //When signed in
}else{
    include("inloggen.php"); //when not signed in
}
相关问题