Проблема с оператором Mysqli SELECT, который ничего не возвращает - PullRequest
1 голос
/ 22 февраля 2010

Я уверен, что у кого-то вообще не будет времени.

Я знаю, что MySqli работает на этом сервере, так как я пробовал вставки, и они работают нормально.

Я также знаю, что информация, которую я пытаюсь получить, находится в базе данных, и я могу без проблем подключиться к базе данных. Но я не могу понять, почему это не работает. Я пробовал и OO и процедурный, но ни один из них не работает. Может кто-нибудь сказать мне, что я должен делать? Спасибо

$table = 'newcms_broadcasting';

$sql = "SELECT first_info1 FROM $table WHERE region_id = ?";

echo $sql;

//echo $sql;


$region = '1';

$stmt = mysqli_prepare($connection, $sql);

    mysqli_stmt_bind_param("s", $region);
    mysqli_execute();
    mysqli_bind_result($result);

    echo 'blah';

    // display the results
    mysqli_fetch($stmt);

    echo "name: $result";

    // clean up your mess!
    mysqli_close($stmt);

Ответы [ 2 ]

1 голос
/ 22 февраля 2010

При использовании процедурного стиля вы должны передать $ stmt в mysqli_stmt_bind_param, mysqli_stmt_execute, mysqli_bind_result и т. Д.

mysqli_stmt_bind_param($stmt, "s", $region);
mysqli_stmt_execute($stmt);
mysqli_bind_result($stmt, $result);
while (mysqli_stmt_fetch($stmt)) {
    print_r($result);
}
1 голос
/ 22 февраля 2010

вы забыли включить скомпилированный оператор в результаты привязки:

mysqli_stmt_bind_result($stmt, $result);

также обратите внимание, что mysqli_fetch устарело, вы пытались использовать классическую выборку while?

while (mysqli_stmt_fetch($stmt)) {
    print_r($result);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...