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

चुनिंदा सूची में श्रेणियों, उपश्रेणियों, उप-श्रेणियों को कैसे प्रदर्शित करें - php/mysql?

मान लें कि आपका दिया गया सरणी $ array में है, आप इसका उपयोग कर सकते हैं। लेकिन जैसा कि मैंने आपको पहले ही बताया था कि आपको समान नाम वाली श्रेणियों को संभालने के लिए आईडी का चयन करना चाहिए और उन्हें अपने चयन बॉक्स में विकल्प मान के रूप में उपयोग करना चाहिए:

  $options = get_options($array);
  echo "<select>";
  foreach($options as $val) {
    echo "<option>".$val."</option>";
  }
  echo "</select>";

  function get_options($array, $parent="", $indent="") {
    $return = array();
    foreach($array as $key => $val) {
      if($val["parent category"] == $parent) {
        $return[] = $indent.$val["category name"];
        $return = array_merge($return, get_options($array, $val["category name"], $indent."&nbsp;&nbsp;&nbsp;"));
      }
    }
    return $return;
  }

यह मानते हुए कि अब आपके पास "category_id" और "parent_category_id" के रूप में आपके सरणी में आईडी हैं, आप इसका उपयोग कर सकते हैं। $रिटर्न में कुंजी से पहले का "x" केवल इस बात से बचने के लिए है कि PHP आपकी कुंजियों को बदल देता है, क्योंकि वे संख्यात्मक हैं।

  $options = get_options($array);
  echo "<select>";
  foreach($options as $key => $val) {
    echo "<option value='".substr($key,1)."'>".$val."</option>";
  }
  echo "</select>";

  function get_options($array, $parent=0, $indent="") {
    $return = array();
    foreach($array as $key => $val) {
      if($val["parent_category_id"] == $parent) {
        $return["x".$val["category_id"]] = $indent.$val["category name"];
        $return = array_merge($return, get_options($array, $val["category_id"], $indent."&nbsp;&nbsp;&nbsp;"));
      }
    }
    return $return;
  }


  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_last_id के साथ दौड़ की स्थिति ()

  2. DATETIME कॉलम जोड़ने के लिए ऑल्टर टेबल सिंटैक्स कैसा दिखता है?

  3. क्या एक MySQL क्वेरी पंक्तियों को कॉलम में बदल सकती है?

  4. टॉमकैट JDBC Conencton पूल + MySQL कनेक्शन सत्यापन के साथ भी टूटी हुई पाइप समस्याओं को देता है

  5. क्या उपनाम पर होने के बीच कोई प्रदर्शन अंतर है, बनाम हैविंग का उपयोग नहीं कर रहा है