mysqli bind_result / проблема извлечения - PullRequest
1 голос
/ 03 мая 2010

Я учусь использовать подготовленные операторы с объектами php 5 mysqli, и у меня возникают проблемы с привязкой основного результата к работе.Я следую примеру кода с php.net, но что-то не работает, связанные результаты всегда NULL.Вот что у меня есть

/ * подготовить заявление * /

if ($stmt = $DB->mysqli->prepare("SELECT `alias`,`nameFirst`,`nameLast`,`email`,`access_level` FROM `users` WHERE `alias` LIKE CONCAT('%',?,'%') LIMIT 20;")) {

                   $stmt->bind_param('s',$alias);

                    $stmt->execute();

                    /* bind variables to prepared statement */
                    $stmt->bind_result($col1, $col2);

                    /* fetch values */
                    while ($stmt->fetch()) {
                    echo "COL 1=".$col1." | COL2=".$col2."<br />";
                    }

                    /* close statement */
                    $stmt->close();
                } else echo "NO DICE";

Ответы [ 2 ]

3 голосов
/ 03 мая 2010

Упс, я пропустил заметку прямо на php документы:

Обратите внимание, что все столбцы должны быть связаны после mysqli_stmt_execute() и до звонка mysqli_stmt_fetch().

Нашел ответ здесь:

Подготовленное заявление ничего не возвращает

0 голосов
/ 31 июля 2012

Или вы можете использовать все поля в массиве, например $cols[]. Во время печати вы можете использовать echo $cols[0].$cols[1] и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...