2012-02-25 38 views
3

私は3つの値を渡すメソッドを呼び出すためにルートを使用するようになっていません。 私は私の意見の中CodeIgniterのルートとメソッドへの値の受け渡し

public function view_day($year, $month, $day) 
{ 
    $data['year'] = $year; 
    $data['month'] = $month; 
    $data['day'] = $day; 

    $this->load->view('calendar/view_day', $data); 
} 

とページ内の次のメソッドを持つコントローラは、次の

<? 
    echo $this->uri->segment(5).'<p>'; 
    echo $day; 
?> 

最後に、私のルートファイル内で、私は

$route['calendar/date/:num/:num/:num'] = "calendar/view_day/$1/$2/$3"; 
以下の行を持っているとフォルダいます

URLのようにURLを指定すると、

http://www.mydomain.com/index.php/calendar/date/2012/06/10 

私のカレンダーコントローラがview_dayメソッドに3つの値(2012、06、10)を渡しています。そして、これらの3つの値を集めて、私のプレゼンテーションページ内で$ day、$ month、および$ yearを使用するためにそれらを最終ページに渡します。 次に、結果上記のURLを実行する

10(行によって返される - >エコーの$ this - > uri->セグメント(5) '';) 行によって返さ$ 3( - >エコー$私のプレゼンテーションページ内の変数$ dayがurlに渡されたとして値を取得していないのですが、同じテキスト($ 3)を私のroute文に書きました。

おかげ

答えて

6

あなたはそれが働いているはいこの

$route['calendar/date/(:num)/(:num)/(:num)'] = "calendar/view_day/$1/$2/$3"; 
+0

のようなあなたのルートを定義する必要があります –

関連する問題