私はこのクエリを持っています
SELECT c1.Id, c1.Name as parent , c2.name as child
FROM categories c1
JOIN categories c2 ON c1.id = c2.parentid
親への私の出力が次のようにモメットしている理由を教えてください:
parent1 parent2 parent3 parent1
これは完全なコードです:
<div id="categories" class="s_nav">
<ul>
<li id="menu_home"> <a href="/">Home</a> </li>
<?
$query = "SELECT c1.Id, c1.Name as parent , c2.name as child
FROM categories c1
JOIN categories c2 ON c1.id = c2.parentid";
$result = mysql_query($query);
$parent = '';
while ($next = @mysql_fetch_array($result)) {
if ($next['parent'] != $parent) {
if (strlen($parent) > 0) {
echo " </ul></div></li>";
}
echo " <li><a href='#'>" . $next['parent']."</a>";
echo " <div class='s_submenu'><h3>".$next['parent']."</h3>
<ul class='s_list_1 clearfix'>";
}
echo ' <li> <a href="'. $next['child'].'.htm">' . $next['child'] . '</a></li>';
$parent = $next['parent'];
}
echo " </ul>";
echo " </li>";
?>
</ul>
</div>
これは、サブカテゴリの最初の文字が文字「A」である場合にのみ発生します