2012-04-21 1 views
0

У меня возникают некоторые проблемы с классом разбиения Codeigniters.Codigniter Pagination - первая страница остается жирной

Проблема в том, что «страница 1» остается жирной, даже если изменение URL.

Мой URL выглядит следующим образом:

http://mypage.com/s/search+str/4/1

uri-> сегмент (3) является per_page и uri-> сегмент (4) является номером страницы.

Я установил $ config ['uri_segment'] = 4; как вы видите в приведенном ниже коде.

Любой, кто может увидеть, что не так с кодом?

Спасибо ..

/** Load The Search model **/ 
    $this->load->model('search_model'); 

    /** Perform the search **/ 
    $this->search_model->set_search_str(decode_url($str)); 

    // prettyPrint($config['per_page']); die(); 
    $offset = $this->uri->segment(4,0); 

    /** Pagination **/ 
    $this->load->library('pagination'); 
    $config = array (
      'uri_segmet'  => 4, 
      'per_page'   => $this->uri->segment(3, 25), 
      'total_rows'  => $this->search_model->get_nums(), 
      'num_links'  => 4, 
      'base_url'   => base_url()."s/{$str}/".$this->uri->segment(3, 25), 
      'use_page_numbers' => TRUE 
     ); 

$this->pagination->initialize($config); 

$pagination_links = $this->pagination->create_links(); 

    $query = $this->search_model->search($config['per_page'], $offset); 

    $num_results = $this->search_model->get_nums(); 

    /** Set the theme data **/ 
    $data = array(
     'title'   => 'Search page', 
     'page'   => 'search', 
     's_str'   => decode_url($str), 
     'num_results'  => $num_results, 
     'results'  => $query['results'][0], 
     'pagination'  => $pagination_links 
    ); 

    /** Load the theme **/  
$this->load->theme($data); 

ответ

0

Попробуйте добавить current_page в массиве конфигурации вручную, и установить его на

$data['current_page'] = $this->uri->segment(4); 

Это может работать для вас ..

+0

Просто попробовал ... Но это тоже не работает? Я не могу этого понять. Я попытался сделать print_r четвертого сегмента uri, за которым последовали die(); и он получает правильное значение? Мне кажется странным. Может ли это иметь какое-то отношение к моему base_url? – Thomas

+0

Мне было немного поститься там! Я попытался сжать «current_page» в «cur_page» как имя переменной в классе pagination, и теперь он работает! Странно, я должен сказать, на какой странице я нахожусь :) Спасибо! – Thomas

1

Если ваш DB записи, я имею в виду результат собственно на странице. И вы столкнулись с проблемой только с «первой жирной ссылкой», после чего вы можете установить стиль (css), как показано ниже:

$ config ['first_link'] = 'First_PAGE_STYLE_CLASS';

Вам нужно будет сделать css, как показано ниже: .Frist_PAGE_STYLE_CLASS {text-weight: normal; }

+0

Основная проблема заключается не в CSS. Проблема в том, что CI не завершает первую ссылку в привязном теге, как и для остальных номеров страниц. Это швы, как будто он не обнаруживает, что страница изменилась в четвертом сегменте uri. Но я не вижу, что я делаю неправильно? – Thomas

Смежные вопросы