Kohana 2.3.x ile pagination ile bir arama uygulamak nasıl

0 Cevap php

i googled ve her yerde arandı ama bu soruna net bir cevap bulamadım.

Ben bir web sayfası arama yapmak ve sonuç paginate (ve başlıkları bunları sıralamak) çalışıyorum.

Prototip görmek Lütfen http://i55.tinypic.com/2dlrqbs.png

Bir kullanıcı, arama Ölçütleri 'a' olarak 'a' gösterilir içerdiği tüm adlarını belirtmek eğer ben isterim. ? Isim = a: Benim sorunum ben navigasyon linkleri dize koymak nasıl olduğunu.

I arama kriterleri geri göndermek istemiyorsanız, bir sonraki sayfayı tıklayarak tüm kayıtları gösterecektir.

Ben konuyla ilgili yazı çok okumak, ve ben henüz bunu nasıl anlamıyorum

Denetleyici Kodu (taslak)

function listall( )
{
$limit = 2 ;
$orderby = 'u.id';
$direction = 'asc';
$name = '';

if ( $_POST )
{
$name = $this->input->post('name');
}

if ( $_GET )
{
$name = $this->input->post('name');
if ( $this->input->get('orderby') )
list($orderby, $direction) = explode(':', $this->input->get('orderby'));
}


$view = new view( 'character/listall');
$db = Database::instance();

$sql = "select c.id id, c.lastactiontime, c.name character_name, k.name kingdom_name, k.image kingdom_image, from_unixtime( u.last_login, '%d-%m-%y') last_login, u.nationality 
from characters c, kingdoms k, users u
where 1=1 and
c.kingdom_id = k.id and
c.user_id = u.id 
" ;
if ( $name != '' )
$sql .= "and c.name like '%" . $name . "%'" ; 

$characters = $db->query( $sql );

//$characters = ORM::factory( "character" )->orderby( $orderby, $direction )->find_all();

$this->pagination = new Pagination(array(
'base_url'=>'character/listall',
'uri_segment'=>'listall',
'style'=>'digg',
'query_string' => 'page',
'total_items'=>$characters->count(),
'items_per_page'=>$limit)); 

//$characters = ORM::factory( "character" )->orderby( $orderby, $direction )->find_all($limit, $this->pagination->sql_offset); 

$sql .= " order by $orderby $direction ";
$sql .= " limit $limit offset " . $this->pagination->sql_offset ;

kohana::log('debug', $sql );

$characters = $db->query( $sql );

$playersinfo = Character_Model::getplayersinfo();

$view->playersinfo = $playersinfo; 
$view->pagination = $this->pagination;
$view->characters = $characters;
$this->template->content = $view; 

}

Teşekkürler

0 Cevap