【问题标题】:Redirecting with cookies in Laravel 4.1在 Laravel 4.1 中使用 cookie 重定向
【发布时间】:2014-04-06 11:28:39
【问题描述】:

我正在尝试为特定视图删除 cookie,以便用户只能访问该页面一次。但是,我现在所拥有的并不是像我想要的那样将用户重定向到重复查看的视图之外。这是我所拥有的:

public function getWelcome() {
            // Drop cookies and check for it...

            $cookie =  Cookie::get('cs_welcome');

            if(isset($cookie) && $cookie == 1) {
                return Redirect::to('/fans/'.Auth::user()->url_tag);
            }
            else {
                $cookie = Cookie::forever('cs_welcome', 1);
            }

            return View::make('fans.welcome');

基本上,我希望他们只看到 fans.welcome 视图一次。如果是重复访问,我希望他们去/fans/Auth::user()->url_tag。我在这里缺少什么吗?谢谢您的帮助。

【问题讨论】:

    标签: php cookies laravel laravel-4


    【解决方案1】:

    IMO 我相信通过这种方法,用户可以擦除他们的导航 cookie,然后当他们进入他们的帐户时,我们会再次看到欢迎页面。

    为了让用户真正持久地看到欢迎屏幕,我建议您将该信息保存在数据库中并将其与用户相关联。

    假设$user->sawWelcomePage = true

    【讨论】:

      【解决方案2】:

      你应该使用这样的东西:

      1. Register the user
      2. Login the user automatically after creating the account
      3. After login redirect to welcome page
      

      另外,如果您不想自动登录用户,可以跳过它。

      在这两种情况下,保留一个标志,users 表中的任何字段,例如:verified,默认情况下保持它NULL,一旦用户登录,然后使用1 或任何真实值更新该字段所以您可以检查该字段是否为 NULL 然后用户 应该在welcome 页面中,否则不要让用户转到该页面。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-06-03
        • 1970-01-01
        • 2018-10-21
        • 2012-07-19
        • 1970-01-01
        • 2015-08-13
        • 1970-01-01
        相关资源
        最近更新 更多