Класс календаря в Codeigniter не отображается в следующие / предыдущие месяцы - PullRequest
1 голос
/ 31 июля 2011

Я пытаюсь сгенерировать календарь и почти его иметь, но когда я нажимаю на следующую или предыдущую ссылку, календарь не отображается - в противном случае он является правильным. Когда я нажимаю следующий URL-адрес, в адресной строке отображается правильный URL-адрес, но следующий месяц не отображается.

Вот мой код:

class Poll_controller1 extends skylark {

function poll_home()
{
    $this->add_to_center(POLL,"poll_view1");
    $this->load_lcr_template();
    $prefs = array (
           'show_next_prev'  => TRUE,
           'next_prev_url'   => 'http://skylarkv2/index.php/poll_controller1/show'
         );

    $this->load->library('calendar', $prefs);
}

function show()
{
    echo $this->calendar->generate($this->uri->segment(3), $this->uri->segment(4));
} 

Я ошибаюсь или что-то упускаю?

Ответы [ 2 ]

1 голос
/ 23 июля 2015

попробуйте это с контроллера

 public function display($year = null, $month = null)
    {
            $config = array(
            'show_next_prev' => 'TRUE',
            'next_prev_url' => base_url().'calendarC/display'
            );
            $this->load->library('calendar', $config);
            $data['calendar'] = $this->calendar->generate($year, $month);
            $this->load->view('calendar', $data);
    }
0 голосов
/ 31 июля 2011

Скорее всего, вам просто нужно инициализировать календарный класс в той же области, в которой вы его сгенерировали. Как вы настроили, show() не знает, как класс был инициализирован в poll_home(). Попробуйте что-то вроде этого:

function show()
{
    $prefs = array (
       'show_next_prev'  => TRUE,
       'next_prev_url'   => 'http://skylarkv2/index.php/poll_controller1/show'
     );

    $this->load->library('calendar', $prefs);
    echo $this->calendar->generate($this->uri->segment(3), $this->uri->segment(4));
} 

Существует также вероятность того, что $this->uri->segment(3) и $this->uri->segment(4) - это не то, что вы думаете, дважды проверьте правильность этих значений. Если у вас есть какая-либо маршрутизация, вам может понадобиться использовать $this->uri->rsegment() вместо этого (обратите внимание на r ).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...