0
SQLクエリで選択された行の数が> 0で、それ以外の場合にfalseに設定されている場合、ログインセッションをtrueに設定するのに問題があります。私が有効なログインを入力すると、何も印刷されません(私はそれが動作することを確認するために印刷しています)。そして、無効なログインをしたときにセッションを印刷しますが、ログインしても値はありません。私はまた、入力が正しいことを確認するためにユーザー名とパスワードを印刷しています。私は一般的にPHPとウェブ開発に新しいですし、任意の助けに感謝します!ありがとう。セッションのログイン(PHP)?
PHP:
<?php
SESSION_START();
$servername = "localhost";
$username = "MY USERNAME";
$password = "MY PASSWORD";
$dbname = "MY USERNAME";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$username = $_POST['usernameinput'];
$password= $_POST['passwordinput'];
$_SESSION["loggedin"] = false ;
echo ($username);
echo ($password);
$result = mysqli_query($conn,"SELECT `user-id` FROM `users` WHERE `username` = '" . $username. "' AND `password` = '" . $password. "' ");
if (!$result) {
die(mysqli_error($conn));
}
if(mysqli_num_rows($result) > 0) {
$row = mysqli_fetch_array($result);
return $row['ID'];
$_SESSION["loggedin"] = true;
}
print_r($_SESSION);
$conn->close();
?>
$ row ['ID']を返すのは親切に説明できますか?行う? –
また、なぜ 'return'ですか? –
http://php.net/manual/en/function.return.php * * –