Paginator แบ่งหน้าด้วย Zend Framework

หมวดสำหรับแบ่งบันความ รู้ต่างๆ จะมีหมวดย่อยๆ ในหมวดนี้ เช่น php, SQL, XML, CSS

Moderators: mindphp, ผู้ดูแลกระดาน

Post Reply
zend_framework
PHP Full Member
PHP Full Member
Posts: 41
Joined: 08/03/2011 11:22 pm

Paginator แบ่งหน้าด้วย Zend Framework

Post by zend_framework » 17/04/2011 5:32 pm

Paginator แบ่งหน้าด้วย Zend Framework
1. เพิ่ม code ใน controller

Code: Select all

        $Mylist = New Mydb() ;  
        $MyResult = $Mylist->evallist("mydatabase", "mytable") 
        $num_records=count($MyResult);
        
        $page = new Zend_Paginator(new Zend_Paginator_Adapter_Null($num_records));
        
        $paginator = Zend_Paginator::factory($MyResult);
        $paginator->setCurrentPageNumber('1');
        $paginator->setItemCountPerPage('10');
        
        $paginator->setCurrentPageNumber($this->_getParam('page'));
        
        $this->view->paginator = $paginator;
 
2. เพิ่ม code ในไฟล์ .phtml

Code: Select all

<?php foreach($this->paginator as $v) : ?>
...
...
...

<?php $n++; endforeach;  ?>

<?php echo $this->paginationControl($this->paginator,
                                    'Elastic',
                                    '/evaluation/mypaginationcontrol.phtml'); ?>
3. สร้างไฟล์ mypaginationcontrol.phtml

Code: Select all

<?php if ($this->pageCount): ?>
<div class="paginationControl">
<!-- First page link -->
<?php if (isset($this->previous)): ?>
  <a href="<?php echo $this->url(array('page' => $this->first)); ?>">
    First
  </a> |
<?php else: ?>
  <span class="disabled">First</span> |
<?php endif; ?>
<!-- Previous page link -->
<?php if (isset($this->previous)): ?>
  <a href="<?php echo $this->url(array('page' => $this->previous)); ?>">
    < Previous
  </a> |
<?php else: ?>
  <span class="disabled">< Previous</span> |
<?php endif; ?>

<!-- Numbered page links -->
<?php foreach ($this->pagesInRange as $page): ?>
  <?php if ($page != $this->current): ?>
    <a href="<?php echo $this->url(array('page' => $page)); ?>">
        <?php echo $page; ?>
    </a> |
  <?php else: ?>
    <?php echo $page; ?> |
  <?php endif; ?>
<?php endforeach; ?>

<!-- Next page link -->
<?php if (isset($this->next)): ?>
  <a href="<?php echo $this->url(array('page' => $this->next)); ?>">
    Next >
  </a>
<?php else: ?>
  <span class="disabled">Next ></span>
<?php endif; ?>

<!-- Last page link -->
<?php if (isset($this->next)): ?>
  <a href="<?php echo $this->url(array('page' => $this->last)); ?>">
    | Last
  </a>
<?php else: ?>
  <span class="disabled">| Last</span>
<?php endif; ?>

</div>
<?php endif; ?>

Post Reply

Return to “Share Knowledge”

Users browsing this forum: facebook.com [Crawler] and 34 guests