gpt4 book ai didi

php - 登录 session 未按预期工作

转载 作者:行者123 更新时间:2023-11-29 11:33:22 25 4
gpt4 key购买 nike

我已经创建了一个登录表单。当用户登录时,应该启动 session ,因为某些页面仅对登录的用户可用。所有用户数据都保存在 mysql 数据库中,工作正常。当我尝试使用存储在 mysql 数据库中的正确电子邮件/密码登录时,页面返回到名为 hjem.php 的文件,该文件应该是未登录用户的首页。我没有收到错误消息。

在放置登录表单的页面中,php 代码如下所示 - 该文件名为 login_user.php

<?php 
include("config.php");
session_start();
if($_SERVER["REQUEST_METHOD"] == "POST") {

$myemail = mysqli_real_escape_string($db,$_POST['email']);
$mypassword = mysqli_real_escape_string($db,$_POST['password']);

$sql = "SELECT * FROM users WHERE email = '$myemail' and password = '$mypassword'";
$result = mysqli_query($db,$sql);
$row = mysqli_fetch_array($result,MYSQLI_ASSOC);
$active = $row['active'];

$count = mysqli_num_rows($result);

// If result matched $myusername and $mypassword, table row must be 1 row

if($count == 1) {

$_SESSION['login_user'] = $myemail;

header("location: login-hjem.php");
}else {
$error = "Your Login Name or Password is invalid";
}} ?>

Config.php 文件正在连接到数据库。

当用户成功登录页面时,应该将用户定向到名为 login-hjem.php 的页面。该文件的开头有以下 php 代码:

<?php
include('session.php');
?>

名为 session.php 的文件如下所示:

<?php
include('config.php');
session_start();
if(session_destroy()) {
header("Location: hjem.php");
}
?>

正如开头所说,名为 **hjem.php* 的文件是未登录用户的首页,而 **dosnt'' 包含 php session 。我不需要保护密码或加密它们,因为这只是一个用于测试目的的系统。我希望你能帮助我,我做错了什么。谢谢

最佳答案

只是不要调用session_destroy()。很明显,使用此命令时您将丢弃所有 session 数据...

关于php - 登录 session 未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37023650/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com