Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    ZFW / PHP e Gestione Alberi

    Ciao a tutti
    Sto procedendo a piccoli passi con zend framework...moooolto piccoli per il momento...

    Io avevo pensato ad una tabella del database del genere:

    id - parent - title - path - description

    e qualche altra colonna...
    parent rappresenta l'id del nodo padre.
    Ora avevo iniziato a creare un modello per gestire le categorie...ed ovviamente qui casca l'asino...

    Codice PHP:
    public function GetFathers()
    {
        return 
    $this->_db->fetchAll('select * from '.$this->_name.' where parent = 0 order by title asc');
    }
    static public function 
    GetSons($idParent)
    {
        
    $conn Zend_Registry::get('db');
        return 
    $conn->fetchAll('select * from categories where parent = '.$idParent.' order by title asc');

    La view che ho usato come test:
    Codice PHP:
    <div id="categorie">
        <h1>Categorie</h1>



    <?php
    //var_dump($this->categories);
    foreach($this->categories as $cat):
        echo 
    $this->escape($cat['title']);
        
    $son application_models_Categoria::GetSons($cat['id']);
    ?>
        

    <?php
    if(count($son))
        foreach(
    $son as $figlio):
            echo 
    '|___'.$figlio['title'].'
    '
    ;
            
    //print_r($son);
        
    endforeach;
        
    ?>
        


    <?php
    endforeach;
    ?>
    La funziona GetFathers() la chiamavo dal controller index...
    mentre la prendi figlio direttamente dalla view...
    Ho detto qui casca l'asino perchè cosi funziona ma funziona su un solo livello, io vorrei ottenere un qualcosa di indipendente dai livello per ottenere una stampa di qualcosa del genere (solita roba quando si parla di alberi penso)

    cat1
    |___cat3
    |___cat4
    |___cat7
    cat2
    cat5
    |___cat6

    Chi mi può aiutare a ragionarci su per trovare il modo migliore di ottenere questa cosa con il minimo consumo di energie?? Questo perchè ho letto che la ricorsività sfrutta un sacco di risorse...ma ad ogni modo andrebbe bene lo stesso. Esiste se no modo di aiutarsi anche con delle query particolarmente articolate?? o boh...
    Spero qualcuno possa aiutarmi.... :master:

  2. #2

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.