我有兩個.php文件。所有的HTML和PHP,沒有SQL,不會需要/使用它。一個是登錄頁面,另一個是目的地。當我在日誌中記錄我設置的詳細信息時,我無法到達目的地。正如你所看到的,session_start();
顯然是最高的。我甚至把它放在與開放的php標籤相同的行上,沒有任何區別。下面是這兩個頁面的代碼:PHP登錄身份驗證不起作用
登錄:
<?php
session_start();
$username="testu";
$password="testp";
$_SESSION['logged_in']=false;
if (isset($_SESSION['logged_in']) && $_SESSION['logged_in'] == true) {
header("Location: dest.php");
exit;
}
if (isset($_POST['user']) && isset($_POST['pass'])) {
if ($_POST['user'] == $username && $_POST['pass'] == $password) {
$_SESSION['logged_in'] = true;
header("Location: dest.php");
exit;
}
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<title>A title</title>
</head>
<body>
<form action="dest.php" method="post" style="font- family:calibri;position:absolute;top:40%;left:35%;">
Username: <input type="text" name="user"/><br><br>
Password: <input type="password" name="pass" style="position:relative;left:5px;"/><br><br><br>
<input type="submit" value="Submit" style="position:relative;left:115px;"/>
</form>
</body>
</html>
目的地:
(php tag here)
session_start();
if (!isset($_SESSION['logged_in']) || $_SESSION['logged_in'] == false) {
header("Location: login.php");
exit;
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<title>A title</title>
</head>
<body>
<a href="login.php">Log out</a>
</body>
</html>
我注意到,當我註釋掉的PHP代碼的目標文件,我可以訪問DEST。 PHP。問題是,我可以訪問任何登錄詳細信息,或根本沒有。這要麼沒有用,要麼有效。我怎樣才能獲得我已經開始工作的細節?我覺得這個問題在登錄頁面腳本中。非常感謝任何能夠幫助我解決問題的人。
注意:我必須重新發布,因爲我的最後一個問題被標記爲與我的問題完全無關的事情的副本,謝謝。
將'
@Sean謝謝,有人真的關注我的代碼,並得到這個權利。它也非常有意義。請張貼這個答案,以便我可以提供更多的合法信用。 – H3ll0