Невозможно связать имя пользователя и адрес электронной почты с базой данных - PullRequest
0 голосов
/ 22 октября 2019

Я создаю веб-сайт для входа в систему и пытаюсь подключиться к своей базе данных, чтобы убедиться, что пользователь правильно ввел свой адрес электронной почты / имя пользователя и пароль, однако ни имя пользователя, ни адрес электронной почты не найдены в моей базе данных.

В строке 24 мне пришлось перейти от $result = $mysqli_stmt_get_result($stmt); к $result = $db-> query($stmt);

<?php
if(isset($_POST['login-submit'])){

  require 'db_connect.php';

  $mailuserid = $_POST['mailuid'];
  $password = $_POST['pwd'];

  if(empty($mailuserid) || empty($password)){
    header("Location: ../index.php?error=emptyfields");
    exit();
  }
  else{
    $sql= "SELECT * FROM users WHERE userid=? OR email=?;";
    $stmt = mysqli_stmt_init($db);
    if(!mysqli_stmt_prepare($stmt, $sql)){
      header("Location: ../index.php?error=error");
      exit();
    }
    else{

      mysqli_stmt_bind_param($stmt, "ss", $mailuid, $mailuid);
      mysqli_stmt_execute($stmt);
      $result = $db-> query($stmt);
      if($row = mysqli_fetch_assoc($result)){
        $passwordCheck = password_verify($password, $row['pwd']);
        if($passwordCheck == false){
          header("Location: ../index.php?error=wrongpwd");
          exit();
        }
        elseif($passwordCheck == true){
          session_start();
          $_SESSION['userid']= $row['id'];
          $_SESSION['userUid']= $row['userid'];

          header("Location: ../index.php?login=success");
          exit();
        }
        else{
          header("Location: ../index.php?error=wrongpwd");
          exit();
        }
      }
      else{
        header("Location: ../index.php?error=nouser");
        exit();
      }

    }
  }


}
else{
  header("Location: ../index.php");
  exit();
}
 ?>

У меня такое ощущение, что ошибка где-то здесь лежит:

      mysqli_stmt_bind_param($stmt, "ss", $mailuid, $mailuid);
      mysqli_stmt_execute($stmt);
      $result = $db-> query($stmt);
      if($row = mysqli_fetch_assoc($result))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...