2010-11-20 3 views
4

so im Grunde kann man zend Paginieren über die folgende verwenden:Wie zend verwenden, Paginieren mit normaler SQL-Abfrage nicht Zend_Db_Select

$sql = new Zend_Db_Select($db); 
$sql->from(table); 
$sql->where(zend_db_select_sucks = 1); 

$paginator = Zend_Paginator::factory($sql); 

ist es eine Möglichkeit, paginator zu verwenden, so dass Sie selbst festlegen können $sql ohne zend_db_select mit

so nur

$sql = "SELECT * FROM table WHERE zend_db_select_sucks = 1" 

$paginator = Zend_Paginator::factory($sql); 

?

Antwort

7

Ist das nicht der Punkt der Fabrik Paginator, dass Sie es auch ein Rowset übergeben können und es wird auch das paginieren? Ich habe gerade versucht, diese aus und es schien, für mich zu arbeiten (obwohl ich Zend_Db_Select in der Regel)

$db = Zend_Db_Table::getDefaultAdapter(); 
$rowset = $db->query('SELECT * FROM user')->fetchAll(); 
$paginator = Zend_Paginator::factory($rowset); 
0

Sie Ihre SQL-Abfrage-String innerhalb von query() wickeln müssen, bevor sie an etwas vorbei sonst sonst ist ZF nicht wissen was Sie es

$db = new Application_Model_DbTable_Example(); // if you've created a model for your db 
$select = $db->query("SELECT * FROM table WHERE value='varstring'")->fetchAll; 

doch sagen, und dann können Sie das paginator abzuschicken

Verwandte Themen