0

データを含むテーブルがあります mobile(id, name, size)

(1, "Asha 301", "240 x 400");
(2, "Asha 302", "480 x 800");
(3, "Asha 303", "240 x 400");
(4, "Asha 304", "480 x 800");
(5, "Asha 305", "240 x 400");
(6, "Asha 306", "240 x 400");
<?php
    $query = "SELECT id, name, size
              FROM `mobile`
              GROUP BY size Order by display_size ";
    $results = mysql_fetch_array($query);
   foreach ($results as $result) {
        ?>
        <li>
           <?php echo $result['size']; ?>
           <ul>
               <li><?php echo $result['name']; ?></li>
           </ul>
        </li>
<?php
}
?>

結果は次のとおりです。

240 x 400
   Asha 301
400 x 800
   Asha 302

結果は1行しか取得できません。すべての行を取得する方法は?

240 x 400
   Asha 301
   Asha 303
   Asha 305
   Asha 306
400 x 800
   Asha 302
   Asha 304

それを修正する方法?

4

2 に答える 2

1
 $query = "SELECT `id`, `name`, `size` FROM `mobile` Order by `size` ";
 $results = mysql_query($query);
 while ($result=mysql_fetch_array($results)) {
  ?>
    <li>
       <?php echo $result['size']; ?>
       <ul>
           <li><?php echo $result['name']; ?></li>
       </ul>
    </li>
于 2012-06-13T05:01:44.797 に答える
1

mysql_fetch_objectオブジェクトを返すため、foreach で反復しても何も起こりません。

代わりにmysql_fetch_array、結果の配列を返すを使用する必要があります。

于 2012-06-13T04:01:06.570 に答える