繁体   English   中英

$ _SESSION不起作用。 XAMPP PHP7的

[英]$_SESSION doesn't work. xampp php7

我试图在xammp上进行注册,但是看起来$ _SESSION不起作用。 我有session_start(); 在每个文档上。 这是我的文件。 希望您能帮到我:) <3

我也有一些index.php,其中只有2个重定向按钮分别注册到register.php和login.php(不完整)

这是我的register.php:

<?php
session_start();

$db = mysqli_connect("localhost", "root", "", "login");

if(isset($_POST['reg_btn'])) {
$username  = $_POST['username'];  //here I also tried with $_SESSION but it doesn't work
$email = $_POST['email'];         //
$password = $_POST['password'];   //
$password2 = $_POST['password2']; //

    if ($password == $password2){
        $password = md5($password);
        $sql = "INSERT INTO users(username, email, password) VALUES('$username', '$email', '$password')";
        mysqli_query($db, $sql);
        $_SESSION['message'] = "You are logged in!";
        $_SESSION['username'] = $username;
        header("location:home.php");
    }else{
        $_SESSION['message'] = "The passwords doesn't match!";
    }
}
?>

<html>
<head>
<title>Login Page</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div class="header"> 
    <h1>Register</h1>
</div>
<div id="frm"> 
<form action="register.php" method="POST">
<table>
    <tr>
        <td><label>Email:</label></td>
        <td><input type="email" name="email" class="textInput" /></td>
    </tr>
    <tr>
        <td><label>Username:</label></td>
        <td><input type="text" name="username" class="textInput" /></td>
    </tr>
    <tr>
        <td><label>Password:</label></td>
        <td><input type="password" name="password"     class="textInput"/></td>
    </tr>
    <tr>
        <td><label>Password Confirmation:</label></td>
        <td><input type="password" name="password2" class="textInput"/></td>
    </tr>
    <tr>
        <td><input type="submit" name="reg_btn" value="Register"/>
    </tr>
</table>
</form>

</div>
</body>
</html> 

这是我的home.php,我希望显示我的会话变量:

<?php 
session_start();

?>
<html>
<head>
<title>Home Page</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div class="header"> 
    <h1>Welcome <?php echo ",".$_SESSION['username'];?></h1>
</div>
</html>

使用其他编辑器检查文件,或将代码复制到新文件中。 我以前遇到过这样的问题,它的发生是因为我的文件在打开php标签之前包含一个字符。

当我使用session_unset()清除会话时; 有用! 感谢您的帮助=)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM