現在、php mysql ログインの問題にかなり混乱しています。これが私のコードです。
私は初心者で、現在phpでmysql関数を使用する方法しか知らないので、今のところmysqliとPDOを使用するように勧めないでください。後で修正します。コードを見て、認証コードの何が問題なのか教えてください。
login.php
<?php
session_start();
if($_SERVER["REQUEST_METHOD"] == "POST") {
$username=addslashes($_POST['username']);
$password=addslashes($_POST['password']);
//connect to database
$con=mysql_connect("localhost","","") or die();
$db=mysql_select_db("dashboard") or die();
//execute query
$query ="SELECT username, password from `login` where username=$username";
$result=mysql_query($query);
if($username=='username' && $password=='password') {
$_SESSION['username']=$username;
header("Location:dashboard.php");
} else {
echo "You got credentials wrong";
}
}
?>
<form method="post" action="<?php htmlspecialchars("PHP_SELF"); ?>">
<label>Username :</label><input type="text" name="username"></br>
<label>Password:</label><input type="password" name="password"></br>
<br/>
<input type="submit" value="submit"></br>
</form>
ダッシュボード.php
<?php
session_start();
echo "Welcome ". $_SESSION['username'];
?>
<a href="logout.php">Logout</a>
logout.php
<?php
session_destroy();
header("Location:login.php");
?>
ページのエラー:
注意: 未定義のインデックス: 23 行目の /home/lampstack/apache2/htdocs/dashboard/login.php のパスワード
23行目コード
if($username=='username' && $password=='password')