sql >> データベース >  >> RDS >> Mysql

選択リストにカテゴリ、サブカテゴリ、サブサブカテゴリを表示する方法-php / mysql?

    指定された配列が$arrayにあると仮定すると、これを使用できます。ただし、すでに説明したように、同じ名前のカテゴリを処理し、それらを選択ボックスのオプション値として使用するには、IDを選択する必要があります。

      $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」としてIDがあると仮定すると、これを使用できます。 $ returnのキーの前の「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. 既存のプロジェクトからCakePHPRESTAPIを作成する

    2. MySQL 5.0のintとintegerの違いは何ですか?

    3. LithiumでのMySQL関数の呼び出し

    4. MYSQLwhere句の条件付き