2015-01-12 2 views
3

У меня проблема с PHP и mysqli, так как я не очень хорошо знаком с языком кодирования. У меня есть эта проблема: когда я пытаюсь заполнить массив из строки 1-8, я получаю только один возврат, когда i do print_r $items Результат 8. Не от 1 до 8. Может кто-нибудь мне помочь?Проблема с печатью массива mysqli PHP

Код

$gebruiker = $_SESSION['user']; 

$query = "select `item_id` from inventory where `gebruiker_id` = ?"; 
    $stmt = $db->prepare($query); 
    $stmt-> bind_param('i', $gebruiker->id); 
    $stmt->execute(); 
    $stmt->bind_result($item_id); 
    $items = array(); 
    while ($stmt->fetch()) { 
     $items['item_id'] = $item_id; 
    } 

Inventory Таблица

gebruiker_id | item_id 
__________________________ 
    1  |  1 
    1  |  2 
    1  |  3 
    1  |  4 
    1  |  5 
    1  |  6 
    1  |  7 
    1  |  8 

ответ

4

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

$items[] = array('item_id' => $item_id); 
+0

Еще только возвращает 8. –

+0

Редактировать: nevermind – STLMikey

+0

Спасибо за помощь! Хотя gebruiker_id является пользователем, поэтому он должен извлекать значения для текущего зарегистрированного пользователя, а значения различаются для каждого пользователя, у этого пользователя есть 8 элементов, а у другого пользователя 6 элементов, поэтому BETWEEN не будет работать. когда я пытаюсь запустить запрос в PHPmyAdmin, он возвращает 8 строк. –

4

Вы держите перезапись значение $item['item_id'] в цикле. То, что вы, вероятно, ищете:

$items[] = $item_id; 

Это будет захватывать все идентификаторы элементов в массиве.

+0

Не дает мне возвратишься ... EDIT: она, но все это возвращает только 8 –

+0

I Интересно, начал ли ФП сеанс или нет, и если он имеет какое-либо отношение к проблеме. –

+0

@ Fred-ii- Так как они получают одну строку, я предполагаю, что их запрос успешно завершен. –

Смежные вопросы