Ankündigung

Einklappen
Keine Ankündigung bisher.

Function in Dropdown Feld einbinden

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Function in Dropdown Feld einbinden

    Hi
    ich habe folgende funktion:
    Code:
      $rs = mysql_query("SELECT * FROM dlo_navi_kat where Id=4");
    while($row = mysql_fetch_array($rs)) { 
        echo $row['Name']."
    ";
       makeNav($row['Id'], 1);
    }
    
    
    function makeNav($parent_id, $level) {
    
     $sql = "SELECT * from dlo_navi_kat WHERE parent_id=$parent_id";
     $rs = mysql_query($sql);
     while($row = mysql_fetch_array($rs))
      {
         echo $row['Name']. "
    ";
         makeNav($row['Id'], $level+1);
    }
    
    }
    
    makeNav(0,0);
    in dieser funktion lasse ich ein baum menü ausgeben
    Ich möchte diese Links jedoch in einem dropdown menü anzeigen lassen, damit ich es im formular hab um es besser administrieren lassen zu können, jedoch klappt es leider nicht
    bei mir entstehen ganz viel drop down menüs und nicht ein wo alle drinen sind. wo liegt mein fehler?
    hier der code:
    Code:
      $rs = mysql_query("SELECT * FROM dlo_navi_kat where Id=4");
    while($row = mysql_fetch_array($rs)) {
        echo $row['Name']."
    ";
       makeNav($row['Id'], 1);
    }
    
    
    function makeNav($parent_id, $level) {
    echo "<form method=\"POST\" action=\"$PHP_SELF\">";
    echo "
    
    <select size=\"15\" name=\"D1\">";
     $sql = "SELECT * from dlo_navi_kat WHERE parent_id=$parent_id";
     $rs = mysql_query($sql);
     while($row = mysql_fetch_array($rs))
      {
    
         echo "<option value=".$row['Name']." >" .$row['Name']. "</option>";
         makeNav($row['Id'], $level+1);
    }
    echo "<option>2</option>";
    echo "<option>2</option>";
    echo "</select>";
    echo "</p>";
    echo "
    
    <input type=\"submit\" value=\"Abschicken\" name=\"B1\"></p>";
    echo "
    
    </p>";
    echo "
    
    <input type=\"reset\" value=\"Zurücksetzen\" name=\"B2\"></p>";
    echo "</form>";
    }
    
    makeNav(0,0);

  • #2
    na du rufst die funktion makeNav ja auch mehrfach auf.

    hier noch ein alternatives beispiel eine SELECT-Liste zu füllen.

    Wie fülle ich eine SELECT-Liste mit Werten aus einer MySQL-Datenbanktabelle?
    http://php-info.org/viewtopic.php?t=27
    [b][url=http://www.benjamin-klaile.de]privater Blog[/url][/b]

    Kommentar


    • #3
      Zitat von Ben
      na du rufst die funktion makeNav ja auch mehrfach auf.

      hier noch ein alternatives beispiel eine SELECT-Liste zu füllen.

      Wie fülle ich eine SELECT-Liste mit Werten aus einer MySQL-Datenbanktabelle?
      http://php-info.org/viewtopic.php?t=27
      danke werde es mir mal durchlesen
      bei probs melde ich mich nochmal

      Kommentar


      • #4
        ok das habe ich glaube ich verstanden nur wie binde ich meine funktion in die 'select-function' ein.

        so?:

        Code:
           function buildSelect( $_selectConfig, $_data )
           {
                $selectHTML = '<select name="' . $_selectConfig['name'] . '" size="' . $_selectConfig['size'] . '">';
                $selectHTML .= "\n";
        
                for ( $i = 0; $i < count($_data); $i++ )
                {
                     $selected = ( strcmp($_selectConfig['selected'], $_data[$i]->name) == 0 ) ? 'selected' : '';
        
                     $selectHTML .= '<option ' . $selected . ' value="' . $_data[$i]->id . '">' . $_data[$i]->name . '</option>';
                     $selectHTML .= "\n";
                }
        
                $selectHTML .= '</select>';
        
                return $selectHTML;
           }
        
          $rs = mysql_query("SELECT * FROM dlo_navi_kat where Id=4"); 
        while($row = mysql_fetch_array($rs)) { 
            echo $row['Name']."
        "; 
           makeNav($row['Id'], 1); 
        } 
        
        
        function makeNav($parent_id, $level) { 
           $_data = array();
        
         $sql = "SELECT * from dlo_navi_kat WHERE parent_id=$parent_id"; 
         $rs = mysql_query($sql); 
         while($data= mysql_fetch_array($rs)) 
          { 
           array_pop($_data);
        
           $_selectConfig = array( 'name' => 'selectDemoListe',
                                                 'size' => 1,
                                                 'selected' => Ben );
        
           echo buildSelect( $_selectConfig, $_data )
        
             makeNav($row['Id'], $level+1); 
        } 
        
        } 
        
        makeNav(0,0);
        kann das so hinkommen?

        Kommentar


        • #5
          hm hier antwortet aber keine @ben

          Kommentar


          • #6
            up!
            brauch immernoch hilfe dabei

            Kommentar

            Lädt...
            X