Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用compact的laravel重定向不传递变量_Php_Laravel 5.3 - Fatal编程技术网

Php 使用compact的laravel重定向不传递变量

Php 使用compact的laravel重定向不传递变量,php,laravel-5.3,Php,Laravel 5.3,我试图将一个紧凑的数组传递给一个视图,我知道我可以这样做returnview('dashboard',compact('user')但我想使用重定向。当我使用redirect('dashboard')->和(compact('user'))一起使用时它在我的仪表板视图上显示一个错误未定义变量user。有什么问题吗?需要帮忙吗 请在下面找到重定向到我的仪表板视图的我的方法 public function store(UsercreateRequest $request) { $imag

我试图将一个紧凑的数组传递给一个视图,我知道我可以这样做
returnview('dashboard',compact('user')但我想使用重定向。当我使用
redirect('dashboard')->和(compact('user'))一起使用时它在我的仪表板视图上显示一个错误
未定义变量user
。有什么问题吗?需要帮忙吗

请在下面找到重定向到我的仪表板视图的我的方法

public function store(UsercreateRequest $request)
{

     $image =$request->file('image');
    if($request->hasFile('image'))
    {
        if($image->isValid())
        {

            $way=public_path('images');

            $extension=$image->getClientOriginalExtension();



                $name=$image->getClientOriginalName();
                //echo $name;

            if(file_exists($way.'/'.$name))
            {

                if($image->move($way,$name))
            {

                //echo'ok '; //75485205
                //echo $name;
                    $data= array_merge($request->all(),['image'=>$name]);
                $user=$this->userRepository->store($data);
                return redirect('dashboard')->with(compact('user'));
             }

            }



        }

    }
    return redirect('signup')->withErrors(" L'enrisgrement n'a pas abouti !");
    //
}
返回重定向('dashboard')->带有(compact('user'))

你不能那样做。路由
仪表板
将有自己的控制器方法,用于加载视图。因此,在重定向期间传递数据不会产生任何效果。您需要返回视图响应,它才能像您自己所说的那样工作

通常,当存储新项时,重定向将指向新创建的项。由于您正在创建一个新用户,如果您有一个用户,您可能会重定向到该用户的配置文件页面

return redirect('users/' . $user->id);

节目延迟,但如果有人遇到此页面并需要回答:您可以使用
将关联数组传递给

redirect('dashboard')->with([
    'user' => $user,
    'foo' => 'bar',
    'dinner' => 'dolma'
]);

如果
返回重定向('login')->带('user',$user)
适用于您,您可以在“登录”视图中使用
$user
,这意味着您的设置是正确的,您也可以使用
$foo
$dinner

检查此项,我使用了
会话
,注册后没有逻辑将用户重定向到仪表板,因此重定向到登录<代码>返回重定向('login')->带有('user',$user)