2016-04-22 5 views
0

У меня есть несколько столбцов, которые я хочу превратить в таблицу со значением в качестве строки, к которой она относится. ПРИМЕР:Пока цикл foreach возвращает случайный список чисел

В моей таблице у меня есть 4 столбца с именем column1 column2 column3 column4. Эти столбцы имеют только одну строку, которая будет найдена. Такие, как SELECT column1, column2, column3, column4 FROM operations WHERE active = '1'
Строка находит выглядит примерно так (с колоннами)

column1 | column2 | column3 | column4 
_____________________________________ 
3456 | 265  | 795  | 425 

Я хочу, чтобы отобразить таблицу, которая выглядит как:

column1 | 3456 
column2 | 265 
column3 | 795 
column4 | 425 

Следующий скрипт работает, но также отображает случайный список чисел, которые, как мне кажется, связаны с столбцами.

function oreAmount() { 
     $sql = mysqli_query($this->con, "SELECT `column1`,`column2`,`column3`,`column4` FROM operations WHERE active = '1'"); 
     while ($row = mysqli_fetch_array($sql)) { 
      $rows[] = $row; 
      foreach ($row as $key => $var) { 
       echo "<tr><td>$key</td><td>$var</td></tr>"; 
      } 
     } 
    } 

Эта функция будет выглядеть следующим образом:

0  | 3456 
column1 | 3456 
1  | 265 
column2 | 265 
2  | 795 
column3 | 795 
3  | 425 
column4 | 425 

Я не уверен, почему и где номера идут от и мне нужно их удалить.

+1

использование 'mysqli_fetch_assoc' – urfusion

+0

Используйте' foreach' петлю за пределами 'while' цикла, вы получите Dubble результат, как это. – Alex

ответ

0

Вы должны использовать mysqli_fetch_assoc вместо mysqli_fetch_array.

Объяснение

mysqli_fetch_array всегда возвращают результат с двумя рода индексации.

  1. MYSQLI_NUM (индексирование в цифровом клавише)
  2. MYSQLI_ASSOC (индексация в ассоциированных именах)

Так как передача пары, какой вид индексации вы хотите получить результаты, как

mysqli_fetch_array($result,MYSQLI_ASSOC).

или простое использование

mysqli_fetch_assoc

+0

Принимается как ответ, потому что он был самым подробным. Спасибо, он дал мне полное представление о том, какие индексы 'mysqli_fetch_array' – spencdev

+0

Рад это узнать. Благодаря :) – urfusion

1

Использование mysqli_fetch_assoc вместо mysqli_fetch_array

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

Full description here

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