Web4Web.IT - Community Forums
Zend Framework - Versione stampabile

+- Web4Web.IT - Community Forums (https://www.web4web.it/forum)
+-- Forum: Supporto Tecnico (/forum-21.html)
+--- Forum: Programmazione & Design (/forum-23.html)
+---- Forum: PHP (/forum-24.html)
+---- Discussione: Zend Framework (/thread-212.html)

1 2


Zend Framework - C4rLoS - 08-04-2010 20:37

Ciao a tutti,
qualcuno utilizza Zend Framework per sviluppare le proprie applicazioni ?? Avrei dei quesiti da sottoporvi.

Un abbraccio.
Ciao Carlo


RE: Zend Framework - Pirosauro - 08-04-2010 21:16

sottoponi (non lo uso, ma l'ho provato tempo fa) se non sono in grado, magari qualcun'altro lo è Wink


RE: Zend Framework - C4rLoS - 08-04-2010 22:15

Perfetto, grazie!!

allora il quesito è questo!

ho creato il model "categoria" con due function
- getAllCategorie() = Visualizza ttt le categorie.
- getSubCategorie() = Visualizza le sottocategorie associate ad una categoria

Per fare questo ho creato due query:
Codice PHP:
function getAllCategories($db)
    {
        
$result $db->query('SELECT * FROM _category WHERE category_publish = "Y" ORDER BY list_order ASC');
        
$rows $result->fetchAll();
        return 
$rows;        
    }
    
    function 
getAllSubCategory($db)
    {
        
$result $db->query('SELECT cc.* '.
                    
' FROM _category_child AS cc' .
                     
' LEFT JOIN _category_xref AS cx ON cc.category_id = cx.category_child_id' .
                    
' LEFT JOIN _category AS cp ON cx.category_parent_id = cp.category_id' .
                    
' WHERE cp.category_id  = ? '. (int)$catid );                                    
        
$row $result->fetchAll();
        return 
$row
    } 

Fin qui tutto ok, se non fosse per il problema che dovrei passare alla seconda funzione $catid recuperato dalla categoria.

Il controller è cosi strutturato:
Codice PHP:
        $categorie    = new Default_Model_Categorie();            
        
$res    $categorie->getAllCategories($db);            
         
$this->view->categorie $res;

        
$subcategorie    = new Default_Model_Categorie();            
        
$results    $subcategorie->getAllSubCategory($db);            
         
$this->view->subcategorie $results

dovrei fare una cosa del genere
Citazione:$subcategorie->getAllSubCategory($db,$catid);

Ma non capisco come!!
Il tutto viene recuperato nella view prodotti.phtml utilizzando due cicli for:
Codice PHP:
<?php 
                        $i
=0;
                            foreach(
$this->categorie as $categoria) : ?>                    
                        <li><span class="nav<?php echo $this->escape($categoria['category_id']);?>"><?php echo $this->escape($categoria['category_name']);?></span>
                            <ul class="sub">
                                <?php 
                                    $i
=0;
                                        foreach(
$this->subcategorie as $subcategoria) : ?>    
                                    <li><a href="javascript:viewProducts(<?php echo $this->escape($categoria['category_id']);?>,<?php echo $this->escape($subcategoria['category_id']);?>);"><?php echo $this->escape($subcategoria['category_name']);?></a></li>
                                <?php $i++; endforeach; ?>
                            </ul>                        
                        </li>
                    <?php $i++; endforeach; ?>

Sono stato chiaro ???
Se avete bisogno di altre info, io sn qui.

Grazie


RE: Zend Framework - Pirosauro - 09-04-2010 09:56

ovviamente devi modificare il metodo getAllSubCategory per gestire il nuovo argomento
Codice PHP:
function getAllSubCategory($db,$catid
Inoltre la query posta così è sbagliata, togli il punto di domanda se usi il concatenamento con $catid


RE: Zend Framework - C4rLoS - 09-04-2010 20:30

si fino a qui ci sn arrivato Smile
la domanda ora è questa:
come faccio a passargli il parametro $catid dal controller ???

Smile ciao


RE: Zend Framework - Kimi - 11-04-2010 11:52

Premetto che non ho mai usato lo zf, pero ' scusa una volta ottenuto il catid dalla prima funzione, glielo passi quando vai a richiamare il metodo nel controller, ovvero
Codice PHP:
$results    $subcategorie->getAllSubCategory($db$catid); 



RE: Zend Framework - C4rLoS - 28-04-2010 02:19

(11-04-2010 11:52)Kimi Ha scritto:  : https://www.web4web.it/forum/post-1672.html#pid1672Premetto che non ho mai usato lo zf, pero ' scusa una volta ottenuto il catid dalla prima funzione, glielo passi quando vai a richiamare il metodo nel controller, ovvero
Codice PHP:
$results    $subcategorie->getAllSubCategory($db$catid); 

Ciao,
si si siamo daccordo.
Ma come faccio a salvare il valore di catid della prima funzione all'interno del controller ???

io nella view scrivo:
Codice PHP:
<?php echo $this->escape($this->categorry['catid']);?>
se voglio stampare il valore del campo 'catid'; ma per salvare il valore dentro il controller, come debbo fare ??

grazie!


RE: Zend Framework - Pirosauro - 28-04-2010 22:07

hai tutto dentro la variabile $res


RE: Zend Framework - C4rLoS - 30-04-2010 18:47

(28-04-2010 22:07)Pirosauro Ha scritto:  : https://www.web4web.it/forum/post-1910.html#pid1910hai tutto dentro la variabile $res

ecco immaginavo.
ma come faccio a recuperare la colonna che mi interessa ??

$val = $res['colonna']; ????


RE: Zend Framework - Gandalf - 30-04-2010 23:19

Fai un
Codice PHP:
print_r($res
da qualche parte e ti guardi cosa contiene tale variabile.