Od dawna stosuje DB_DataObject i mam pierwszy raz kłopot z tym "cudem"
Mam taki kod:
<?php include_once 'Lang.class.php'; require_once 'DB/DataObject.php'; final class Doc extends DB_DataObject { public $DataObject2; public function __construct() { $this->DataObject2 = DB_DataObject::factory('documents'); } public function &lstDocuments($_where='',$_lang, $_limit='',$_order='') { if ($_limit <> '') { $this->DataObject2->Limit($_limit); } // Find element in table documents $this->DataObject2->find(); while($this->DataObject2->fetch()) { $result['data'][] = $this->DataObject2->toArray(); } } } ?>
i działa ( działa tylko 1 raz ) tzn:
<?php $DocClass = new Doc(); $smarty->assign('news',$DocClass->lstDocuments('Nowosci','pl',7,'time DESC')); // dziala $smarty->assign('promo',$DocClass->lstDocuments('Promocje','pl',2,'time DESC')); // nie dziala $smarty->assign('news2',$DocClass->lstDocuments('Nowosci','pl',1,'time DESC')); // nie dziala $smarty->assign('prod',$DocClass->lstDocuments('Produkty','pl',3,'time DESC')); // nie dziala ?>
Moze ktos mi powie co mam nie tak przeciez klasa jest napisana dobrze.
Pamietaj ze zapytanie generuje dobrze do pokazuje dobrze 7 nowosci ( news ) w smarty.
jak to
$this->DataObject2 = DB_DataObject::factory('documents');
przeniose do metody lstDocuments to dziala..