-2

重複の可能性:
列が繰り返される PHP でテーブルを表示する

特定の構造化された方法でいくつかの MySQL データを表示したいと考えています。たとえば、MySQL データベースにこのデータがあるとします。

id         sections                 items
1          Section A                Item 1
1          Section A                Item 2
1          Section A                Item 3
1          Section A                Item 4
1          Section B                Item 5
1          Section B                Item 6
1          Section C                Item 7
1          Section C                Item 8
1          Section A                Item 9
1          Section D                Item 10
1          Section D                Item 11

PHP で次のように表示するにはどうすればよいですか。

SECTION A
---------

Item 1
Item 2
Item 3
Item 4
Item 9


SECTION B
---------

Item 5
Item 6


SECTION C
---------

Item 7
Item 8

SECTION D
---------

Item 10
Item 11
4

2 に答える 2

2
$sql = mysql_query("SELECT sections, items 
                    FROM my_table 
                    ORDER BY sections");
$lastSection = '';
while($row = mysql_fetch_array($sql)) {
   if($lastSection != $row['sections'])
       echo $row['sections'] . '<br />';
   echo $row['items'] . '<br />';
   $lastSection = $row['sections'];
}
于 2012-10-28T17:04:38.677 に答える
0

「セクション」順に並べられたDBからすべてのデータを取得し、プレーン配列から表示してみてください。

<? $currentSection = null; ?>
<? foreach ($data as $row): ?>
  <? if ($row['section'] != $currentSection): ?>
    <? $currentSection = $row['section']; ?>
    <h1><?=$row['section']?></h1>
  <? endif; ?>
  <div><?=$row['item']?></div>
<? endforeach; ?>
于 2012-10-28T17:04:18.557 に答える