получить результаты запроса, используя подготовленные операторы mysqli - PullRequest
0 голосов
/ 17 мая 2018

Я бы хотел получить результаты запроса, используя подготовленные операторы, но ничего не получил.

Проблема в том, что я не могу получить свои результаты. Может кто-нибудь показать пример, как получить результаты запроса, используя подготовленные операторы?

Вот мой код:

    $sql = "SELECT `username` FROM `usrs` WHERE `username` = ? ";
    $statement = $this->conn->prepare($sql);

    if (!statement)
    {
        throw new Exception($statement->error);
    }

    $statement->bind_param("s",$username);
    $statement->execute();
    $statement->bind_result($user);
    while ($statement->fetch()) 
    {
        printf("%s", $user);
    }

1 Ответ

0 голосов
/ 17 мая 2018

Выглядит довольно близко. Я добавил две строки. Одна строка хранит результат, а другая - проверку, чтобы убедиться, что вы получили ответ на запрос. Запустите его и посмотрите, поможет ли это.

$sql = "SELECT `username` FROM `usrs` WHERE `username` = ? ";
  $statement = $this->conn->prepare($sql);

  if (!statement)
  {
      throw new Exception($statement->error);
  }

  $statement->bind_param("s",$username);
  $statement->execute();
  $statement->store_result(); //<-- Added this.
  if($statement->num_rows === 0) exit('No rows');//<--Test to see if you have a result.
  $statement->bind_result($user);
  while ($statement->fetch()) 
  {
      printf("%s", $user);
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...