0
ログイン用の埋め込み入力フォームでナビゲーションバーを作成していますが、ログインボタンをクリックするとユーザー名とパスワードの値が設定されません。なぜこれが起こっているのか理解できませんか?ユーザー名とパスワードが設定されていない理由を理解できません
<div class="navbar-fixed">
<nav>
<div class="nav-wrapper black darken-2 z-depth-4 navbar-fixed">
<a href="#!" class="brand-logo">   $~ CodersArena</a>
<ul class="right hide-on-med-and-down " >
<?php
include('includes/bootstrap.php');
$con = dbConnect();
if (isset($_POST['username']) && isset($_POST['password'])){
$username =$_POST['username'];
$password = $_POST['password'];
$sql = "SELECT username FROM users WHERE username='" . $username . "' AND password='" . $password . "'";
$result = mysqli_query($con, $sql);
if (mysqli_num_rows($result) > 0) {
echo"success";
$_SESSION['username'] = $username;
echo '<li>
<span class="white-text white">';
echo $_SESSION['username'];
echo '</span>
</li>';
}
}
else
{
if (!isset($_SESSION['username'])) {
echo '
<form action="index.php" method="POST" >
<li style="padding: 20px auto; margin-right:10px ">
<input id="username" type="text" class="validate" style="height:30px" autocomplete="off" placeholder="Username">
</li>   
<li style="padding: 20px auto; margin-right:10px ">
<input id="password" type="text" style="height:30px" autocomplete="off" placeholder="Password">
</li>
<button style="padding: 20px auto; margin:10px " type="submit" class="btn-flat indigo darken-1 white-text right">Login</button>
</form>';
}
}
?>
</ul>
</nav>
あなたは '$ username'をどこで定義しますか?あなたは '$ _SESSION'配列にその値を割り当てていますが、定義していません。 –
@LelioFaieta' $ username = $ _ POST ['username']; 'は$ _SESSION ['username']の上に6行あります= $ username; ' – IMSoP
@IMSoPはい私の間違い。あなたはSQLインジェクションのために開いていることに注意してください。 –