Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. puccio.me
    3. Post
    P

    puccio.me

    @puccio.me

    • Profilo
    • Chi segue 0
    • Da chi è seguito 0
    • Discussioni 0
    • Post 1
    • Migliore 0
    • Gruppi 0
    Iscrizione Ultimo Accesso
    Località Mondaino Età 34
    0
    Reputazione
    1
    Post
    0
    Visite al profilo
    0
    Da chi è seguito
    0
    Chi segue
    User Newbie

    Post creati da puccio.me

    • RE: Menù ad albero con database

      Per rendere il codice dinamico basta semplicemente modificare la prima risposta di amadeusorrento:

      function startmenu(menuId){
         document.getElementById(menuId).style.display = "none";
      }
      
      
      function menufunc(menuId)
      {
         if(document.getElementById(menuId).style.display == "none")
         {
             startmenu(menuId);
             document.getElementById(menuId).style.display = "block";
             
         }
         else if(document.getElementById(menuId).style.display == "block")
         {
             startmenu(menuId);
             document.getElementById(menuId).style.display = "none";
             
         } else 
         {
             startmenu(menuId);
         }
      }
      

      La parte di PHP (procedurale) copio il mio codice che ho riadattao alla mia tabella.

      Io ho un'unica tabella contenente sia i padri che i figli ovvero :[TABLE="width: 100"]

      [TD]padre1[/TD]
      [TD]figlio1[/TD]
      [/TR]

      [TD]padre1[/TD]
      [TD]figlio2[/TD]
      [/TR]

      [TD]padre1[/TD]
      [TD]figlio3[/TD]
      [/TR]

      [TD]padre2[/TD]
      [TD]figlio4[/TD]
      [/TR]

      [TD]padre2[/TD]
      [TD]figlio5[/TD]
      [/TR]

      [TD]...[/TD]
      [TD]...[/TD]
      [/TR]

      [TD]padreN[/TD]
      [TD]FiglioN[/TD]
      [/TR]
      [/TABLE]

      In caso diverso basta solo cambiare la prima query
      La funzione $connect effettua la connessione al mio database
      [PHP]
      $query = "SELECT DISTINCT padre FROM figlio order by padre";
      $connection = connect($query);
      $risultato = mysql_query($query);
      while ($campi=mysql_fetch_array($risultato))
      {
      $campo[]=$campi;
      }
      foreach($campo as $key=>$row)
      {
      $nome = $row['padre'];
      echo "<a href="javascript:menufunc('menu".$key."')"><b>$nome</b></a><br>";
      echo "<div id='menu".$key."' style="display: none;">";
      $query = "SELECT Figlio FROM tabella WHERE Padre='".$row['Padre']."' group by Figlio ";
      $connection = connect($query);
      $risultato = mysql_query($query);
      while($campo2 = mysql_fetch_array($risultato))
      {
      $nome_aux = $campo2['Figlio'];
      echo "<p style="margin-left: 40px; margin-right: 40px;">$nome_aux</p>";
      }
      echo "</div>";
      }
      [/PHP]
      la parte qui di seguito evidenziata
      *echo "<div id='menu".$key."' style="display: none;">"; *
      serve per visualizzare i padri tutti chiusi, se invece si vuole visualizzare la lista dei padri tutti aperti basta modificarlo in style="display: block;".

      Spero di essere stata più chiara possibile.

      postato in Coding
      P
      puccio.me