Как получить массив из mysqli_fetch_assoc? - PullRequest
0 голосов
/ 12 мая 2011

Мой метод возвращает массив ответов от mysqli_fetch_assoc. Я пытаюсь извлечь ответ по индексу. Результат не соответствует ожиданиям. Я получил бы те же ответы (должно быть три ответа).

Метод:

function getAnswers($id_question)
{
    $sql = 'SELECT * FROM answers WHERE question_id = '. $id_question;

    $this->db->query($sql);
    while ($answers = $this->db->fetchAssoc())
    {
        return $answers;
    }
}

использование:

<code>$answers = getAnswers(1);
foreach($answers as $a)
{
    echo $a['answer'];
}
echo '<pre>';
print_r($answers);
echo '
';

из

11a1
Array
(
    [id_answer] => 1
    [question_id] => 1
    [answer] => answer 1
    [truth] => 1
)

1 Ответ

1 голос
/ 12 мая 2011

Вы возвращаете только первый набор.Вам нужно будет упаковать данные в массив, а затем вернуть массив:

function getAnswers($id_question)
{
    $sql = 'SELECT * FROM answers WHERE question_id = '. $id_question;

    $this->db->query($sql);
    $data = array();
    while ($answers = $this->db->fetchAssoc())
    {
        $data[] = $answers;
    }

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