paginazione

Ciao Gianni,

sto realizzando un catalogo molto semplice, nel modello ho una funzione per estrarre gli annunci :

    public function getAnnounces($page)
    {
        $config = Zend_Registry::get('generalConfig');
        $select = $this->_db->select()
                            ->from(array('a' => 'announces'), array('id', 'title', 'address', 'flag'))
                            ->join(array('l' => 'locations'), 'a.location=l.id', array('location'=>'name'))
                            ->join(array('t' => 'types'), 'a.type=t.id', array('type'=>'name'))
                            ->limitPage($page, $config->announcesPerPage)
                            ->order('id');
        $result = $this->_db->fetchAll($select);
        if (!$result) {
            throw new Zend_Exception('Error during data retrieving');
        }
        return $result;
    }
//nel controller lo chiamo così : 
        try {
            $announces = $this->_catalog->getAnnounces($page);
        } catch(Zend_Exception $e) {
            $this->view->assign('error', array('type' => '404', 'message' => 'notfound', 'dump' => $e->getMessage()));
        }
        $this->view->assign('announces', $announces);

Sapresti dirmi il miglior modo per creare la paginazione ( solo i link alle pagine in questo caso, visto che il limit gestisce già il result set in pagine )

:bye:

inviato 9 anni fa
Andrea Turso
Andrea Turso
86
X 0 X

Secondo me la soluzione più pulita è creare un View Helper:

http://framework.zend.com/manual/en/zend.view.helpers.html

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

secondo te posso ancora utilizzarle anche se sto usando smarty a posto di zend view?

risposto 9 anni fa
Andrea Turso
Andrea Turso
86
X 0 X

Credo di si ma non posso garantire, non uso (più) smarty

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

e che usi, se è lecito saperlo :buck:

risposto 9 anni fa
Andrea Turso
Andrea Turso
86
X 0 X

Non uso nessun template engine, inserisco il PHP direttamente nei template HTML.

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda