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

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

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

zend_framework
PHP Full Member
PHP Full Member
โพสต์: 39
ลงทะเบียนเมื่อ: 08/03/2011 11:22 pm

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

โพสต์โดย zend_framework » 17/04/2011 5:32 pm

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

โค้ด: เลือกทั้งหมด


        $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

โค้ด: เลือกทั้งหมด


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

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

<?php echo $this->paginationControl($this->paginator,
                                    
'Elastic',
                                    
'/evaluation/mypaginationcontrol.phtml'); ?>

3. สร้างไฟล์ mypaginationcontrol.phtml

โค้ด: เลือกทั้งหมด


<?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; ?>

ย้อนกลับไปยัง

ผู้ใช้งานขณะนี้

กำลังดูบอร์ดนี้: 18 และ บุคคลทั่วไป 0 ท่าน