Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

अधिक कुशल पदानुक्रम प्रणाली

मुझे लगता है कि इन पंक्तियों के साथ कुछ करना चाहिए (अवांछित, आपकी आवश्यकताओं के अनुकूल होना चाहिए):

$q = mysql_query("SELECT id, parent_id, name FROM categories");
while ($r = mysql_fetch_row($q)) {
  $names[$r[0]] = $r[2];
  $children[$r[0]][] = $r[1];
}

function render_select($root=0, $level=-1) {
  global $names, $children;
  if ($root != 0)
    echo '<option>' . strrep(' ', $level) . $names[$root] . '</option>';
  foreach ($children[$root] as $child)
    render_select($child, $level+1);
}

echo '<select>';
render_select();
echo '</select>';

ऐसा करने का एक और भी मजेदार तरीका SQL संग्रहीत कार्यविधियों का उपयोग करना है, लेकिन इस मामले में यह बहुत अधिक हो सकता है...



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL में D.O.B फ़ील्ड से आयु कैसे प्राप्त करें?

  2. MySQL:फुल आउटर जॉइन - मैं एक कॉलम को कैसे मर्ज कर सकता हूं?

  3. क्लाउड में वर्डप्रेस MySQL डेटाबेस कैसे सेटअप करें

  4. MySQL C API और C++ का उपयोग करके एक MySQL डेटाबेस तालिका में पंक्तियों को ला रहा है

  5. इंटरफ़ेस त्रुटि (0, '')