MySQLi Подготовленный запрос запроса Проблема - PullRequest
1 голос
/ 19 мая 2010

Я относительно новичок в подготовленных MySQLi инструкциях и столкнулся с ошибкой. Возьми этот код:

$user = 'admin';
$pass = 'admin';

if ($stmt = $mysqli->query("SELECT * FROM members WHERE username='$user' AND     password='$pass'"))
{
echo $stmt->num_rows;
}

Появится «1», как и должно быть.

Этот следующий фрагмент кода возвращает «0»:

$user = 'admin';
$pass = 'admin';

if ($stmt = $mysqli->prepare("SELECT * FROM members WHERE username=? AND password=?"))
{
$stmt->bind_param("ss", $user, $pass);
$stmt->execute();
echo $stmt->num_rows;
}

Есть идеи, почему?

1 Ответ

1 голос
/ 19 мая 2010

вам нужно позвонить store_result(), прежде чем вы получите количество строк

<code>
$user = 'admin';
$pass = 'admin';</p>

<p>if ($stmt = $mysqli->prepare("SELECT * FROM members WHERE username=? AND password=?"))
{
$stmt->bind_param("ss", $user, $pass);
$stmt->execute();
$stmt->store_result();  // add this line
echo $stmt->num_rows;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...