--EDIT--PHPセッション。ログインすることができません
問題が見つかりました。 Conycに感謝します。 問題が見つかりました。 mysqli_fetch_assoc($ result)は、読み込める行がなくなったときにnullを返します。これは$ _SESSION ['Id'] = $ row ['Username']のセッションにユーザー名を入れるときに$ rowがnullになることを意味します。あなたはパスワードのように変数にユーザー名を格納しようとします。 - Concy 12分前
現在、ログオンしてコンテンツを表示しようとしています。セッションとハッシュパスワードを利用しています。私は私の人生のために、なぜ私が「ログインしている」ことを表示していないのか理解できません。 mysqlから自分のユーザ名とパスワードを取得することができますが、if(isset($ _ SESSION ['Id']))が私がログインしていないことを表示しています。私はそれがHTML上のセッションと関係があると思いますか?または、セッションIDが間違っている可能性がありますか? Idk。あなたには、私が知りたいと思うアイディアがあれば。私はちょっと新しくphpになっているのでかなり荒いです。
if (password_verify($Userpassword , $storedPassword)) {
$sql = "SELECT Username, Password FROM Users WHERE Username = '".$user."'";
if($result = mysqli_query($conn, $sql)) {
if (mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_assoc($result)) {
$_SESSION['Id'] = $row['Username'];
header ("Location: 'mywebsite');
die();
}
}
}
}
本当に答えはありますが、間違った 'header()'を作成したようです。 'header( 'Location:mywebsite');' – Swellar
あなたのpassword_verify関数はどこですか?そして、どのように$ _SESSION ['Id'] = $ row ['Username'];そこで働く。 –
私は最後に 'session_'関数を直接使用していましたが、あなたのビューページで' session_name'をコメントアウトするか、 'session_name( 'Id');'を 'login.php'の先頭に追加してください。 –