检查视图页面上的两个变量,但从控制器发送一个

Check for two variables on view page but send one from controller

我有一个控制器检查用户输入的用户名是否正确,并根据 correct/not 正确我发送不同的变量来查看页面。

所以我在控制器中的是这个

public function resSub() {

    $user = User::where('username', Input::get('username'))->first();
    if (!$user) {
        // not relevant stuffs
        $enc = 'enc';
        return View::make('users.page2', ['enc'=> $enc]);
    }
    Session::put('user_id', $user['user_id']);
    return Redirect::to('/users/page2?_token=' . csrf_token());
}   
public function encMess()
{
    $data = Session::all();    
    $enc1 = 'enc1';    
    return View::make('users.page2', ['enc1'=> $enc1]);
}

在视图中我有这个

@if(!$enc)
    <pre>{{ $enc1 }}</pre>
@else
    <pre>{{ $enc }}</pre>
@endif

当我 运行 页面时,我得到 $enc$enc1 未定义,因为它没有发送到视图。

我该怎么做?

public function resSub() {

    $user = User::where('username', Input::get('username'))->first();
    if (!$user) {
        // not relevant stuffs
        return View::make('users.page2', ['enc'=> $enc]);
    }
    Session::put('user_id', $user['user_id']);
    return Redirect::to('/users/page2?_token=' . csrf_token()); }   

public function encMess() {
    $data = Session::all();        
    return View::make('users.page2', ['enc'=> $enc1]); 
}

查看:

{{ $enc }}

你在你的视图中做同样的事情,所以你不需要传递两个不同的变量名。

如果您确实需要两个单独的变量,可以使用空值传递一个。