केवल आउटपुट catname
जब यह बदलता है। आपको अपनी क्वेरी को पहले category_name के आधार पर भी ऑर्डर करना होगा।
$row = mysql_fetch_array($result);
$catname = $row["category_name"];
$subcatname = $row["subcategory_name"];
$last = $catname;
echo "<li>$catname</li><ul>"
while($row = mysql_fetch_array($result)) {
$catname = $row["category_name"];
$subcatname = $row["subcategory_name"];
if($last != $catname){
echo "</ul><li>$catname</li><ul>"
}
echo "<li>$subcatname</li>";
$last = $catname;
}
echo "</ul>";
संपादित करें:बस प्रश्न को पूरी तरह से दोबारा पढ़ें और कहना चाहते हैं कि जब पदानुक्रमित पेड़ों की बात आती है, तो माता-पिता/बच्चे (या श्रेणी/उप/उप-उप) का उपयोग करना सबसे अच्छा तरीका नहीं है। हालांकि यह काम करता है, इसे आमतौर पर प्रदर्शन के लिए कई प्रश्नों और पुनरावर्ती कार्यों की आवश्यकता होती है। नेस्टेड सेट का उपयोग करना एक बेहतर तरीका है जो ठीक इसी उद्देश्य के लिए बनाया गया है।