簡體   English   中英

php / html5登錄驗證

[英]php/html5 login authentication

我正在嘗試在MYsql數據庫中驗證用戶。 我嘗試了很多教程,每次都失敗了。 我正在粘貼下面的代碼,我現在不關心安全性或sql注入。 我只是想讓它工作,所以我可以繼續我的下一個要求。 如果有人有任何鏈接到GOOD php / html5登錄認證教程,那么請分享。 我很容易就能創建一個注冊表單,但是這個登錄表單確實給了我很多困難。

$id =$_POST['Id'];
$password =$_POST['password'];
$accessdb = "SELECT * from UserData where Id ='$id' and password ='$password";
            $authenticate = mysqli_query($conn, $accessdb);
                    if (mysqli_num_rows($authenticate) == 1) {
                       session_start();
                        $_SESSION['auth'] = 'true';
                        header('location: Profile.php');
                    }
                    else {
                        echo "Wrong log-in credentials";
                    }

首先, session_start()應該是頁面上的第一件事,應該在您希望用戶通過身份驗證的所有頁面上進行訪問。

然后,您需要更正您的查詢$accessdb如下所示:

$accessdb = "SELECT * FROM userdata WHERE id = {$id} AND password ='{$password}'";

注意 :不確定$id是否為數字。 如果不是,請執行: '{$id}'而不是{$id}

        $password =$_POST['password'];
        $user = "SELECT * FROM UserData WHERE Id ='$id'";
        $authenticate = $conn->query($user);
        $row = $authenticate->fetch_assoc();
        $hash_password = $row['password'];
        $hash = password_verify($password, $hash_password);
        if ($hash ==0) {
            echo "Something went wrong!!";
            header('Location: LogIn.php');
            exit();
        }
        else {
       `enter code here`$accessdb = "SELECT * FROM UserData WHERE Id ='$id'                                                      
        AND    password = '$hash_password'";
            $authenticate = $conn->query($accessdb);
                if (!$row = $authenticate->fetch_assoc()) {
                     echo "Your username is incorrect, Re-enter CREDENTIALS";
            }
                 else {
                     $_SESSION['id'] = $id;
                     header('Location: Profile.php');
                }
        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM