为什么我的用户名和电子邮件不保存在sql server(localhost)中

oxcyiej7  于 2021-06-24  发布在  Mysql
关注(0)|答案(2)|浏览(480)

我当时正在使用数据库进行注册/登录页面(第一次),每当我注册我的用户时,我会在数据库中获得以下信息:

它给了我一个类似密码的东西,但它不会给我我的用户名和电子邮件(我猜也是密码)
有人能帮我吗?
我的php代码如下所示:

<?php 
session_start();
// connect to database

$db = mysqli_connect('localhost', 'root', '', 'toolsforever');
if (isset($_POST['login_btn'])) {
    $username   = $db->real_escape_string($username);
    $password   = $db->real_escape_string($password);
    $password = md5($password); // hashed
    $sql = "SELECT * FROM users WHERE username='$username' AND password='$password'";
    $result = mysqli_query($db, $sql);
    if (mysqli_num_rows($result) == 1) {    
        $_SESSION['message'] = "You are now logged in";
        $_SESSION['username'] = $username;
        header("location: home.php"); //redirect to home page
    }else{
        $_SESSION['message'] = "Username/password combination incorrect";
    }
}
?>

提前感谢ps:password2=确认注册密码password2=在他们注册之前。

jvidinwx

jvidinwx1#

那个在丹亚尔·桑德洛那里起了作用。我觉得不可思议的愚蠢,因为我试过一个$\u post,但我做到了:$username=$\u post['username']$username=$db->real\u escape\u string;

mwecs4sa

mwecs4sa2#

您无法从post数组中获取值,请执行以下操作:

$username   = $db->real_escape_string($_POST['username']);
$password   = $db->real_escape_string($_POST['password']);

我假设表单域是 username 以及 password 它不仅与检索有关,似乎还需要检查保存操作。在注册期间存储空值。

相关问题