2011-06-09 26 views
-4

好吧,現在我試圖讓一個列表使用while循環從mysql回顯出來,但正如你在這裏可以看到http://institute4se.com/plan/它的回顯順序錯誤。爲什麼?PHP MYSQL循環與if語句回顯錯誤的順序

if語句的原因是僅當循環到達新子節的開始時才使div的頂部和底部部分回顯。

如果我刪除if語句,該列表會按順序回顯,但是div的開頭和結尾都回顯每個循環。

你可以在這裏看到我的數據庫又名$信息:http://i.stack.imgur.com/QMO2X.png http://i.stack.imgur.com/RsHdb.png

就如何解決它有什麼想法?

while($info = mysql_fetch_array($data)) 
{ 

if($info['subsection']=='0'){ 
echo " 
<div class='menuSection'> 
<div class='sectionHeader' id='header".$info['section']."'><img src='images/status_circ_empty.gif' alt='Section Empty' /><a href='index.php?s=".$info['section']."&ss=".$info['subsection']."'>".$titleArr[$info['section']]."</a><img src='images/arrow_".$currentArrow.".gif' alt='Arrow' class='arrow' /></div> 
    <ul class='sectionSubmenu' id='section".$info['section']."' style='display:".$currentSection."'> 
"; 
} 
else{ 
echo "<li><img src='images/status_circ_empty.gif' alt='Section Empty' /><a href='index.php?s=".$info['section']."&ss=".$info['subsection']."'>".$info['title']."</a></li>"; 
} 
if($info['subsection']=='0'){ 
echo" 
    </ul> 
</div> 
"; 
} 
} 
+0

是不是隻是,你有從其他行中,如果主要比特的複製?編輯:看起來你已經從你的問題中刪除了那段代碼,所以我猜測不是這樣! – Ben 2011-06-09 14:31:08

+2

我不知道你在問什麼。 – 2011-06-09 14:31:53

+0

你正在運行的底層查詢是什麼? PHP中沒有任何內容會重新排序結果,除非您將代碼結構化,以使其變得不可靠。所以...可能你的查詢排序錯誤。如果您按部分ID號而不是部分名進行排序,則無疑會得到「不良」訂購。 – 2011-06-09 14:42:13

回答

0

這是任何固定的代碼是誰感興趣:

while($info = mysql_fetch_array($data)) 
{ 

    // if the current subsection is a new section 
    if($info['subsection']==0){ 
    // if the current section is NOT the first section 
    if($info['section']!=0){ 
    // end the section div 
    echo " 
      </ul> 
    </div> 
    "; 
    } 

    // start the section div and add the section header 
    echo " 
    <div class='menuSection'> 
    <div class='sectionHeader' id='header".$info['section']."'><img src='images/status_circ_empty.gif' alt='Section Empty' /><a href='index.php?s=".$info['section']."&ss=".$info['subsection']."'>".$titleArr[$info['section']]."</a><img src='images/arrow_".$currentArrow.".gif' alt='Arrow' class='arrow' /></div> 
     <ul class='sectionSubmenu' id='section".$info['section']."' style='display:".$currentSection."'> 
     <li><img src='images/status_circ_empty.gif' alt='Section Empty' /><a href='index.php?s=".$info['section']."&ss=".$info['subsection']."'>".$info['title']."</a></li> 

    "; 

    } 
    // if the current section is not a new section 
    else{ 
     // add the next submenu item 
     echo "<li><img src='images/status_circ_empty.gif' alt='Section Empty' /><a href='index.php?s=".$info['section']."&ss=".$info['subsection']."'>".$info['title']."</a></li>"; 
    } 
} 
echo" 
    </ul> 
</div> 
"; 
0

您需要訂購記錄,請將ORDER BY subsection ASC添加到查詢中。