2013-07-23 67 views
0

我的問題是,當我進入if條件時,我失去了參數(即我不能使用id變量),因爲這發生在按下視圖中的submit按鈕後(即在設置了後置數組後)如何在設置模板內容後傳遞參數?

public function action_resetpassword() 
{ 
    $this->template->content = View::factory('user/password/reset') 
    ->bind('message', $message) 
    ->bind('errors', $errors); 

    if (HTTP_Request::POST == $this->request->method()) 
    {   
     $id = $this->request->param('id'); 

回答

1

如果我正確理解你,你希望將參數傳遞給在if中設置的視圖。這可以容易地通過「結合」這些變量的視圖來完成(即通過引用傳遞)

public function action_resetpassword() 
{ 
    $this->template->content = View::factory('user/password/reset') 
     ->bind('message', $message) 
     ->bind('errors', $errors) 
     ->bind('id', $id); // Empty variable is defined here ... 

    if (HTTP_Request::POST == $this->request->method()) 
    { 
     // ... and set here 
     $id = $this->request->param('id'); 

內部視圖中的$id現在將具有任何從請求參數來的值。

如果這不是你的意思,你應該讀一些關於PHP變量範圍,這個問題是沒有必然的關係的Kohana

http://php.net/manual/en/language.variables.scope.php

相關問題