私はちょうどphpで作業を始めました。私は本当にうまくいきません。ユーザのパスワードとユーザ名を確認して、そのユーザとセッションを開始したいユーザーID。しかし、私がuser_idをエコーしようとするたびに、何も戻ってこない。誰かがこれで私を助けることを願っています。私のコードです:パスワード照合でmysqliレコードを受け取ることができません
<?php
require_once "config.php";
$username = $_POST['username'];
$password = $_POST['password'];
$hash = password_hash($password, PASSWORD_DEFAULT);
if (strlen($username) > 0 && strlen($hash) > 0){
$query = "SELECT user_id FROM keep_user WHERE username = '$username' AND password = '$hash'";
$result = mysqli_query($conn , $query);
if($conn->query($query) == TRUE){
if(password_verify($password, $hash)){
session_start();
$_SESSION['user_id'] = $user_id;
echo $user_id;
echo "succes";
}else{
echo "error-1".$conn->error;
}
}else{
echo "error-2".$conn->error;
exit;
}
}else{
echo "error".$conn->error;
exit;
}
?>
エコーは成功しますが、私はその部分は良いと推測していますが、なぜuser_idを取得できないのですか?
それを防ぐために、SQLインジェクションのために開いているあなたの結果配列にすでにuser_idのですか? – TechTreeDev
あなたのサイトがユニバーサルスーパーパスワードの標準である「OR 1 = 1--」をサポートしています。クール! –