Exemplo n.º 1
0
 public function index03Action()
 {
     $adapter = $this->getServiceLocator()->get("db_books");
     $selectObj = new \Zend\Db\Sql\Select("user");
     $selectObj->columns(array("id", "name"))->order(array("id DESC"));
     $adapterPaginator = new \Zend\Paginator\Adapter\DbSelect($selectObj, $adapter);
     $paginator = new \Zend\Paginator\Paginator($adapterPaginator);
     $currentPage = $this->params()->fromRoute("page");
     $paginator->setItemCountPerPage(3)->setCurrentPageNumber($currentPage)->setPageRange(3);
     return array("paginator" => $paginator);
 }
Exemplo n.º 2
0
 /**
  * @desc Metoda zwraca liste rekordów z kolumna id i nazwa dla tabeli podanej w parametrze. Jeżeli jest pole status to zwraca tylko te z status=1
  * @param $sTabelaSlownikowa
  * @param $aIds array
  * @param $intBaza nazwa bazy do ktorej ma się odnosic lista
  * @return array
  */
 public static function ListaIn($nazwaSlownika, $aIds = array(), $aCols = array())
 {
     $projectTable = new TableGateway($nazwaSlownika, \Zend\Db\TableGateway\Feature\GlobalAdapterFeature::getStaticAdapter());
     $projectTable->getColumns();
     $select = new \Zend\Db\Sql\Select();
     if (!empty($aCols)) {
         $select->columns($aCols);
     }
     $select->from($nazwaSlownika);
     $select->in(implode(',', $aIds));
     $rowset = $projectTable->selectWith($select);
     if ($rowset) {
         return $rowset;
     }
     return array();
 }
Exemplo n.º 3
0
 /**
  * Get the most searched queries
  *
  * @param $from begin time
  * @param $to   end time
  *
  * @return associative array
  */
 public function getMostSearchedQueries($from = null, $to = null, $limit = 20)
 {
     $subSelect = $this->sql->select();
     $subSelect->columns(array('phrase' => 'value'));
     $subSelect->join(array('noresults' => 'user_stats_fields'), 'user_stats_fields.id = noresults.id', array());
     $subSelect->join(array('user_stats' => 'user_stats'), 'user_stats.id = user_stats_fields.id', array('session' => 'session'));
     if ($from && $to) {
         $format = "Y-m-d H:i:s";
         $from = date($format, $from);
         $to = date($format, $to);
         $subSelect->where->greaterThan('user_stats.datestamp', $from);
         $subSelect->where->lessThan('user_stats.datestamp', $to);
     }
     $subSelect->where->equalTo('user_stats_fields.field', 'phrase');
     $subSelect->where->equalTo('noresults.field', 'noresults');
     $subSelect->where->EqualTo('noresults.value', 'false');
     $subSelect->where->notEqualTo('user_stats_fields.value', '');
     $subSelect->group(array('phrase', 'session'));
     $select = new \Zend\Db\Sql\Select();
     $select->columns(array('query' => 'phrase', 'count' => new Expression("COUNT(*)")));
     $select->from(array('phrase' => $subSelect));
     $select->group(array('phrase'));
     $select->order('count desc');
     $select->limit($limit);
     $statement = $this->sql->prepareStatementForSqlObject($select);
     $result = $statement->execute();
     return $result;
 }
Exemplo n.º 4
0
 /**
  *  get ZF2 Zend Db Select
  *  @return Zend\Db\Sql\Select
  */
 protected function getDbSelect($isSetDefaultValue = true)
 {
     $select = new Zend\Db\Sql\Select();
     if ($isSetDefaultValue) {
         $select->columns(array($this->pk));
         $select->from($this->tableName);
     }
     return $select;
 }