Я проработал этот код почти неделю и, похоже, не могу отделаться от него. Я извлекаю строки из базы данных, которая выглядит так:
id | счет | содержание | тип | количество
1 23494 E 38 10
2 23494 E 13 5
3 23494 F 38 7
4 23494 E 6 2
Мое заявление выглядит так:
// Make the query: $qu = "SELECT * FROM log WHERE account='".$account."' ORDER BY timelog DESC $pages->limit"; $re = @mysqli_query ($dbc, $qu); // Run the query. $roarr = array(); while ($row = mysqli_fetch_array($re, MYSQLI_ASSOC)) { $roarr[$row['account']][$row['content']][$row['type']] = $row['quantity']; } // End of WHILE loop. //print_r($roarr); echo' <tr> </tr> <tr> <td align="left"><b>Account</b></td> <td align="left"><b>6Kg(E)</b></td> <td align="left"><b>13Kg(E)</b></td> <td align="left"><b>38Kg(E)</b></td> <td align="left"><b>6Kg(F)</b></td> <td align="left"><b>13Kg(F)</b></td> <td align="left"><b>38Kg(F)</b></td> <td align="left"><b>Date Created</b></td> </tr> '; $dataarr = array(); foreach($roarr as $account => $dataarr) { $bg = ($bg=='#eeeeee' ? '#ffffff' : '#eeeeee'); echo ' <tr bgcolor="' . $bg . '"> <td align="left">'. $account .'</td> '; foreach($dataarr as $content => $data) { if($content == "E") { echo '<td align="left">', (isset($data['6']) ? $data['6'] : ' '), '</td>'; echo '<td align="left">', (isset($data['13']) ? $data['13'] : ' '), '</td>'; echo '<td align="left">', (isset($data['38']) ? $data['38'] : ' '), '</td>'; } // Then I GET STUCK on the Else Part! HOW Do I display $content == "F" data on the right hand side? } //End Foreach } //End Foreach
Вот как я собираюсь показывать свои результаты:
Аккаунт | 6KG (E) | 13KG (E) | 38KG (E) | 6KG (F) | 13KG (F) | 38KG (F) | Дата
23494 5 10 2 7
, но я так застрял.
Вопрос: Как я могу упорядочить результаты, полученные в таком формате?
EDIT: я изменил базу данных, чтобы больше сосредоточиться на проблеме: поскольку запрос извлекается для каждой учетной записи, есть только одна учетная запись с строками, показанная в приведенной выше базе данных.
Это массив, созданный $ roarr:
Массив ([23494] => Массив ([F] => Массив ([6] => 2 [38] => 7) [E] => Массив ([38] => 10 [13] => 5)) )
Заранее спасибо